Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Lisp
  Suche nach Farbe 255,255,255 per Lisp oder Befehlsstring

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte
Autor Thema:  Suche nach Farbe 255,255,255 per Lisp oder Befehlsstring (1818 mal gelesen)
Manuel486
Mitglied
Technischer Zeichner Elektro


Sehen Sie sich das Profil von Manuel486 an!   Senden Sie eine Private Message an Manuel486  Schreiben Sie einen Gästebucheintrag für Manuel486

Beiträge: 194
Registriert: 31.01.2020

erstellt am: 31. Jan. 2020 12:03    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo liebe CAD Gemeinde,

ich hoffe ich bin hier richtig mit meiner Frage.

Ich habe folgenden Befehl "gefunden" (google) für eine Farbe (in diesem Fall Farbe 7) auszuwählen.
^C^C(sssetfirst(setq a(ssget "_:s" '((62 . 7))))a);alle;

Es sollen also alle Objekte in der Zeichnung die auf Farbe 7 liegen in der Auswahl sein.
Das klappt auch soweit sehr gut.

Jetzt habe ich zwei Probleme:
1. Ich möchte nach der Farbe 255,255,255 suchen, aber weis nicht wie.
^C^C(sssetfirst(setq a(ssget "_:s" '((62 . 255,255,255))))a);alle;
So klappt es schon mal nicht und ich Probiere und Suche schon ewig danach was ich falsch mache...
Oder funktioniert die Suche nach RGB Farben schlicht nicht?
2. Ich hätte gerne die Möglichkeit das ich etwas nur im Modell in die Auswahl bekomme und nicht Modell + Layout

Beschäftige mich wirklich schon etwas mit dem Thema aber hier komme ich einfach nicht weiter.

MFG

Manuel486


Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

cadffm
Moderator
良い精神




Sehen Sie sich das Profil von cadffm an!   Senden Sie eine Private Message an cadffm  Schreiben Sie einen Gästebucheintrag für cadffm

Beiträge: 21533
Registriert: 03.06.2002

Alles

erstellt am: 31. Jan. 2020 12:17    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Manuel486 10 Unities + Antwort hilfreich

62er für ACI Farben (wenn es keinen 420er gibt)
420er für TrueColor (wenn es keinen 430er gibt)
430er für Farbbuchfarben

(sssetfirst nil (ssget "_X" '((430 . "")(420 . 16777215))))


Modellbereich: Im Gruppencode 410 wirst du fündig!
(Der aktuelle Bereich ist in der Systemvariable CTAB gespeichert..)


(ssget "_X" '((430 . "")(420 . 16777215)(410 . "Model")))

Objektdaten einsehen, ändern, vergleichen bringt einen oft weiter:
(entget(car(entsel))) 

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Manuel486
Mitglied
Technischer Zeichner Elektro


Sehen Sie sich das Profil von Manuel486 an!   Senden Sie eine Private Message an Manuel486  Schreiben Sie einen Gästebucheintrag für Manuel486

Beiträge: 194
Registriert: 31.01.2020

erstellt am: 31. Jan. 2020 13:27    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hätte nicht mit einer so schnellen Antwort gerechnet  

Der Befehl:
(sssetfirst nil (ssget "_X" '((430 . "")(420 . 16777215))))
klappt super, vielen dank dafür.

Wie kommst du auf diese Zahl für Farbe 255,255,255? 16777215 ?!

Der Befehl:
(ssget "_X" '((430 . "")(420 . 16777215)(410 . "Model")))
wählt bei mir gar nicht aus...

Vielleicht noch etwas zu meiner Vorgehensweise.
Ich habe eine extra Palette in meine Werkzeugkästen gepackt.
Jetzt sammle ich Befehle, die ich öfter brauche und versuche diese dann zu verbinden.
Ich habe also ein Werkzeug (das ich später mit einem Bild versehe) welches einen Befehlsstring ausführt.

Im aktuellen suche ich mehrere Farben (255,255,255/63,63,63/und 255) und möchte diese Farben automatisch gelöscht haben.
Ich würde das jetzt für mich so lösen:
^C^C(sssetfirst nil (ssget "_X" '((430 . "")(420 . 16777215)))),_erase;^C^C(sssetfirst(setq a(ssget "_:s" '((62 . 255))))a);alle;_erase;^C^C(sssetfirst nil (ssget "_X" '((430 . "")(420 . ???Farbe 63,63,63/ich weis nicht was hier hin kommt???))))_erase;

Jetzt schlagen wahrscheinlich viele hier die Hände über dem Kopf zusammen   

Im ganzen läuft es darauf hinaus das vorher noch einiges mehr passiert.
Hier mal mein Befehl zum "Aufbereiten" einer Architektenzeichnung. Mit dem was gemacht wir in "Reinschrift" und dem Befehl.

Layer 0 aktuell / Layer Entsperren / Layer Tauen / Layer Ein / Layer Lstärke Vorlage/ Neuer Layer _A-BEMASSUNG + _A-BEMASSUNG-INNEN / Layout löschen / Modell aktuell / 3x burst / Löscht alle Punkte + Abdeckungen in der Zeichnung / Bemassung in die Auswahl um Xplode und Objekte Vorher auf Layer selbst auszuführen

^C^C-LAYER;SEtzen;0;ENtsperren;*;Tauen;*;Ein;*;LStärke;_Default;*;Neu;_A-BEMASSUNG;Neu;_A-BEMASSUNG-INNEN;;^C^C-LAYOUT;Löschen;;-LAYOUT;SEtzen;Modell;^C^C_burst;alle;;_burst;alle;;_burst;alle;;^C^C(sssetfirst(setq a(ssget "_:s" '((0 . "POINT"))))a);alle;_erase;^C^C(sssetfirst(setq a(ssget "_:s" '((0 . "WIPEOUT"))))a);alle;_erase;^C^C(sssetfirst(setq a(ssget "_:s" '((0 . "DIMENSION"))))a);alle;

Jetzt bin ich hier so weit gekommen das er mir die Bemassung auswählt.
Ich möchte danach den Befehl: _explode;_Pselect;V; ausführen und die Bemassung auf den Layer _A-BEMASSUNG legen bzw legen lassen.
Hier kommt jetzt aber folgender Fehler:
Befehl: _explode

Objekt wählen:

Befehl: _.pselect

Objekte wählen: v
Kein vorheriger Auswahlsatz.

Warum ist nichts in der Auswahl. Der Ablauf ist der selbe wie wenn ich es einzeln mache… und dann klappt es.
Es gibt also viele Fragen und ich möchte keinen damit auf den nerv gehen, ich möchte selbst weiter kommen, nur die Frage ist wie?!


Ich habe hier im Forum und auf diversen Seiten(http://www.tutorial.autolisp.info/ssget.html) schon viel gelesen, komme aber nicht so richtig weiter.
Mir fehlt es noch etwas, dass ich sagen kann: "Es hat klick gemacht im Kopf".

MFG
Manuel486

[Diese Nachricht wurde von Manuel486 am 31. Jan. 2020 editiert.]

[Diese Nachricht wurde von Manuel486 am 31. Jan. 2020 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

cadffm
Moderator
良い精神




Sehen Sie sich das Profil von cadffm an!   Senden Sie eine Private Message an cadffm  Schreiben Sie einen Gästebucheintrag für cadffm

Beiträge: 21533
Registriert: 03.06.2002

Alles

erstellt am: 31. Jan. 2020 15:50    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Manuel486 10 Unities + Antwort hilfreich

Das ist zuviel für mich heute 

Aber ohne es nochmal zu testen:
(ssget "_X" '((430 . "")(420 . 16777215)(410 . "Model")))
wählt bei mir gar nicht aus...

Wenn ich keinen Fehler gemacht habe, dann bedeutet dies das du kein passendes Objekt im Modellbereich hast.


Und Ja, das sieht noch nach viel Feinarbeit aus,
aber alles auf einmal ist auch ein wenig viel.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

cadffm
Moderator
良い精神




Sehen Sie sich das Profil von cadffm an!   Senden Sie eine Private Message an cadffm  Schreiben Sie einen Gästebucheintrag für cadffm

Beiträge: 21533
Registriert: 03.06.2002

Alles

erstellt am: 31. Jan. 2020 17:17    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Manuel486 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von Manuel486:
Wie kommst du auf diese Zahl für Farbe 255,255,255? 16777215 ?!
Das kann man berechnen oder abfragen, in deinem Fall empfehle ich ein Objekt mir der passenden Farbe
zu erstellen und dann wie oben geteigt die Objektdaten abzufragen.

Der Befehl:
(ssget "_X" '((430 . "")(420 . 16777215)(410 . "Model")))
wählt bei mir gar nicht aus...

Jetzt habe ich verstanden! Dir fehlen die Basics in dem Fall.
SSGET ist eine Lispfunktion zum erstellen von Auswahlsätzen, ssget markiert keine Objekte.

Führe (ssget "_X" '((430 . "")(420 . 16777215)(410 . "Model"))) aus,
wenn die Antwort nicht NIL war, dann wurde ein Auswahlsatz angelegt.
Starte Befehl Schieben, dann die Objektwahlmethode VORHER... Thats it.


Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Manuel486
Mitglied
Technischer Zeichner Elektro


Sehen Sie sich das Profil von Manuel486 an!   Senden Sie eine Private Message an Manuel486  Schreiben Sie einen Gästebucheintrag für Manuel486

Beiträge: 194
Registriert: 31.01.2020

erstellt am: 31. Jan. 2020 17:36    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Wie frage ich denn objektdaten ab?
Du schreibst wie oben gezeigt, weiß nicht was du meinst...
Habe noch die Farbe 63,63,63 die ich filtern möchte zum löschen.
Für mich ist es wichtig, wie bekomme ich schraffuren, bemassungen, farben, linientypen etc. in eine Auswahl ohne die schnellwahl mit der Maus auswählen zu müssen. Ich glaube du verstehst teilweise nicht was ich vor habe bzw erkläre ich es vielleicht falsch.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

cadffm
Moderator
良い精神




Sehen Sie sich das Profil von cadffm an!   Senden Sie eine Private Message an cadffm  Schreiben Sie einen Gästebucheintrag für cadffm

Beiträge: 21533
Registriert: 03.06.2002

Alles

erstellt am: 31. Jan. 2020 17:49    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Manuel486 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von cadffm:
Objektdaten einsehen, ändern, vergleichen bringt einen oft weiter:
(entget(car(entsel)))  

So fragt man die ab.

Und keine Sorge, ich und andere hier verstehen sehr gut was du vorhast,
auch sieht man die Schwächen und Fallen.

Du bist dabei, nicht ungewöhnlich, die mit vielen neuen(?) Dingen gleichzeitig zu beschäftigen,
da weiß man nicht wo man Anfangen soll.

Ich habe mich daher mal fast ausschließlich auf die Farben filtern Sache beschränkt für den Anfang, aber die Hilfestellung reichte halt noch nicht aus.

Lese und teste die einzelnen Dinge, die Hilfe [F1] zusammen mit der genannten Homepage sind wirklich gut,
auch wenn ich empfehle die Homepage ohne konkrete Projekte stumpf von A bis Z durchzuarben(nicht nur lesen),
also umblättern erst wenn man es verstanden hat.

DAS WIRD SCHON!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

CADwiesel
Moderator
CAD4FM UG




Sehen Sie sich das Profil von CADwiesel an!   Senden Sie eine Private Message an CADwiesel  Schreiben Sie einen Gästebucheintrag für CADwiesel

Beiträge: 1968
Registriert: 05.09.2000

AutoCAD, Bricscad
Wir machen das Mögliche unmöglich

erstellt am: 31. Jan. 2020 17:51    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Manuel486 10 Unities + Antwort hilfreich

(entget(car(entsel)))
Damit wirst du aufgefordert ein Objekt zu wählen. Die Rückgabe ist einen Liste mit alllen Gruppencodes

------------------
Gruß
CADwiesel
Besucht uns im CHAT

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Meldin
Mitglied



Sehen Sie sich das Profil von Meldin an!   Senden Sie eine Private Message an Meldin  Schreiben Sie einen Gästebucheintrag für Meldin

Beiträge: 381
Registriert: 15.07.2011

ACA2020
Windows10

erstellt am: 01. Feb. 2020 12:59    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Manuel486 10 Unities + Antwort hilfreich

Hallo,
als erstes würde ich mich entscheiden
Zitat:
per Lisp oder Befehlsstring

daher wäre als erstes mein tipp den Befehlsstring z.B. nur so aussehen zu lassen.
^C^C(c:MeinBefehl);
und mein LISP dann so:

(defun c:MeinBefehl (/)
(sssetfirst nil (ssget "_X" '((430 . "")(420 . 16777215))))
...
...
...
)

------------------
Gruß Wolfgang

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Manuel486
Mitglied
Technischer Zeichner Elektro


Sehen Sie sich das Profil von Manuel486 an!   Senden Sie eine Private Message an Manuel486  Schreiben Sie einen Gästebucheintrag für Manuel486

Beiträge: 194
Registriert: 31.01.2020

erstellt am: 01. Feb. 2020 13:09    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

^C^C(c:MeinBefehl);

nur das ich es richtig verstehe.

c:MeinBefehl wäre der Ablageort der .lsp Datei ?!
Also direkt auf der C Festplatte, oder was gibt c:MeinBefehl an?
Wenn ich es auf C:\ProgramData\Autodesk\xyz.lsp liegen hätte,
dann müsste ich es so schreiben oder?

Danke für eure Antworten und ein schönes WE.

LG
Manuel486

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Meldin
Mitglied



Sehen Sie sich das Profil von Meldin an!   Senden Sie eine Private Message an Meldin  Schreiben Sie einen Gästebucheintrag für Meldin

Beiträge: 381
Registriert: 15.07.2011

ACA2020
Windows10

erstellt am: 01. Feb. 2020 13:40    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Manuel486 10 Unities + Antwort hilfreich

Hallo,
Nein !!! das "defun c:" sagt nur das eine Lokale Funktion definiert wir! Das heißt wenn du nachher in ACad in die Befehlszeile MeinBefehl eingibst wird die Funktion ausgeführt ohne c: dann nicht.
Den Speicherort der lsp sollte wenn du "appload" eingibst bei dem Aktenkoffersymbol Inhalt eingetragen werden. So wird das lsp jedes mal automatisch geladen.
Dann soltest du in den Optionen noch wenn die lsp nicht in einem suchpfad von ACad liegt dieden bei Dateien eintragen sonst meckert ACad ab und an. Aber hier findest du wenn garantiert detailirtere Anleitungen im Netz. 

------------------
Gruß Wolfgang

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Manuel486
Mitglied
Technischer Zeichner Elektro


Sehen Sie sich das Profil von Manuel486 an!   Senden Sie eine Private Message an Manuel486  Schreiben Sie einen Gästebucheintrag für Manuel486

Beiträge: 194
Registriert: 31.01.2020

erstellt am: 03. Feb. 2020 14:28    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,

ich habe jetzt diesen Befehl für die Farbe 255,255,255
^C^C(sssetfirst nil (ssget "_X" '((430 . "")(420 . 16777215)(410 . "Model"))))

jetzt wollte ich diesen Befehl für Farbe 7 umschreiben,
habe jetzt schon viele Varianten durch ich hätte es jetzt so geschrieben.
^C^C(sssetfirst nil (ssget "_X" '((62 . 7)(410 . "Model"))))

der Befehl wählt mir aber immer alle Objekte im Modell aus...
Habe erst gedacht ich hätte es kapiert, jetzt stehe ich wieder auf dem Schlauch  

Edit: Er wählt nicht alles aus, aber er hat auch Objekte mit der Farbe 255,255,255 in der Auswahl.
Ich möchte ja nur Farbe 7 (weis) in meiner Auswahl...

[Diese Nachricht wurde von Manuel486 am 03. Feb. 2020 editiert.]

[Diese Nachricht wurde von Manuel486 am 03. Feb. 2020 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

cadffm
Moderator
良い精神




Sehen Sie sich das Profil von cadffm an!   Senden Sie eine Private Message an cadffm  Schreiben Sie einen Gästebucheintrag für cadffm

Beiträge: 21533
Registriert: 03.06.2002

Alles

erstellt am: 03. Feb. 2020 14:39    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Manuel486 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von Manuel486:
der Befehl wählt mir aber immer alle Objekte im Modell aus...
Dann hat auch jedes Element den Wert 7 im gc62
Das kannst du ja bereits (selbst) abfragen mit dem entget car entsel.

Habe erst gedacht ich hätte es kapiert, jetzt stehe ich wieder auf dem Schlau 
Vielleicht hast du einen Fehler beim testen gemacht, also Datei neu öffnen und konzentriert erneut testen.
Falls alle den gc62 mit Wert7 haben, die Objekte aber zugewisene TrieColor oder Farbbuchfarben sind,
dann bedenke auch meinen Hinweis oben: WENN kein Farbbuchwert in 430 bzw. WENN kein TrueColorWert in 420



Schließt Farbbuch und TrueColor-Zuweisungen aus:
(ssget "_X" '((62 . 7)(-4 . "<not")(-4 . "*")(420 . 0)(-4 . "not>")(410 . "Model")))


Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

cadffm
Moderator
良い精神




Sehen Sie sich das Profil von cadffm an!   Senden Sie eine Private Message an cadffm  Schreiben Sie einen Gästebucheintrag für cadffm

Beiträge: 21533
Registriert: 03.06.2002

Alles

erstellt am: 03. Feb. 2020 14:40    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Manuel486 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von cadffm:
62er für ACI Farben (wenn es keinen 420er gibt)

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Manuel486
Mitglied
Technischer Zeichner Elektro


Sehen Sie sich das Profil von Manuel486 an!   Senden Sie eine Private Message an Manuel486  Schreiben Sie einen Gästebucheintrag für Manuel486

Beiträge: 194
Registriert: 31.01.2020

erstellt am: 03. Feb. 2020 15:06    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

So. Fehler gefunden.
Objekte auf Farbe 255,255,255 haben bei 420 diesen Wert: 16777215
und bei 62 die 7, also genau den selben Wert als würde ich nach weis suchen.

Dieser Befehl ist super um wirklich nur weis (7) zu Filtern:
^C^C(sssetfirst nil (ssget "_X" '((62 . 7)(-4 . "<not")(-4 . "*")(420 . 0)(-4 . "not>")(410 . "Model"))))

Vielen vielen dank für die Hilfe 

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Manuel486
Mitglied
Technischer Zeichner Elektro


Sehen Sie sich das Profil von Manuel486 an!   Senden Sie eine Private Message an Manuel486  Schreiben Sie einen Gästebucheintrag für Manuel486

Beiträge: 194
Registriert: 31.01.2020

Windows 10 Pro - 64-Bit -
Lenovo Thinkstation P520 -
Intel Xeon W-2255 CPU @ 3.70 GHz 10 Kerne -
3x32GB DDR4 RAM @ 2933 MHz -
WD Blue SN570 SSD 1000GB -
Samsung MZVLB512HAJQ-000L7 SSD 500GB -
NVIDIA Quadro P2200 5GB -
Elgato Stream Deck 15 Tasten -
AutoCAD MEP 2019 -
Revit 2018+2019+2020+2021+2022

erstellt am: 05. Feb. 2020 15:16    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Zitat:
Original erstellt von Meldin:
Hallo,
als erstes würde ich mich entscheiden
daher wäre als erstes mein tipp den Befehlsstring z.B. nur so aussehen zu lassen.
^C^C(c:MeinBefehl);
und mein LISP dann so:

(defun c:MeinBefehl (/)
(sssetfirst nil (ssget "_X" '((430 . "")(420 . 16777215))))
...
...
...
)


Ich glaube es läuft auf einen Befehlsstring hinaus.
Das ist mein bisher längster Befehlsstring.

^C^C-LAYER;SEtzen;0;ENtsperren;*;Tauen;*;Ein;*;LStärke;_Default;*;^C^C-LAYOUT;Löschen;;-LAYOUT;SEtzen;Modell;^C^C_burst;alle;;_burst;alle;;_burst;alle;_burst;alle;_burst;alle;;^C^C(sssetfirst(setq a(ssget "_:s" '((0 . "POINT"))))a);alle;_erase;^C^C(sssetfirst(setq a(ssget "_:s" '((0 . "WIPEOUT"))))a);alle;_erase;^C^C_-purge;_all;*;_no;-LAYER;Neu;_A-BEMASSUNG;Neu;_A-BEMASSUNG-INNEN;;_zoom;g;^C^C(sssetfirst(setq a(ssget "_:s" '((0 . "DIMENSION"))))a);alle;

Jetzt habe ich so lange daran gesessen bis es funktioniert hat und jetzt alles auf LISP umstellen...
Dann bin ich ja wieder eine Woche beschäftigt   

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Meldin
Mitglied



Sehen Sie sich das Profil von Meldin an!   Senden Sie eine Private Message an Meldin  Schreiben Sie einen Gästebucheintrag für Meldin

Beiträge: 381
Registriert: 15.07.2011

ACA2020
Windows10

erstellt am: 06. Feb. 2020 09:34    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Manuel486 10 Unities + Antwort hilfreich

Hallo,
also damit du vielleicht dann mal siehst wie es aussehen könnte habe ich dir das mal versucht 1:1 umzusetzen. Der genaue Ablauf erschließt sich mir auch nicht warum du 3 mal etwas auswählst aber das ist deine Bedienung darum jetzt auch nicht weiter hinterfragt.
Code:
(defun c:MeinBefehl (/)
(command "-LAYER" "SEtzen" "0" "ENtsperren" "*" "Tauen" "*" "Ein" "*" "LStärke" "_Default" "*" "")
(command "-LAYOUT" "Löschen" "")
  (while
    (setq a (ssget "_X" (list (cons 0 "INSERT")(cons 66 1)(cons 410 (getvar "ctab")))))
    (sssetfirst nil a)
    (c:burst)
  )
(if(setq a(ssget "_:s" '((0 . "POINT"))))
  (command "_erase" a)
)
(if(setq a(ssget "_:s" '((0 . "WIPEOUT"))))
  (command "_erase" a)
)
(command "_-purge" "_all" "*" "_no")
(command "-LAYER" "Neu" "_A-BEMASSUNG" "Neu" "_A-BEMASSUNG-INNEN" "")
(command "_zoom" "g")
(if(setq a(ssget "_:s" '((0 . "DIMENSION"))))
  (command "_erase" a)
)
)

 

------------------
Gruß Wolfgang

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Manuel486
Mitglied
Technischer Zeichner Elektro


Sehen Sie sich das Profil von Manuel486 an!   Senden Sie eine Private Message an Manuel486  Schreiben Sie einen Gästebucheintrag für Manuel486

Beiträge: 194
Registriert: 31.01.2020

erstellt am: 12. Feb. 2020 16:36    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Zur Erklärung was ich mache.
Ich bereite einen Plan vom Architekten auf.
Wir haben einen gewissen Ablauf der zu 90% immer gleich ist.

Layer 0 aktuell / Layer Entsperren / Layer Tauen / Layer Ein / Layer Lstärke Vorlage
Layout löschen / Modell aktuell (bei mehren Layouts können alle raus)
5x burst hier bräuchte ich einen Befehl der Burst macht bis er nichts mehr findet
Löscht alle Punkte + Abdeckungen in der Zeichnung (für uns unwichtig)
Neuer Layer _A-BEMASSUNG + _A-BEMASSUNG-INNEN (hier kommt später die Bemassung drauf die aufgesprengt wird)
Bereinigt alles / Zoom Grenzen
Bemassung in die Auswahl um Ursprung (_explode) und Objekte Vorher auf Layer selbst auszuführen

Dein Befehl läuft bis vor Burst, dann ist Ende :-(
(setq a (ssget "_X" (list (cons 0 "INSERT")(cons 66 1)(cons 410 (getvar "ctab")))))
    (sssetfirst nil a)
    (c:burst)

MFG
Manuel486

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Meldin
Mitglied



Sehen Sie sich das Profil von Meldin an!   Senden Sie eine Private Message an Meldin  Schreiben Sie einen Gästebucheintrag für Meldin

Beiträge: 381
Registriert: 15.07.2011

ACA2020
Windows10

erstellt am: 13. Feb. 2020 09:28    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Manuel486 10 Unities + Antwort hilfreich

Also ich wüßte jetzt nicht warum
Code:
(while
    (setq a (ssget "_X"
  (list (cons 0 "INSERT")
(cons 66 1)
(cons 410 (getvar "ctab"))
  )
    )
    )
    (sssetfirst nil a)
    (c:burst)
  )

nicht laufen sollte
kann ja nur an den beiden Command davor liegen also das es in den ACad versionen unterschiede im Befehlsablauf gibt vieleicht hat jemand anderes die Möglichkeit es zu testen an sonsten musst du mal jeden Command eben selber durch gehen ließt sie doch im Grunde wie Klartext (zumindest wenn man so ein Buttonscript schreiben kann wie du    ) 

------------------
Gruß Wolfgang

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz