|
Lisp : Zeichnung vom Modellbereich in den Layoutbereich verschieben
Doc40 am 25.05.2009 um 08:10 Uhr (0)
Hallo nochmal!Im Anhang die Routine, wie sie nun zum Einsatz kommt. (getestet leider nur unter AutoCAD 2010)LG, Bernhard
|
| In das Form Lisp wechseln |
|
Lisp : Zeichnung vom Modellbereich in den Layoutbereich verschieben
Doc40 am 25.05.2009 um 08:12 Uhr (0)
Hallo nochmal!Im Anhang die Routine, wie sie nun zum Einsatz kommt. (getestet leider nur unter AutoCAD 2010)LG, BernhardP.S. Das gab für Heiko 10 Us
|
| In das Form Lisp wechseln |
|
Lisp : Zeichnung vom Modellbereich in den Layoutbereich verschieben
Doc40 am 20.05.2009 um 14:08 Uhr (0)
Hallo Lispforum!Ich bitte um Hilfe bei folgendem Problem:Ich habe eine DWG-Datei aus einem Fremdsystem (ProEngineer) vorliegen,in der sich alle Zeichnungsobjekte im Modellbereich befinden. (inkl. Zeichnungsrahmen)Problemstellung:Mittels LISP alle Zeichnungsobjekte des Modellbereiches "ausschneiden" und im Layoutbereichwieder einfügen (im Punkt 0,0).[b]Mein Lösungsansatz 1:[b] (command "_cutclip" "_all" "") ; Alle Objekte ausschneiden (command "CTAB" "Layout1") ; Layouttab "Layout1" aktiv schalten (command ...
|
| In das Form Lisp wechseln |
|
Lisp : Zeichnung vom Modellbereich in den Layoutbereich verschieben
CADchup am 20.05.2009 um 14:42 Uhr (0)
Hi,warum lässt du nicht AutoCAD die Arbeit machen und nutzt CHSPACE?GrußCADchup------------------CADmaro.de
|
| In das Form Lisp wechseln |
|
Lisp : Zeichnung vom Modellbereich in den Layoutbereich verschieben
fuchsi am 20.05.2009 um 18:07 Uhr (0)
wenn diese Funktion nicht geht.Ist das zeichnungsabhängig? Also in der selben zeichnung immer wieder nachvollziehbar?Wird dabei noch auf das Layout1 umgeschaltet?Die meldung unbekannter Befehl 0,0 sagt mir, dass einer der vorigen befehle (aus welchem Grund auch immer) einen Befehlsoption mehr benötigt hat, und dewegen das (command "_pasteclip" "0,0") nicht mehr als eine Befehl abgehandelt wird, sondern die Option 0,0 einen neuen Befehl beginnt.Das (command .....) darf man nicht als abgeschlossenen Befehl s ...
|
| In das Form Lisp wechseln |
|
Lisp : Zeichnung vom Modellbereich in den Layoutbereich verschieben
Doc40 am 20.05.2009 um 21:22 Uhr (0)
Hallo fuchsi!Ich konnte folgendes Verhalten feststellen:Nach dem Öffnen der zu bearbeitenden Zeichnung rufe ich mir die Lisproutine mittels Tastatureingabe auf. Die Routine läuft durch,wobei zum Schluss auf dan LayoutTab umgeschaltet, jedoch nichts eingefügt wird. Das bedeutet, dass werder im Modell- noch im Layout-Bereich Zeichnungsobjekte zu sehen sind. (sind wohl in der Windows Zwischenablage)Ich schließe nun die Zeichnung (ohne zu speichern) und öffne sie wieder.Beim erneuten Aufrufen der Routine läuft ...
|
| In das Form Lisp wechseln |
|
Lisp : Zeichnung vom Modellbereich in den Layoutbereich verschieben
Doc40 am 22.05.2009 um 15:19 Uhr (0)
Hallo Heiko!Vielen Dank für deinen "Schnellschuss". Funktioniert einwandfrei! Wie von dir bereits erwähnt funktioniert die Routine leider nur für ein Objekt. Schön wäre, wenn ohne Benutzereingabe alle Objekte gewählt, und diese verschoben anstatt kopiert würden. (Modellbereich soll leer sein) Ein leerer Modellbereich ist wichtig, um eine Unterscheidung zwischen importierten Zeichnungen (ProEngineer) und generischen AutoCAD-Zeichnungen treffen zu können. Leider ist mein v-Functions-Wissen noch nicht ausrei ...
|
| In das Form Lisp wechseln |
|
Lisp : Mathematische Funktion Common Lisp
Brischke am 28.05.2009 um 16:43 Uhr (0)
Hallo und Willkommen,...und was ist nun deine Frage?Das Lisp, was du nutzt, wird von den meisten hier nicht genutzt. Hier wird mit einer speziellen Version von AutoCAD-LISP gearbeitet, wobei sicher grundsätzliche Dinge ähnlich zu handhaben sind und Vorgehensweisen sicher gleich sein können.Grüße Holger------------------Holger BrischkeCAD on demand GmbHIndividuelle Lösungen von Heute auf Morgen.
|
| In das Form Lisp wechseln |
|
Lisp : vl-ide keywords
GrassHopper am 29.05.2009 um 18:35 Uhr (0)
Hallo Martin,ich hab hier mal eine Funktion gebbaut die genau das macht was du willst. Abgeschaut hab ich einen Teil aus AnsiCommonLisp.Die Funktion nennt sich CL:DEFCONSTANTAufruf : (cl:defconstant (Name Value))Rückgabe: entweder Value oder NilEs wird eine Liste mit Konstanten angelegt um bei nochmaligem Aufruf eine Meldung auszugeben dass dieses Symbol schon eine Konstante ist.Die Liste trägt den Namen *CL-PROTECTED-SYMBOLS*Der Trick an der Sache ich erzeuge eine neue Datei und lade diese.Beim Laden geh ...
|
| In das Form Lisp wechseln |
|
Lisp : vl-ide keywords
GrassHopper am 30.05.2009 um 08:31 Uhr (0)
Hallo zusammen,ich hab das Programm nochmals umgebaut da ich eine Fehler drin hatte.Es sind allerdings noch vier weitere Programme dazu gekommen.cl:format gibt Formatierte Strings aus Beschreibung mit (cl:format -? nil nil)Aufruf: (cl:format stream "Destination-String" (values ...) stream t = Ausgabe auf Konsole stream nil = Rückgabe als String stream #File ... = Ausgabe in Datei Destination-String: jedes ~A wird durch die Ausgabe mit (vl-princ-to-string value) ersetzt j ...
|
| In das Form Lisp wechseln |
|
Lisp : vl-ide keywords
GrassHopper am 31.05.2009 um 10:11 Uhr (0)
Hallo zusammen,Ich hab Noch ein kleiner Wurm innerhalb der CL:ERROR Funktion drindeswegen kann die Datei nicht geladen werden.Alte Funktion:;|(defun cl:error (msg args / msgn) (cond ((and (vl-symbolp msg) (eq -? msg)) (princ (VL-PRIN1-TO-STRING (cl:Error "Fehlermeldung Formatierung siehe (cl:Format -? nil nil)" [Wert | nil | (wert1 wert2 ...)))) == Hier hab ich das Anführungszeichen an der falschen Stelle (doof oder?) (prin1)) (CL:STRINGP msg) (setq msgn(cl:fo ...
|
| In das Form Lisp wechseln |
|
Lisp : Autostart Code anpassen
yamaha am 05.06.2009 um 20:00 Uhr (0)
Hallo zusammen,kenne mich nicht aus in der Lisp-Programmierung.Ich programmiere sonst in VBA.Habe eine VBA-Datei die ich über ein Lisp-Skriptautomatisch lade.Jetzt würde ich gerne aufgrund einesUpdates auf Autocad 2010eine Weiche in das Skript einbauen, welche abhängig von derAutocad-Version jeweils eine andere VBA-Datei lädt.Der derzeitge Code lautet:Code:(defun S::STARTUP() (command "_VBALOAD" "VBA-Programm-2008.dvb"))Jetzt sollte unterschieden werden zwischen Autocad 2008 und 2010.Vielen Dank für eure H ...
|
| In das Form Lisp wechseln |
|
Lisp : Autostart Code anpassen
CAD-Huebner am 05.06.2009 um 20:11 Uhr (0)
Zitat:Original erstellt von yamaha:Jetzt sollte unterschieden werden zwischen Autocad 2008 und 2010....Das geht mit einer IF oder einer COND Anweisung in Verbindung mit der AutoCAD Systemvariablen ACADVER, z.B. so:Code:(defun S::STARTUP() ; ACADVER 2010 = 18.0..., ACADVER 2008 = 17.... (if (= (substr (getvar "ACADVER") 1 2) "18") (command "_VBALOAD" "VBA-Programm-2010.dvb") ;else (command "_VBALOAD" "VBA-Programm-2008.dvb") ))------------------Mit freundlichem GrußUdo Hübnerwww.CAD-Huebner.de
|
| In das Form Lisp wechseln |