| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Stückliste für 3d Körper (1840 mal gelesen)
|
cad-schreiner Mitglied Moebelkonstrukteur
Beiträge: 10 Registriert: 25.07.2007 Ich setzte Autocad Architecture 2011 Deutsch Version 2.1 als Grundinstalation mit normalem ACAD Profil ein WIN 7 64 BIT
|
erstellt am: 30. Jul. 2009 19:04 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen; in letzter Zeit habe ich immer mehr mit 3d gezeichnet. Nun benötige ich noch Stücklisten von allen 3D-Volumenkörper in der Zeichnung... auch von zusammengesetzten Volumenkörper. Hier möchten wir die Ausgabe der kleinsten kubischen Umhüllung. Wer hat eine Idee? Im Form habe ich bei Stücklisten leider nichts passendes gefunden oder suche ich falsch. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Moderator 良い精神
Beiträge: 21533 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 30. Jul. 2009 19:28 <-- editieren / zitieren --> Unities abgeben: Nur für cad-schreiner
Das Problem ist das eine "einfache" Abfrage nicht die minimale Ausdehnung wiedergibt sondern die Koordinaten (im WKS) welche das Objekt 100%ig umschließen. 1. Kann die Angabe also größer sein (ist nicht die kleinst-mögliche 3D-Kontur und viel "schlimmer" 2. sind es ja Punktangaben im WKS, das Objekt kann also gedreht viel viel kleiner sein wie abgefragt. Es ist also nicht ganz so trivial und nur durch eine annähernde Berechnung möglich "so gut wie möglich" zu bestimmen. ------------------ die alte SUCHfunktion.. - System-Angaben - User:FAQ(Adesk) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADwiesel Moderator CAD4FM UG
Beiträge: 1968 Registriert: 05.09.2000 AutoCAD, Bricscad Wir machen das Mögliche unmöglich
|
erstellt am: 31. Jul. 2009 08:23 <-- editieren / zitieren --> Unities abgeben: Nur für cad-schreiner
|
Emu1989 Mitglied Elektroplaner
Beiträge: 26 Registriert: 10.11.2015 AutoCAD 2015
|
erstellt am: 15. Jun. 2021 10:04 <-- editieren / zitieren --> Unities abgeben: Nur für cad-schreiner
ACHTUNG! Sie antworten auf einen Beitrag der älter als 1 Jahr ist! Tagchen Würde gerne dieses Thema nochmals aufgreifen. Da dies doch schon ein paar Jährchen zurück liegt .. 12 um genau zu sein , erhoffe ich mir, dass es zwischenzeitlich evtl. möglich ist eine Stückliste der 3d-Volumenkörper auszugeben. Wenn ich etwas Zeichne, würde ich gerne nicht alles auseinander nehmen und nachzählen. Folglich wäre eine Liste enorm hilfreich, wie im Bild illustriert. Ich konnte einiges finden im Netz, bin aber nie wirklich auf einen grünen Zweig gekommen. Freue mich über jede Idee. Gruss Emu
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
archtools Mitglied
Beiträge: 823 Registriert: 09.10.2004 Entwickler für AutoCAD, BricsCAD u.a., alle Systeme
|
erstellt am: 15. Jun. 2021 12:02 <-- editieren / zitieren --> Unities abgeben: Nur für cad-schreiner
Zitat: Original erstellt von Emu1989: ACHTUNG! Sie antworten auf einen Beitrag der älter als 1 Jahr ist!Tagchen Würde gerne dieses Thema nochmals aufgreifen. Da dies doch schon ein paar Jährchen zurück liegt .. 12 um genau zu sein , erhoffe ich mir, dass es zwischenzeitlich evtl. möglich ist eine Stückliste der 3d-Volumenkörper auszugeben.
IMO hast Du da falsche Vorstellungen darüber, was ein CAD System kann. Es wird solche Listen über nicht weiter durch Software verwaltete Volumenkörper eher nie geben (eine wirklich kluge KI könnte das in Zukunft vielleicht doch, aber die wird niemand für ein Basis-CADsystem entwickeln), denn es werden an den Volumenkörpern keine Daten verwaltet, nach denen man sie sinnvoll kategorisieren könnte. Den "Sinn" der geometrischen Elemente liefern erst Branchenapplikationen, für die das eben kein 3D-Volumenkörper ist, sondern z.B. ein Stück Holz. Die einzige Möglichkeit dazu wäre die nachträgliche Anbindung von Daten durch den Anwender, also Dich. Du müsstest die nötigen Daten z.B. als XDATA an jedes Element anhängen, und nach diesen Daten kann dann problemlos eine geordnete Stückliste erstellt werden. Branchenspezifische Applikationen, die beliebige geometrische Objekte, also auch 3D-Volumenkörper erzeugen, hängen diese Daten dann auch gleich bei der Erzeugung an die Objekte.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadwomen Ehrenmitglied V.I.P. h.c. Mädchen für fast alles
Beiträge: 2966 Registriert: 26.08.2002 ACAD R11 - 2022 (Plant3D) AVIS ACAD LT 2013- 2021 ZWCAD 2015 Versuch "nun ja" [s]History P3D 2012/(13) SP und Hotfix([/s]<P> Windows 10 / 64 Bit Xeon CPU 3.5GHz 16GB Ram NVIDIA Quadro P2000 3x Dell TV100 88P Monitore
|
erstellt am: 15. Jun. 2021 12:42 <-- editieren / zitieren --> Unities abgeben: Nur für cad-schreiner
Hy ist nicht einfach so, aber deine Tabele past auch nicht zum Bild cu cw ------------------ Also ich finde Unities gut ... und andere sicher auch ------------------------------------------------ cadwomen™ Plant ist nur die Spitze des Berges der da treibt ? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Siegfried Rief Mitglied Lehrer, Architekt
Beiträge: 249 Registriert: 16.11.2011 ACAD 2023, imos iX2017 im Novellnetz Fachschule für Holztechnik Stuttgart
|
erstellt am: 18. Jun. 2021 18:16 <-- editieren / zitieren --> Unities abgeben: Nur für cad-schreiner
Schau dir mal die AVC-Tools aus dem Adesk-Appstore an. Unter vielen anderen für den Möbelbauer interessanten Funktionen gibts auch eine Stückliste. In der Anlage ein Info-Blatt zu einigen der Tools aus meinem Unterricht. Gruß
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Emu1989 Mitglied Elektroplaner
Beiträge: 26 Registriert: 10.11.2015 AutoCAD 2015
|
erstellt am: 21. Jun. 2021 12:44 <-- editieren / zitieren --> Unities abgeben: Nur für cad-schreiner
|
Emu1989 Mitglied Elektroplaner
Beiträge: 26 Registriert: 10.11.2015 AutoCAD 2015
|
erstellt am: 23. Jun. 2021 12:37 <-- editieren / zitieren --> Unities abgeben: Nur für cad-schreiner
Hier noch die Lisp für Leute die dieselbe Funktion benötigen wie ich. Solidkörper und Blöcke dürfen allerdings keine Rotationen enthalten, sprich müssen parallel zu den Achsen verlaufen. Mit Lay von avc ist das sehr gut realisierbar. (defun c:SolidBlocks ( / msp blks objects pt i obj MIP MAP x y z data blk_lst DataTable row col) (or *adoc* (setq *adoc* (vla-get-activedocument (vlax-get-acad-object)))) (setq msp (vla-get-modelspace *adoc*)) (if (and (setq objects (ssget '((0 . "INSERT,3DSOLID")))) (setq pt (getpoint "\nSelect Table Location : ")) ) (progn (repeat (setq i (sslength objects)) (setq obj (vlax-ename->vla-object (ssname objects (setq i (1- i))))) ;; From Dimensions lisp ;; (vla-GetBoundingBox obj 'minpoint 'maxpoint) (setq MIP (vlax-safearray->list minpoint)) (setq MAP (vlax-safearray->list maxpoint)) (setq x (- (car MAP) (car MIP))) (setq y (- (cadr MAP) (cadr MIP))) (setq z (- (caddr MAP) (caddr MIP))) ;; From Dimensions lisp ;; (setq data (list (cond ( (eq "AcDbBlockReference" (setq objname (vla-get-objectname obj))) (vlax-get obj (if (vlax-property-available-p obj 'effectivename ) 'effectivename 'name ) ) ) ( (eq "AcDb3dSolid" objname) "3D Solid")) (rtos x 2 0) (rtos y 2 0) (rtos z 2 0))) (setq blk_lst (if (not (setq f (assoc data blk_lst))) (cons (list data 1) blk_lst) (subst (list data (1+ (cadr f))) f blk_lst))) ) (setq blk_lst (vl-sort blk_lst '(lambda (j k )(< (caar j)(caar k))))) (setq DataTable (vla-addtable msp (vlax-3d-point pt) 2 6 8.5 230)) (vla-put-regeneratetablesuppressed DataTable :vlax-true) (if (= actitlerow (vla-getrowtype DataTable 0)) (vla-DeleteRows DataTable 0 1)) (mapcar '(lambda (y) (vla-settext DataTable 0 (car y) (cadr y)) (vla-setcelltextheight DataTable 0 (car y) 3.00) ) '((0 "")(1 "Object/Block name")(2 "Count")(3 "Length X")(4 "Width X")(5 "High Z")) ) (vla-SetColumnWidth DataTable 0 15.0) (setq col 0) (repeat 5 (vla-SetColumnWidth DataTable (Setq col (1+ col)) 42.00) ) (vla-SetRowHeight DataTable 0 8.5) (vla-InsertRowsAndInherit DataTable 1 0 (length blk_lst)) (setq row 1) (foreach itm blk_lst (setq objData (Car itm)) (mapcar '(lambda (d n) (vla-settext DataTable row n d)) (append (list (itoa row)(car objData)(itoa (cadr itm)) )(cdr objData)) '(0 1 2 3 4 5)) (setq row (1+ row)) ) (vla-put-regeneratetablesuppressed DataTable :vlax-false) ) ) (princ) ) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |