LISP-Tools für AutoCAD und BricsCAD - AutoCAD-Magzin - LISP-Tools für AutoCAD und BricsCAD

Direkt zum Seiteninhalt

AutoCAD Magazin - 2019




Ziemlich regelmäßig werden im AutoCAD-Magazin LISP-Programme von Bosse-engineering veröffentlicht. Die Themen sind vielfältig, auch wenn der Schwerpunkt des Öfteren hin zum Vermessungswesen tendiert. Viele dieser Tools können die tagtägliche Arbeit mit AutoCAD ein wenig erleichtern.
Sollten Sie Interesse an einem solchen Tool haben, dann senden Sie eine Anfrage per Email an

bosse@bosse-engineering.com.
Kostenlos können Sie max. 3 Tools erhalten. Weitere Tools gibt es nur für nachweisliche Abonnenten des AutoCAD-Magazins.
Sollten Sie bereits AutoCAD-Magazin-Tools von Bosse-engineering haben, dann können Sie sich natürlich mit Fragen, Änderungs- oder Weiterentwicklungswünschen direkt an Jörn Bosse wenden.
8/19: Positionsmarker in Datei einfügen und anzoomen.
7/19: XYZ-3D-Label-Blöcke einfügen und schieben
6/19: Polylinien als Multilinien zeichnen
5/19: Drehrahmen A4: Generieren eines A4-Rahmens ins Layout
4/19: TextTool- Neuanordnung von Texten und Textwertmanipulation
3/19: Legende- für Linienelemente und Blöcke
2/19: PunktNester - Endpunkte von Linienelemente ändern
1/19: AutoSnapLine - automatisches Fangen von Punktblöcken für 3D-Polylinie
8/19: Positionsmarker in Datei einfügen und anzoomen.
In umfangreichen Zeichnungen wäre es hilfreich, wenn bestimmte Positionen im Model- oder Layoutbereich markiert werden könnten. Diese Positionen gilt es wieder aufzufinden, wenn z.B. dort noch Änderungen durchgeführt oder Informationen von dieser Position ermittelt werden müssen.

Mit dem Programm „PosMarker“ können Markierungsblöcke im Model- oder Layoutbereich gesetzt werden und es kann eine Bemerkung zu dieser Position vergeben werden. Wenn die Positionsmarker-Blöcke in der Zeichnung vorhanden sind können diese direkt angezoomt werden, mit Hilfe der Bemerkungen kann man zielgerichtet vorgehen.






7/19: XYZ-3D-Label-Blöcke einfügen und schieben
Oftmals werden 3D-Objekte mit Hilfe einer perspektivischen Ansicht dargestellt. Wenn für einzelne Punkte des Models die Koordinaten dargestellt werden sollen, dann ist die reine Koordinaten-Bemaßung von AutoCAD nicht hinreichend, weil diese durch die Perspektive immer stärker verzerrt werden, je weiter man von der direkten Draufsicht abweicht. Im ungünstigsten Fall erhält man bei einer Ansicht von hinten die Beschriftung in Spiegelschrift.

Mit dem Programm „XYZ-3D-Label-Blöcke“ kann eine Beschriftung mit 3D-Weltkoordinaten vorgenommen werden. Die Darstellung der Koordinaten erfolgt mit Hilfe eines attributierten Blocks, der zusätzlich noch ein Attribut für eine Punktnummer enthält. Die Ausrichtung des Blocks erfolgt immer entsprechend der aktuellen Ansicht. Wenn sich die Ansicht ändert, können die Blöcke in der Ausrichtung angepasst werden. Zwischen dem 3D-Label-Block und dem 3D-Punkt wird eine Bezugslinie mit einer 3D-Polylinie erzeugt.



6/19: Polylinien als Multilinien zeichnen
In AutoCAD gibt es Multilinien. Wenn z.B. für Leitungstrassen u. ä. mehrere parallele Linienzüge gleichzeitig zu zeichnen sind, dann kann das über die Multilinien schnell gelöst werden. Wieviel Linien, Linienart, welche Abstände zur Achse, das kann alles über einen Multilinienstil festgelegt werden.

