|
Rund um Autocad : Bögen in 3D Polylinien umwandeln
Brischke am 20.01.2004 um 11:08 Uhr (0)
Hallo Tom, unter der Voraussetzung dass die Bögen wirklich in einer Ebene liegen und dann auch noch wirklich die Endpunkte aneinander liegen könnte dir folgende Lisp helfen. Code: (defun c:arc_pl ( / as aa) (setq as (ssadd)) (while (and as (/= aa (setq aa (sslength as))) ) (setq as (ssget _X ((0 . ARC )))) (if as (make_pline (ssname as 0) (ssdel (ssname as 0)as)) ) ) ) (defun make_pline (arc as /) (command _.UCS _N _E arc) (com ...
|
| In das Form Rund um Autocad wechseln |
|
Rund um AutoCAD : Attributsdaten übertragen
Brischke am 15.03.2004 um 13:44 Uhr (0)
gut, dann scheidet das Kopieren also auch aus.Folgender Vorschlag:Füge nach den Zeilen(if (not ATT-LST)(princ"
Quell-Block enthält keinerlei Attributsdaten... Funktionsende !") ;_ end princ(prognfolgende Zeile ein(setvar "TILEMODE" (abs (- (getvar "TILEMODE") 1)))(Anbei die geänderte Datei, umbenennen in *.lsp)Das Programm sollte eigentlich auch unter R14 laufen. Der Abbruch geschieht ja nur wegen des Wechsels vom Papier- in den Modellbereich, oder eben anders herum.Wenn dass dann immer noch nicht funzt, d ...
|
| In das Form Rund um AutoCAD wechseln |
|
AutoLisp : DCL-Toggle funktion in Lisp einbinden
Brischke am 28.10.2004 um 16:15 Uhr (0)
Hallo Jürgen, in der Konstellation, wie du es jetzt hast, ist immer noch der (command ..)-Aufruf während das Diafenster aktiv ist. Das funktioniert nicht! Du musst dann mit (entmake ..) ran, wenn der Layer unbedingt erstellt werden soll, wenn das Dialogfenster offen ist. Was meines Erachtens keinen Sinn macht, es sei denn, der soll dann gleich in einer Liste angezeigt werden oder so? Was mir auch noch auffällt ist, dass du die Variablen nicht lokal deklariert hast. Insbesondere die dcl_id kann dadurch, das ...
|
| In das Form AutoLisp wechseln |
 UTF82ANSICODE.zip |
Lisp : TXT-Datei einlesen
Brischke am 01.10.2018 um 14:17 Uhr (1)
Hallo Siegfried,ich habe eben mal ein Tool geschrieben, welches dir eine UTF-8 kodierte Datei in Ansi-Hex-Codes konvertiert. Darin wird gleich das U+ mit eingefügt, so dass du den aus der konvertierten Datei eingelesenen String gleich in ein AutoCAD-Textobjekt einsetzen kannst.Die UTF82ANSICODE.exe erwartet einen Startparameter, den Dateinamen der UTF-8 Datei (vollständige Pfadangabe).Im Ergebnis wird dann an den Speicherort eine um ein _UC erweiterte txt-Datei geschrieben.Diese kannst du dann in Lisp dire ...
|
| In das Form Lisp wechseln |
|
Lisp : DBX - XREF-Pfadnamen ändern??
Brischke am 20.04.2010 um 11:48 Uhr (0)
Hallo Jörn,ich habe dir mal eine Funktion C#.Net geschrieben, mit der du die Sysvars externer Zeichnungen abfragen kannst.Die anbei befindliche DLL ist für Acad2009 und beinhaltet den zusätzlichen Lisp-Befehl: GetSysvarByDrawingDieser erwartet 2 Parameter[String] Zeichnungdatei, inkl. Pfad[String] Name der Systemnvariablen, die abgefragt werden soll.Die Rückgabe ist immer ein [String]Bspaufruf: (GetSysvarByDrawing "c:Test.dwg" "INSUNITS")Wenn du z.Bsp. damit den CLAYER abfragst, ist das Ergebnis intern ein ...
|
| In das Form Lisp wechseln |
|
Lisp : Reaktoren auf Cannoscale
Brischke am 16.03.2013 um 09:54 Uhr (0)
Ich denke, du kannst einen SysVarChanged-Reactor nehmen, denn CANNOSCALE ist eigentlich kein Befehl, sondern eine Systemvariable.Zitat:Original erstellt von Danillo:... kaum zu glauchen wie schnell die Zeit vergeht und wie langsam die Softwareentwicklung voranschreitet)...Das sehe ich anders. Nur weil Autodesk nicht mehr alles in der Lisp-Schnittstelle implementiert, heißt das nicht, das die SoftwareEntwicklung nicht voran geschritten ist. Es existiert inzwischen im AutoCAD eine zusätzliche, weitaus mächti ...
|
| In das Form Lisp wechseln |
|
Autocad VBA : Zeichnung über einen Menüpunkt öffnen
Brischke am 15.05.2004 um 19:11 Uhr (0)
Hallo, @caladia Richtiger sollte es heißen: Der Documents-Collection ein weiteres Document hinzufügen. Die Documents-Collection hängt direkt unter dem Acad-Object. Das Ganze könnte dann ein VBA-Macro werden, welches über einen Button aufgerufen wird - oder wie folgt in Lisp. Das Prinzip kann ja 1:1 nach VBA übernommen werden. (defun open_dwg (Name) (setq NewDWG (vlax-invoke-method (vlax-get-property (vlax-get-acad-object) Documents ) ...
|
| In das Form Autocad VBA wechseln |
|
Rund um Autocad : Bilder
Brischke am 09.06.2004 um 14:04 Uhr (0)
Hallo Julia, keine Panik! Hier im Forum haben schon mehr Leute gelernt mit LISP-Dateien umzugehen und sich somit die Arbeit zu vereinfachen. So gehts: Eigene AutoLISP- Anwendungen laden 1) Zunächst den Code in einer Datei mit der Erweiterung LSP in einem der AutoCAD-Supportpfade speichern - re.lsp 2) Anwendung laden - In der Befehlszeile: (load“dateiname.lsp“) oder - Über das Menü: Extras - Anwendungen, Datei auswählen, Laden 3) Danach können die Funktionen durch Eingabe der darin definierten (defun c:N ...
|
| In das Form Rund um Autocad wechseln |
|
Lisp : Attribute zum Block
Brischke am 24.01.2013 um 12:07 Uhr (0)
laut deiner Sysinfo, hast du doch das VisualStudio 2010. Warum schlägst du dich dann mit Lisp rum .. in .Net (beispielsweise C#) ist das überhaupt kein Problem, Attribute an eine Blockreferenz anzuhängen.Wenn ich mich nicht täusche, bist du eh noch am Anfang vom Lisp-Lernen. Ich kann dir nur mpfehlen, auf c#.Net zu wechseln, besonders auch im Hinblick auf die bei dir eingesetzte Applikation. Da wird vieles einfacher (klar, manches auch schwerer).Hast du das AutoCAD Magazin? Da habe ich im vergangene Jahr e ...
|
| In das Form Lisp wechseln |
|
Rund um Autocad : Blöcke suchen
Brischke am 16.06.2003 um 15:24 Uhr (0)
Hallo Andi, das habe ich mir schon gedacht, dass du so etwas vor hast. Wozu alle diese Zeichnungen auf einmal aktualisieren? Das ist nur notwendig, wenn diese Zeichnungen direkt mit anderen Systemen geöffnet und gedruckt oder ohne zu öffnen weiter gegeben werden. Ansonsten reicht es doch vollkommen aus, wenn das beim öffnen der Zeichnung unmerklich im Hintergrund geschieht. Unabhängig davon - ich würde ein kleines Lisp schreiben, dass, wenn der gesuchte Block vorhanden ist, diesen austauscht. Dann ist e ...
|
| In das Form Rund um Autocad wechseln |
|
Lisp : Block-im-Block auflösen
Brischke am 23.03.2011 um 18:20 Uhr (0)
Hallo glocker,Programmiert habe ich derlei bereits - ginge also.Aber das Lisp-Forum ist ja für Fragen der (Lisp-)Programmierung gedacht. Daher meine Fragen: Wie weit bist mit eigenen Programmierversuchen? Wo hakt es bei der Umsetzung genau?Meine (schnellmalruntergetipptecommand)Lösung sieht wie folgt aus:-- Schleife durch die Blocktabelle in der folgendes gemacht wird1. Einfügen des Blocks am Ursprung2. Ursprung3. -- While-Schleife Prüfen ob bei den aufgelösten Elementen ein INSERT dabei ist =:Ja - Insert ...
|
| In das Form Lisp wechseln |
|
Lisp : dynamischer block mit auswahl zum ankreuzen
Brischke am 29.03.2012 um 09:19 Uhr (0)
Hallo Sosnja,dyn. Block ist der falsche Ansatz. Wenn du die Elemente ausgewählt hast, sollen ja die Lücken, die zwischen den Legendenelementen entstehen würden ja wieder geschlossen werden. Mir wäre hier keine Möglichkeit bekannt (habe aber auch nicht die Erfahrung beim Erstellen dyn. Blöcke).Mit Lisp kann man das sicher lösen.Folgenden Ansatz würde ich an deiner Stelle verfolgen:(1) Alle Symbole als separate Zeichnung ablegen(2) Texte getrennt in Sprach-TextDateien speichern (de.txt | en.txt | ...)in den ...
|
| In das Form Lisp wechseln |
|
Lisp : dynamischer block mit auswahl zum ankreuzen
Brischke am 29.03.2012 um 09:19 Uhr (0)
Hallo Sosnja,dyn. Block ist der falsche Ansatz. Wenn du die Elemente ausgewählt hast, sollen ja die Lücken, die zwischen den Legendenelementen entstehen würden ja wieder geschlossen werden. Mir wäre hier keine Möglichkeit bekannt (habe aber auch nicht die Erfahrung beim Erstellen dyn. Blöcke).Mit Lisp kann man das sicher lösen.Folgenden Ansatz würde ich an deiner Stelle verfolgen:(1) Alle Symbole als separate Zeichnung ablegen(2) Texte getrennt in Sprach-TextDateien speichern (de.txt | en.txt | ...)in den ...
|
| In das Form Lisp wechseln |