| | |
 | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| | |
 | NVIDIA RTX PRO 6000 Blackwell Max-Q Workstation Edition, eine Pressemitteilung
|
|
Autor
|
Thema: 3D Block einfügen und skalieren (1275 mal gelesen)
|
rasat Mitglied
 Beiträge: 2 Registriert: 14.04.2014 AutoCad Lisp
|
erstellt am: 14. Apr. 2014 21:11 <-- editieren / zitieren --> Unities abgeben:         
Gibt es die Möglichkeit ein 3D Block mit Lisp ein eine Zeichnung einzufügen und in alle Achsen unterschiedlich zu skalieren. Welchen Befehl mit welchen Parametern ist zu verwenden? " Insert" skaliert nach meinen Erfahrungen nur in der x und y Achse. ------------------ Sat Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CAD-Huebner Ehrenmitglied V.I.P. h.c. Verm.- Ing., ATC-Trainer

 Beiträge: 9812 Registriert: 01.12.2003 AutoCAD 2.5 - 2025, Civil 3D, MAP 3D, ACADM, ACA Inventor Prof. 2025, AIP 4-2025 Win 11
|
erstellt am: 14. Apr. 2014 21:26 <-- editieren / zitieren --> Unities abgeben:          Nur für rasat
Erzeuge einen Block z.B. aus einem Würfel Kantenlänge 1 und nenne ihn "box". Dann sollte das hier funktionieren: a) als einfachen Command Aufruf Code: (command "_insert" "box" "_x" 1 "_y" 2 "_z" 3 '(5.0 6.0 7.0) 0)
b) Echtes Lisp sähe dann so aus Code: (entmake (list (cons 0 "INSERT")(cons 2 "box") (cons 67 0) (cons 410 (getvar "ctab")) (cons 8 (getvar "clayer")) (cons 10 (list 5.0 6.0 7.0)) (cons 41 1.1)(cons 42 2.2)(cons 43 3.3) (cons 50 45.0) ) )
v) In Visual Lisp kann man auch vla-InsertBlock verwenden die Setq sollen die einzelnen Schritte leichter erkennbar machen, die Funktionen können natürlich ohne Variablenzuweisung direkt eingesetzt werden. Code: (setq acad (vlax-get-acad-object)) ;Get AutoCAD application object (setq doc (vla-get-ActiveDocument acad)) ;Get the current document object (setq ms (vla-get-ModelSpace doc)) ;Get the document's Model Space object (setq pt (vlax-make-safearray vlax-vbDouble '(0 . 2))) ;Create a 3 element array to hold the insertion point (setq pt (vlax-safearray-fill pt '(3.0 4.0 5.0))) ;Fill the array with the insertion point XYZ (setq blk (vla-InsertBlock ms pt "box" 1.1 2.2 3.3 33.0)) ;Create a block reference
------------------ Mit freundlichem Gruß Udo Hübner www.CAD-Huebner.de [Diese Nachricht wurde von CAD-Huebner am 14. Apr. 2014 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rasat Mitglied
 Beiträge: 2 Registriert: 14.04.2014 AutoCad Lisp
|
erstellt am: 14. Apr. 2014 22:01 <-- editieren / zitieren --> Unities abgeben:         
|
CAD-Huebner Ehrenmitglied V.I.P. h.c. Verm.- Ing., ATC-Trainer

 Beiträge: 9812 Registriert: 01.12.2003 AutoCAD 2.5 - 2025, Civil 3D, MAP 3D, ACADM, ACA Inventor Prof. 2025, AIP 4-2025 Win 11
|
erstellt am: 15. Apr. 2014 00:18 <-- editieren / zitieren --> Unities abgeben:          Nur für rasat
|

| |
cadffm Moderator 良い精神
       

 Beiträge: 22689 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 15. Apr. 2014 06:38 <-- editieren / zitieren --> Unities abgeben:          Nur für rasat
|