Wenn Polylinien aber aufgrund von Zeichenvorschriften nicht zulässig sind, dann bleibt nur, diese in den Ursprung aufzulösen. Dabei fallen Linien als Ursprungselemente heraus, diese könnten dann mit VERBINDEN zu Polylinien zusammengefasst werden. Weiter fällt auf, dass sich alle Linien auf einem Layer befinden, dem ursprünglichen Layer der Multilinie.

Mit dem Programm „PolysAsMulti“ können im Gegensatz zu den Multilinien, eigenständige, parallele Polylinien gezeichnet werden. Dabei kann jede Polylinie Ihren eigenen Layer und eine Polylinienbreite erhalten. Die Arbeitsweise entspricht um Grundsatz der Erzeugung einer Multilinie, es werden Achspunkte gepickt, optional kann aber von geraden Segmenten auf tangentiale Bogensegmente umgeschaltet werden. Abschließend kann der Achslinienzug geschlossen werden. Es können beliebig viele parallele Polylinien in einem Arbeitsgang erzeugt werden, dazu muss jeweils der Abstand zur Achse definiert sein.


  
Hinweis: in diesem Programm ist ein Fehler enthalten, wodurch es beim Generieren zu einem Fehler kommt. Wenn Sie nachweislich Abonnent des AutoCAD-Magazins sind, dann kann ich Ihnen die aktualisierte Lisp-Datei zukommen lassen. Im Magazin 7/19 wird die korrigerte Programmdatei dann zusätzlich zur Verfügung gestellt.

5/19: Drehrahmen A4: Generieren eines A4-Rahmens ins Layout
Um einen Planausschnitt zu Plotten gibt es in AutoCAD das Layout. Es wird ein Rahmen gezeichnet, oder wenn vorhanden, als Block eingefügt. Dann wird ein Ansichtsfenster erstellt. Das Ansichtsfenster muss den Ausschnitt des Modellbereiches umfassen, der dargestellt werden soll. Dabei ist der Maßstab zu berücksichtigen.

Diese manuelle Vorgehensweise ist einerseits umständlich, andererseits stoßen auch viele AutoCADAnwender mit den notwendigen Arbeitsschritten an Ihre Grenzen.

Um diese Vorgehensweise zu vereinfachen kann mit dem Programm „DrehRahmen“ ein A4-Rahmen automatisch erstellt werden. Im Modellbereich wird dieser positioniert (geschoben, gedreht, skaliert (Maßstab)). Während der Positionierung erhält der Anwender bereits eine Vorschau, wie der Rahmen später aussehen wird. Wenn die Positionierung fertig ist kann der Plan generiert werden. D.h., es wird ein Layout ausgewählt, in dem der Rahmen gezeichnet und das zugehörige Ansichtsfenster automatisch erzeugt wird. Dabei werden alle Ansichtsfenstereigenschaften bereits so eingestellt, dass es der im Modellbereich vorgenommen Positionierung, Drehung und Skalierung entspricht.

Weil es sich um einen A4-Rahmen hochkant handelt kann sinnvollerweise bereits im Vorfelde das Layout entsprechend eingerichtet werden.


  
4/19: TextTool- Neuanordnung von Texten und Textwertmanipulation

In AutoCAD können mit MTexten aufwendig formatierte Texte erstellt werden. Wenn es aber darum geht, verschiedene Objekte mit einfachen Beschriftungen zu versehen, dann kommen einzeilige Texte ziemlich oft zum Einsatz. Das können z.B. Flächengrößen und Materialanschriebe sein, oder einzeilige Texte bilden zusammen einen Textblock.

Aufgabenstellungen zu einzeiligen Texten könnten lauten, diese in einem Textblock neu anzuordnen, numerisch oder alphanumerisch zu sortieren. Handelt es sich um Texte mit Zahlenwerten ist oftmals die Summe gefragt (z.B. Leitungslängenanschriebe).

Mit dem Programm „TextTool“ lassen sich unter anderem die oben angesprochenen Aufgabestellungen lösen. Dabei geht es nicht nur um die Neuanordnung von Texten, sondern auch um die Anbringung von Präfix oder Suffix, oder natürlich auch um Textzeichen zu entfernen oder zu ersetzen.

Bei der Neuanordnung von Texten ist grundsätzlich eine Zeilenhöhe einzugeben, dann werden die Texte Zeilenweise neu angeordnet. Die Zeilen werden, im WKS oder BKS, entsprechend der negativen Y-Richtung ausgerichtet (von oben nach unten).

  
3/19: Legende- für Linienelemente und Blöcke

