|
Rund um Autocad : Mathematische Operationen mit Attributen
CADmium am 06.07.2004 um 15:31 Uhr (0)
ich dachte eher an das Lisp... sollte dann(ungetestet) so ähnlich aussehen : (defun Rechne-Schachttiefe ( INSERT / OBJEKTDATEN TIEFE) (if (and(=(type INSERT) ENAME) (=(cdr(assoc 0 (setq OBJEKTDATEN (entget INSERT)))) INSERT ) ) (progn (if (assoc 66 OBJEKTDATEN) (progn (while (/= (cdr (assoc 0 OBJEKTDATEN)) SEQEND ) (setq OBJEKTDATEN (entget (entnext (cdr (assoc -1 OBJEKTDATEN))))) (if (= (cdr (assoc 0 OBJEKTDATEN)) AT ...
|
| In das Form Rund um Autocad wechseln |
|
Lisp : Mit Lisp externes Programm starten
CADmium am 10.10.2008 um 09:06 Uhr (0)
einen Befehl ersetzen geht so(command "_undefine" "_close") ;; Befehl "löschen"(defun c:_close() ;; Befehl neu definieren (startapp "notepad") ;; z.b. Notpad atarten)(defun c:schliessen() (startapp "notepad")).. jetzt gibts den Befehl nicht mehr ( außer als _.close)(rückgängig gehts mit _redefine)besser ist jedoch der Aufruf in einem Reaktor, der dann gestartet wird , wenn die Zeichnung geschlossen werden soll.. das ist aber etwas tiefgehender und nicht unbedingt was für Anfänger ..----------- ...
|
| In das Form Lisp wechseln |
|
Rund um AutoCAD : AutoCAD Fensterposition zurücksetzen
CADmium am 17.10.2012 um 08:41 Uhr (0)
Acad speichert die Koordianten der (meisten) Dialoge in der Registy.Folgender Lisp-Code setzt die Koordinaten auf 0,0 , d.h. links oben.(defun C:_DIALOGPOSITIONS(/ KEY) (vl-load-com) (setq KEY(strcat "HKEY_CURRENT_USER" (vlax-product-key) "PROFILES" (vla-get-ActiveProfile (vla-get-PROFILES(vla-get-preferences(vlax-get-acad-object))) ) "Dialogs" ) ) (If(setq DIALOGS(vl-registry-descend ...
|
| In das Form Rund um AutoCAD wechseln |
|
Lisp : gruppenfilter per lisp ändern
CADmium am 10.04.2013 um 14:13 Uhr (0)
Der Code ermittlt die LAYERCollektion des aktuellen Objekts , davon das Erweiterte Dictionarie , welches nach dem dictionary "AcLyDictionary" durchsucht wird. Wird dieses gefunden, werden alle Objekte desselben durchlaufen , gegeuckt, ob diese XRECORDS mit dem Schlüssel "ACLYLAYERGROUP" sind und von denen dann der Name ermittelt..Du kannst auch dictsearch verwenden .... und dann durchlaufen des Dicts bis (=(car X)3) , (cdr (360 . ...)) ist dann der Xrecord .. auf den wieder ein entget usw..... Den Code klö ...
|
| In das Form Lisp wechseln |
|
Lisp : alle Layer sperren, einen entsperren
CADmium am 01.07.2015 um 10:01 Uhr (1)
Lisp laden .. Befehl mit ALLEAUSSEREINEN aufrufen ... Layer eingeben von Objekt: Layernamen eingeben oder für Objektwahl einfach ENTER.. dann Objekt wählen ..... Programm liest Layer vom Objekt ausDann werden alle Layer durchlaufen und gesperrt bis auf den gewählten, der wird entsperrt .....läuft ohne Probs.kann mir nicht vorstellen, dass sich daran in 2016 was geändert hat .. die adeskler schrauben da eher an Befehlen und ihren Optionen rum------------------Also ich finde Unities gut ... und andere siche ...
|
| In das Form Lisp wechseln |
|
Rund um Autocad : Optionen mittels Script-Datei
CADmium am 14.01.2004 um 14:23 Uhr (0)
Wenn die ACAD-Installation auf den Rechnern relativ identisch ist,d.h. z.B. überall im gleichen Verzeichnis liegt gibts auch die Möglichkeit über den Registrierungseditor den ACAD-schlüssel zu exportieren und die Reg-Datei auf allen Rechnern wieder einzulesen. Eine Erweiterung von Holgers Lisp könnte auch die anderen Einstellungen unter ACAD-Optionen auslesen - nicht nur die Systemvariablen.... aber das geht noch ein bißchen anders und ist aufwendiger. Und wie ist es mit dem Einsatz eines einheitlichen Nu ...
|
| In das Form Rund um Autocad wechseln |
|
AutoCAD Mechanical : Masslinie per Icon ausblenden
CADmium am 24.05.2004 um 12:38 Uhr (0)
Mal ein Ansatz zum weiterausbauen : (defun C:EDIT-DIM (/ OBJEKT ) (vl-load-com) (if (and(setq OBJEKT(ssname(ssget _:S ((0 . DIMENSION )))0)) (setq OBJEKT(cond ((=(type OBJEKT) VLA-object) OBJEKT) ((=(type OBJEKT) Ename) (vlax-ename- vla-object OBJEKT)) ) ) ) (progn (initget J N ) (if (=(getkword
Wirklich ? [J]a/[N]ein: N ) J ) (progn (vlax-put-propert ...
|
| In das Form AutoCAD Mechanical wechseln |
|
AutoCAD Mechanical : automatische Blockerstellung
CADmium am 23.08.2007 um 08:33 Uhr (0)
Aha, .. dann wie gesagt würde ich ein SCRIPT erstellen (mittels SCRIPGENERATOR) , das ein Lisp aufruft, welches die Layouts durchläuft und alle Objekte je Layout in einen Block packt und von diesem auf dem jeweiligen Layout ne Referenz erzeugt. Am Ende wird die Zeichnung gespeichert. Für ähnliche Aufgabenstellungen habe ich z.B. schon Programme geschrieben, wo der Anwender ein Verzeichnis wählt, und dann alle gefundenen DWGs (inkl. Unterverz.) entsprechend gewandelt wurden...Um evtl. Fehler aufzuspüren wir ...
|
| In das Form AutoCAD Mechanical wechseln |
|
Rund um Autocad : Punkte mit Z-Koordinaten beschriften
CADmium am 07.11.2006 um 19:37 Uhr (0)
die geposteten Abschnitte ertellen einen Text in der Zeichnung.... ..wenn du dich in Lisp einarbeiten willst, hilft dir Mapcars Tutorial sicher weiter .. und hiereine DXF-Gruppencodereferenzansonsten : (ungetestet zusammengeschrieben)Code:(defun c:zbs () (setq tgr (getreal "
Textgrösse: ")) (setq as (ssget ((0 . "POINT")))) (setq zaehl 0) (setq en (ssname as zaehl)) (while en (setq pkt (cdr (assoc 10 (entget en)))) (setq zw (nth 2 pkt)) (setq ztw (strcat "z: " (rtos zw 2 4))) (entmake ...
|
| In das Form Rund um Autocad wechseln |
|
Rund um AutoCAD : Beim start ausfüllen von Blockattributen?
CADmium am 29.07.2008 um 15:49 Uhr (0)
Zitat:Original erstellt von MacFly8:@CADmium von Lisp habe ich so keine Ahnung wäre das damit machbar?Was muß ich tun? Kann ich den Code einfach in die ACCADDOC.LSP schmeißen? prinzipiell ja, dein Blockname noch für "BLOCKNAME" tauschen Zitat:Original erstellt von MacFly8:Zudem verstehe ich nicht das der Inventor den ACAD Rahmen mit dieser Funktion öffnet nur ACAD selber nicht s. Video?Na Inventor hat eben einen anderen Dialog, der bei sowas gleich aufgerufen wird.------------------ - Thomas -"Bei 99% a ...
|
| In das Form Rund um AutoCAD wechseln |
|
AutoCAD VBA : Polylinien in einzelne Linien aufsplitten
CADmium am 15.02.2011 um 18:10 Uhr (0)
Tja , mit den Daten wird es das reinste Rätselraten, da wir die auch ein Comuter nicht weiterhelfen können.Bei ordentlichen Daten kannst du ein Selectionset aller PLS machen ... da die Attributblöcke, deren Einfügepunkt einen gewissen Abstand zur PL nicht übersteigt einsammeln ... die Attribute auswerten .. und z.b. er Lisp und den vlax-curve-Funktionen die Koordinatentripel bilden. dann zwischen den gesicherten Koordinaten - wie Alfred schon beschrieben hat - die Zwischenwerte Ermitteln und zu guter Letzt ...
|
| In das Form AutoCAD VBA wechseln |
|
AutoCAD Mechanical : CAD - CAM
CADmium am 13.08.2004 um 08:51 Uhr (0)
Hallo Harald! Ich bin auch Konstrukteur im Maschinenbau und verdien mein Geld eben mit konstruieren. Lisp- und ACAD-Programmierung ist eher ein Hobby. Wenn ich was in der Schublade hätte, würd ich schon helfen, aber nebenbei jetzt was zu machen fehlt echt die Zeit und ein wenig auch der Wille, da es sich ja nicht unbedingt um ein allgemeines ACAD-Problem handelt sondern um eine spezielle Anpassung. Aber da das Problem bei euch doch immer besteht - sonst löst es bloß ein anderer - probier doch eine entsprec ...
|
| In das Form AutoCAD Mechanical wechseln |
|
Rund um AutoCAD : Abstände beim versetzen halbieren
CADmium am 11.03.2008 um 13:06 Uhr (0)
Zitat:Original erstellt von Musicus: Ausprobiert.Wollte hier jemandem mit 2006 aufm Rechner zeigen, wie man ne LISP lädt, ich hab die Datei in die Startgruppe gepackt, beim Versuch, sie auszuführen, kam aber nur "unbekannter Befehl", mit einer neuen Zeichnung bzw. nach AutoCAD-Neustart gings dann.[Diese Nachricht wurde von Musicus am 11. Mrz. 2008 editiert.]die Startgruppe wird auch beim Starten (bzw. Laden einer Zeichnung) ausgeführt .. .. man lädt eigentlich per _appload (bzw. Drag&Drop aus dem windows ...
|
| In das Form Rund um AutoCAD wechseln |