|
AutoLisp : Alles auswählen ausser... mit Lisp
Hänk am 11.01.2006 um 14:51 Uhr (0)
Danke euch beiden, werde mir mit diesen SelectionSets mal die Zeit vertreiben. Woher nehmt ihr den die Infos was diese Zahlen zu bedeuten haben im Code? Habe was von DXF gruppencode gelesen, aber gibts da irgendwie eine Grundregel oder eine Übersicht? Wenn ich z.B. nach Farben suchen will?
|
In das Form AutoLisp wechseln |
|
AutoLisp : Alles auswählen ausser... mit Lisp
CADmium am 11.01.2006 um 14:57 Uhr (0)
Zitat:Original erstellt von Hänk: Woher nehmt ihr den die Infos was diese Zahlen zu bedeuten haben im Code? Habe was von DXF gruppencode gelesen, aber gibts da irgendwie eine Grundregel oder eine Übersicht?guckst du hier------------------ - Thomas -"Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."
|
In das Form AutoLisp wechseln |
|
AutoLisp : Alles auswählen ausser... mit Lisp
Hänk am 11.01.2006 um 15:02 Uhr (0)
Die gute alte Hilfe, dort habe ich was entdeckt. jetzt liegts mal an mir euer Feedback und die Hilfe zu koppeln und so einen Schritt weiterzukommen. Thx an euch.
|
In das Form AutoLisp wechseln |
|
AutoLisp : Alles auswählen ausser... mit Lisp
marc.scherer am 11.01.2006 um 17:47 Uhr (0)
Zitat:Tom Berger schrub:Schreib Dir also ein paar elementare Umwandlungsfunktionen (selset-entityliste usw) und ein paar passendeHallo Tom,mal ne grundsätzliche Frage:Ist das immer der richtige Weg?Geht bei wirklich großen Objektmengen nicht eine Menge Zeit für die Umwandlung von Selset nach Liste und später eventuell wieder zurück drauf? Ist bei großen Selsets ein ss-foreach (siehe Mapcars Seiten...) nicht deutlich effizienter?Ich weiß es nicht, bin nicht so der Laufzeit-Analytiker, aber vielleicht kanns ...
|
In das Form AutoLisp wechseln |
|
AutoLisp : Alles auswählen ausser... mit Lisp
archtools am 11.01.2006 um 22:50 Uhr (0)
Zitat:Original erstellt von marc.scherer: Hallo Tom,mal ne grundsätzliche Frage:Ist das immer der richtige Weg?Geht bei wirklich großen Objektmengen nicht eine Menge Zeit für die Umwandlung von Selset nach Liste und später eventuell wieder zurück drauf? Ist bei großen Selsets ein ss-foreach (siehe Mapcars Seiten...) nicht deutlich effizienter?Ich weiß es nicht, bin nicht so der Laufzeit-Analytiker, aber vielleicht kannst Du ja mal was aus Deiner Praxis heraus was dazu sagen?Du kannst das ja einfach mal au ...
|
In das Form AutoLisp wechseln |
|
AutoLisp : Alles auswählen ausser... mit Lisp
marc.scherer am 12.01.2006 um 10:38 Uhr (0)
Zitat:Tom Berger schrub:Ich jedenfalls bin dabei noch nie an relevante Grenzen gestoßen.Hi Tom,danke für Deine Aussage.Aber was heißt "relevante Grenzen"?Ich bin hier im GIS unterwegs und eine Verarbeitung von ner Million Objekten oder mehr ist nicht selten. Mit welchen Mengen hattest Du es bisher zu tun?Ciao,Marc
|
In das Form AutoLisp wechseln |
|
AutoLisp : Alles auswählen ausser... mit Lisp
archtools am 12.01.2006 um 12:07 Uhr (0)
Zitat:Original erstellt von marc.scherer: Hi Tom,danke für Deine Aussage.Aber was heißt "relevante Grenzen"?Ich bin hier im GIS unterwegs und eine Verarbeitung von ner Million Objekten oder mehr ist nicht selten. Mit welchen Mengen hattest Du es bisher zu tun?Meine Kunden haben sicher auch diese Größenordnungen - nicht wenige davon sind auch im GIS-Bereich tätig. Ich selber zeichne nicht.Nochmals: Du kannst das gerne mal testen: der Geschwindigkeitsverlust durch die Konversion ist marginal, und bei den me ...
|
In das Form AutoLisp wechseln |
|
AutoLisp : Alles auswählen ausser... mit Lisp
benwisch am 13.01.2006 um 09:37 Uhr (0)
Hallo Tom,ich habe das mit einem Selectionset von ~ 500000 Objekten und der Profiler Funktion von Achim Dabrunz geprüft. Ich habe verschiedene Szenarien ausprobiert und bin überrascht, daß der Zeitaufwand für die zus. Listenerstellung tatsächlich vernachlässigbar ist.Danke für diesen Tipp. Zitat:(defun ss_e2s (eset / sset x) (setq sset (ssadd)) (mapcar (lambda (x) (setq sset (ssadd x sset)) ) eset ) sset)Bei deiner Funktion ss_e2s ist ein setq innerhalb lambda nicht notwendig, da ssadd eine desktruktive F ...
|
In das Form AutoLisp wechseln |
|
AutoLisp : Alles auswählen ausser... mit Lisp
archtools am 13.01.2006 um 11:22 Uhr (0)
Zitat:Original erstellt von benwisch:Bei deiner Funktion ss_e2s ist ein setq innerhalb lambda nicht notwendig, da ssadd eine desktruktive Funktion ist. ;-)Wo Du Recht hast hast Du Recht. Dass ssadd "destruktiv" ist, ist einer der meist ungeliebten Seiteneffekte der Picksets. Diese sind ja nur Zeiger auf die tatsächliche Datenstruktur und sind damit eher so etwas wie Datei-Handles, auf jeden Fall aber eben keine "richtigen" LISP-Strukturen.Tom Berger
|
In das Form AutoLisp wechseln |
|
AutoLisp : lisp für andere darstellungsvarianten z.b. axonometrie?
CADmium am 14.01.2006 um 11:21 Uhr (0)
(Fast) alles was sich in Autocad zeichnen läßt, läßt sich auch mit Lisp nachstellen. .. z.b. über die Command-Funktion. Das Problem wird bei dir eher dia Analyse der Ist-Geometrie sein. Als Einstieg in dein Problem sind sicherlich die Unsetzung der mathematischen Grundlagen sinnvoll.Viel Spaß dabei wünscht..------------------ - Thomas -"Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."
|
In das Form AutoLisp wechseln |
|
AutoLisp : If-Funktion zum Auswahl prüfen
Hänk am 14.01.2006 um 16:21 Uhr (0)
Hi zusammenIch habe mit Lisp einen Auswahlsatz mittels ssget erstellt den ich dann verwende um dessen Eigenschaften zu verändern (chprop). Das funktioniert soweit, nun möchte ich noch den Fehler abfangen wenn die Auswahl ohne gefundene Objekte abbricht. Mein Ziel ist es den Auswahlsatz zu prüfen, beinhaltet er keine Objekte soll eine Meldung erscheinen und ansonsten soll der chprop Befehl weitergeführt werden um Eigenschaften zu ändern.Wie mache ich sowas? habe die if-Funktion studiert, aber irgendwie weis ...
|
In das Form AutoLisp wechseln |
|
AutoLisp : If-Funktion zum Auswahl prüfen
archtools am 14.01.2006 um 16:34 Uhr (0)
Zitat:Original erstellt von Hänk:Hi zusammenIch habe mit Lisp einen Auswahlsatz mittels ssget erstellt den ich dann verwende um dessen Eigenschaften zu verändern (chprop). Das funktioniert soweit, nun möchte ich noch den Fehler abfangen wenn die Auswahl ohne gefundene Objekte abbricht. Mein Ziel ist es den Auswahlsatz zu prüfen, beinhaltet er keine Objekte soll eine Meldung erscheinen und ansonsten soll der chprop Befehl weitergeführt werden um Eigenschaften zu ändern.Wie mache ich sowas? habe die if-Funk ...
|
In das Form AutoLisp wechseln |
|
AutoLisp : If-Funktion zum Auswahl prüfen
CAD-Huebner am 14.01.2006 um 18:56 Uhr (0)
@HänkDas Ausrufezeichen wird in Lisp nur verwendet, um an der Consolde direkt den Wert einer Variablen auszugeben, aber niemals innerhalb eines Programmes.also nicht(if (null !as))...sondern(if (null as) (Tue_dies) (sonst_dies))------------------Mit freundlichem GrußUdo Hübner
|
In das Form AutoLisp wechseln |