Wenn eine Zeichnung, z.B. ein Lageplan, gut strukturiert ist, dann ist das i.d.R. bereits eine gute Grundlage, um eine Legende für die verwendeten Elemente zu erstellen. Eine Legende ist eine Zeichenerklärung, es werden z.B. Linien und Blöcke mit einem beschreibenden Text dargestellt. Des Weiteren kann eine Legende aber auch als Stückliste verwendet werden, dazu müssen bei Blöcken z.B. die Anzahl und bei Linienelemente die Längen angeschrieben werden.

Mit dem Programm „Legende“ wird genau das gemacht. Es können Linienelemente (Linien, Bogen, Polylinien, Kreis) und / oder Blöcke ausgewählt werden. Pro Linienlayer und pro Block kann ein beschreibender Text festgelegt werden, d. h., das Programm „lernt“ dazu. Wenn in weiteren Programmabläufen Elemente ausgewählt werden, denen bereits eine Beschreibung zugeordnet ist, dann kann auch dieser beschreibende Text erneut verwendet werden.

Für Linienelemente kann pro Layer eine Längensummer der ausgewählten Elemente angeschrieben werden, bei Blöcken die Anzahl pro Block.

  
2/19: PunktNester - Endpunkte von Linienelemente ändern

Im Vermessungswesen ist es oft der Fall, wenn mit einfachen Liniencodierungsverfahren gearbeitet wird, dass im Bereich von Knoten mehrere Knotenpunkte gemessen werden, und zwar für alle abgehenden oder ankommenden Linienzüge. Um die Linienzüge jetzt alle sauber auf einem Knotenpunkt zu ziehen sind in AutoCAD viele Arbeitsschritte notwendig.

Mit dem Programm „PunktNester“ wird ein Knotenpunkt als Punktblock ausgewählt (im Programm auch Ziel-Block genannt), dann werden die Linienelemente in Schleife gepickt, die Im Start- oder Endpunkt auf den Knotenpunkt gestreckt werden sollen. Dabei können optional die ursprünglichen Knotenpunkte der Linienzüge auf einen anderen Layer umgelegt werden. Wenn dieser Layer gefroren ist sind die Punktblöcke immer noch vorhanden, aber nicht mehr sichtbar.

Für 3D-Polylinienzüge und Linien kann die Höhe des neuen Knotenpunktes auf den Start- oder Endpunkt des Linienzuges übertragen werden. Ausnahme: wenn bei allen Stützpunkten des Linienzuges der z-Wert bei 0.0 liegt, dann wird auch kein z-Wert auf den zu ändernden Stützpunkt übertragen.



  



1/19: AutoSnapLine - automatisches Fangen von Punktblöcken für 3D-Polylinie

    Wenn in AutoCAD 3D-Punktblöcke eine Punktwolke darstellen, so kann mit dem Punktfang „Basispunkt“ die 3D-Koordinate des jeweiligen Punktes gefangen werden, sofern die Variable „OSNAPZ“ auf 0 steht. Trotz allem ist es müßig sich durch die Punkte zu navigieren und die Punktblöcke korrekt für die Stützpunkte einer 3D-Polylinie zu bestimmen, gerade wenn außer den Punktblöcken auch noch weitere Liniengeometrie vorhanden ist.

    Mit dem Programm „AutoSnapLine“ wird der Name und der Einfügelayer von den 3D-Punktblöcken festgelegt, die für die Stützpunkte einer neuen 3D-Polylinie verwendet werden sollen. Dann wird an der Position des Mauszeigers, im Bereich eines festzulegenden Suchkreises, der nächstliegende Punktblock zur Mauszeigerposition markiert. Der markierte Punktblock kann, ohne diesen mit der Maus direkt anzufahren, mit einem Linksklick der Maus als Stützpunkt zur 3D-Polylinie hinzugefügt werden.


    Eine rote Markierung stellt einen gefundenen 3D-Punktblock da, der noch nicht fixiert ist.



Eine grüne Markierung stellt einen gefundenen 3D-Punktblock da, der fixiert ist. Das betrifft nur den ersten Punkt der 3D-Polylinie. Sobald der 2. Stützpunkt fixiert ist wird das 1. Segment der 3D-Polylinie gezeichnet.
Zurück zum Seiteninhalt