Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Lisp
  Volumenkörper Geometriedaten auslesen

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte
Autor Thema:  Volumenkörper Geometriedaten auslesen (2749 mal gelesen)
mldesign
Mitglied


Sehen Sie sich das Profil von mldesign an!   Senden Sie eine Private Message an mldesign  Schreiben Sie einen Gästebucheintrag für mldesign

Beiträge: 7
Registriert: 03.06.2014

erstellt am: 03. Jun. 2014 11:35    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo kann mir jemand einen Lisp Code nennen wie ich aus einem Volumenkörper die Geometriedaten auslesen kann (z.B. Länge)

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

CADmium
Moderator
Maschinenbaukonstrukteur




Sehen Sie sich das Profil von CADmium an!   Senden Sie eine Private Message an CADmium  Schreiben Sie einen Gästebucheintrag für CADmium

Beiträge: 13508
Registriert: 30.11.2003

.

erstellt am: 03. Jun. 2014 13:43    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für mldesign 10 Unities + Antwort hilfreich

Hmmm ... Vorab: Was ist bei dir die Länge ? Die Ausdehnung in X, Y oder Z oder der Abstand der Durchstoßpunkte eines ganz anderen Vektors durch die Körperoberfläche?

.. aber ich denke bei den 3D-Sachen wird das sowieso nicht so einfach.

------------------
Also ich finde Unities gut ... und andere sicher auch
---------------------------------------
  - Thomas -          
"Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."

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


Sehen Sie sich das Profil von cadwomen an!   Senden Sie eine Private Message an cadwomen  Schreiben Sie einen Gästebucheintrag für cadwomen

Beiträge: 2966
Registriert: 26.08.2002

ACAD R11 - 2018.1.2
(Plant3D)
AVIS
ACAD LT 2013- 2020
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: 03. Jun. 2014 13:49    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für mldesign 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von mldesign:
Hallo kann mir jemand einen Lisp Code nennen wie ich aus einem Volumenkörper die Geometriedaten auslesen kann (z.B. Länge)

mhhh von welcher Art ist der Körper ? Wer sagt was die "Länge" ist ?

cu cw

------------------
Also ich finde Unities gut ... und andere sicher auch
------------------------------------------------
cadwomen™
Plant ist wie Öl suchen, je tiefer man bohrt desto mehr kommt ans Tageslicht

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mldesign
Mitglied


Sehen Sie sich das Profil von mldesign an!   Senden Sie eine Private Message an mldesign  Schreiben Sie einen Gästebucheintrag für mldesign

Beiträge: 7
Registriert: 03.06.2014

erstellt am: 03. Jun. 2014 13:54    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Bei den Volumenkörper gibt es z.B. bei einem Quater, in den Eigenschaften eine Länge, Breite und Höhe. Bei extrudierten Objekten z.B. gibt es nur eine Höhe. Mir wäre schon geholfen wenn ich diese Daten mit Angabe des Parameters auslesen kann.

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


Sehen Sie sich das Profil von cadwomen an!   Senden Sie eine Private Message an cadwomen  Schreiben Sie einen Gästebucheintrag für cadwomen

Beiträge: 2966
Registriert: 26.08.2002

ACAD R11 - 2018.1.2
(Plant3D)
AVIS
ACAD LT 2013- 2020
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: 03. Jun. 2014 14:02    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für mldesign 10 Unities + Antwort hilfreich

dann kommen wir der Sache schon näher aber

siehe "Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."

und dann noch .. welche Software ?

cw

------------------
Also ich finde Unities gut ... und andere sicher auch
------------------------------------------------
cadwomen™
Plant ist wie Öl suchen, je tiefer man bohrt desto mehr kommt ans Tageslicht

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mldesign
Mitglied


Sehen Sie sich das Profil von mldesign an!   Senden Sie eine Private Message an mldesign  Schreiben Sie einen Gästebucheintrag für mldesign

Beiträge: 7
Registriert: 03.06.2014

erstellt am: 03. Jun. 2014 14:14    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Sorry ich bin neu hier und gelobe Besserung :-). Es handelt sich um AutoCAD 2015.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

CADmium
Moderator
Maschinenbaukonstrukteur




Sehen Sie sich das Profil von CADmium an!   Senden Sie eine Private Message an CADmium  Schreiben Sie einen Gästebucheintrag für CADmium

Beiträge: 13508
Registriert: 30.11.2003

.

erstellt am: 03. Jun. 2014 14:40    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für mldesign 10 Unities + Antwort hilfreich

.. vorab .. soweit mir in Erinnerung ist, speichert ACAD nicht den Befehlsbaum der zum Erstellen des 3D-Körpers durchgeführt wurde, sondern nur den Geometriekörper. Wenn du jetzt ne Fläche in irgendeiner Beliebigen Ebene  hast, diese mal mit 100 Extrudierst und dann noch mal eine negative Extrusion von 50 machst .... hast du einen Körper der 50 "hoch" ist ..... der Körper kann aber auch noch ganz anders entstanden sein .... du verstehst, auf was ich hinauswill?

------------------
Also ich finde Unities gut ... und andere sicher auch
---------------------------------------
  - Thomas -          
"Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mldesign
Mitglied


Sehen Sie sich das Profil von mldesign an!   Senden Sie eine Private Message an mldesign  Schreiben Sie einen Gästebucheintrag für mldesign

Beiträge: 7
Registriert: 03.06.2014

erstellt am: 03. Jun. 2014 14:59    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Ne eigentlich weiß ich nicht worauf Du hinauswillst. Es müsste doch eine einfache Funktion geben um auf die Properties der Volumenkörper zugreifen zu können. Ich will die Daten auslesen und in eine Datenbank übertragen.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

CADmium
Moderator
Maschinenbaukonstrukteur




Sehen Sie sich das Profil von CADmium an!   Senden Sie eine Private Message an CADmium  Schreiben Sie einen Gästebucheintrag für CADmium

Beiträge: 13508
Registriert: 30.11.2003

.

erstellt am: 03. Jun. 2014 15:13    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für mldesign 10 Unities + Antwort hilfreich

Tja .... so ähnlich dachten die Entwickler von Deep Thought auch ... 

------------------
Also ich finde Unities gut ... und andere sicher auch
---------------------------------------
  - Thomas -          
"Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

CADwiesel
Moderator
CAD4FM UG




Sehen Sie sich das Profil von CADwiesel an!   Senden Sie eine Private Message an CADwiesel  Schreiben Sie einen Gästebucheintrag für CADwiesel

Beiträge: 1968
Registriert: 05.09.2000

AutoCAD, Bricscad
Wir machen das Mögliche unmöglich

erstellt am: 03. Jun. 2014 15:35    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für mldesign 10 Unities + Antwort hilfreich

(vlax-dump-object(vlax-ename->vla-object(car(entsel)))'T)
damit schaust du die die Eigenschaften deines gewählten Objektes an
und mit (vla-get[Property] kannst du deine Werte auslesen

------------------
Gruß
CADwiesel
Besucht uns im CHAT

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

CADmium
Moderator
Maschinenbaukonstrukteur




Sehen Sie sich das Profil von CADmium an!   Senden Sie eine Private Message an CADmium  Schreiben Sie einen Gästebucheintrag für CADmium

Beiträge: 13508
Registriert: 30.11.2003

.

erstellt am: 03. Jun. 2014 15:42    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für mldesign 10 Unities + Antwort hilfreich

@Wiesel .... jo .. da bekommst du Volumen , Schwerpunkt und Trägheitsmomente(um die WKoordinatenachsen) ... also Eigenschaften eines Körpers .. aber keine Länge Dicke oder sonstwas, weil das eben keine allgemeingültigen Eigenschaften eines Körpers sind .... ( möglich wäre maximal sowas wie "maximale Ausdehnung in X-Richtung" .. aber das ist nicht einfach so via Lisp auszulesen)

------------------
Also ich finde Unities gut ... und andere sicher auch
---------------------------------------
  - Thomas -          
"Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

CADwiesel
Moderator
CAD4FM UG




Sehen Sie sich das Profil von CADwiesel an!   Senden Sie eine Private Message an CADwiesel  Schreiben Sie einen Gästebucheintrag für CADwiesel

Beiträge: 1968
Registriert: 05.09.2000

AutoCAD, Bricscad
Wir machen das Mögliche unmöglich

erstellt am: 03. Jun. 2014 16:16    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für mldesign 10 Unities + Antwort hilfreich

Irgendwo mussde ja mal anfangen. Vielleicht bringt das den Frager ja auch mal zum Nachdenken über die Möglichkeiten
Wobei sein Bedürfnis wahrscheinlich schon über die BoundingBox Methode zu Befriedigen zu sein dürfte.

------------------
Gruß
CADwiesel
Besucht uns im CHAT

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

archtools
Mitglied



Sehen Sie sich das Profil von archtools an!   Senden Sie eine Private Message an archtools  Schreiben Sie einen Gästebucheintrag für archtools

Beiträge: 823
Registriert: 09.10.2004

Entwickler für AutoCAD, BricsCAD u.a., alle Systeme

erstellt am: 04. Jun. 2014 11:37    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für mldesign 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von mldesign:
Hallo kann mir jemand einen Lisp Code nennen wie ich aus einem Volumenkörper die Geometriedaten auslesen kann (z.B. Länge)

Was bedeutet bei einem beliebigen Körper der Begriff "Länge"? Seine Breite entlang der X-Achse?

Du wirst einige Daten direkt auslesen können, Du kannst aber vermutlich in den einzelnen Koordinatenebenen die Umgrenzungsbox (probier' mal vla(x?)-boundary oder ähnlich) ermitteln.

Die echten ACIS-Geometriedaten des Körpers aber sind als String im Gruppencode-1-Entitydaten verschlüsselt. Der Schlüssel ist aber nur eine extrem simple XOR-Verknüpfung jedes Zeichens mit dem Wert 95.

Mit unten stehendem Code kannst Du die ACIS-Daten auslesen und entschlüsseln. Wenn Du einen Weg findest, sie richtig zu interpretieren und zu bearbeiten, kannst Du die geänderten Daten auch wieder verschlüsseln und anwenden:

Code:

(defun acis-string (en / tok result)
  (foreach tok (entget en)
    (if (= 1 (car tok))
      (setq result (cons (cdr tok) result))
    )
  )
  (apply 'strcat result)
)

(defun acis-decrypt (string / temp i len)
  (setq len (strlen string))
  (setq i 0)
  (setq temp "")
  (while (< i len)
    (setq i (+ i 1))
    (setq c (ascii (substr string i 1)))
    (if (/= c 32)
      (setq temp (strcat temp (chr (boole 6 95 c))))
; else
      (setq temp (strcat temp " "))
    )
  )
)

(defun acis-encrypt (st / ln n c st1)
  (setq st1 ""
n  (strlen st)
  )
  (while (> n 0)
    (setq c (ascii (substr st n 1)))
    (setq st1
  (strcat
    (cond
      ((= c 32) " ")
      ((= c 86) "I")
      ((chr (boole 6 c 95)))
    )
    st1
  )
    )
    (setq n (1- n))
  )
  st1
)


Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

archtools
Mitglied



Sehen Sie sich das Profil von archtools an!   Senden Sie eine Private Message an archtools  Schreiben Sie einen Gästebucheintrag für archtools

Beiträge: 823
Registriert: 09.10.2004

Entwickler für AutoCAD, BricsCAD u.a., alle Systeme

erstellt am: 04. Jun. 2014 12:03    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für mldesign 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von archtools:

Wenn Du einen Weg findest, sie richtig zu interpretieren und zu bearbeiten, kannst Du die geänderten Daten auch wieder verschlüsseln und anwenden

Als Hilfestellung dazu:

ACIS ist der Volumenmodellierer in AutoCAD und BricsCAD. ACIS ist ein B-Rep-Modellierer, B-Rep steht für Boundary Representation. Hier werden Körper durch ihre begrenzenden Flächen beschrieben. In ACIS dürfen die begrenzenden Flächen NURBS sein (non-uniform rational B-Splines). NURBS werden im CAD-Umfeld gerne als "Freiformflächen" bezeichnet, weil sich damit grundsätzlich jede Form mathematisch beschreiben lässt.

Übrigens: in AutoCAD 12 (nicht 2012!) war in AutoCAD ein CSG-Modellierer integriert. CSG steht für Constructive Solid Geometry. Hier wird in einer Baumstruktur die Entwicklungsgeschichte eines aus ursprünglich primitiven Grundkörpern zusammengesetzten Volumenkörpers beschrieben. Der Vorteil ist, dass hier nachträglich noch jeder Parameter auch längst durch Subtraktion verschwundener Körper ändern lässt. Nachteil ist der hohe Speicher- und Rechenbedarf.

http://de.wikipedia.org/wiki/Boundary_Representation
http://de.wikipedia.org/wiki/NURBS
http://de.wikipedia.org/wiki/Constructive_Solid_Geometry

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

wronzky
Ehrenmitglied V.I.P. h.c.
CAD-Dienstleistungen für Architekten



Sehen Sie sich das Profil von wronzky an!   Senden Sie eine Private Message an wronzky  Schreiben Sie einen Gästebucheintrag für wronzky

Beiträge: 2154
Registriert: 02.05.2005

CAD:
AutoCAD 2.6 bis 2014
ADT 2005 - 2014
Arcibem
System:
Windows 2000, XP, NO VISTA
Internet-Startseite:
http://www.archi.de

erstellt am: 04. Jun. 2014 13:26    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für mldesign 10 Unities + Antwort hilfreich

also wenn es Dir nur um Grundkörper geht (Primitive), dann könntest Du mit dieser Zeile
Code:
(entget (cdr (assoc 360 (entget (cdr (assoc 360 (entget (cdr (assoc 350 (entget (car (entsel "\nVolumenkörper auswählen: "))))))))))))
weiterexperimentieren.

Grüsse, Henning

------------------
Henning Jesse
VoxelManufaktur
Computer-Dienstleistungen für Architekten und Ingenieure

  http://www.voxelman.de

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mldesign
Mitglied


Sehen Sie sich das Profil von mldesign an!   Senden Sie eine Private Message an mldesign  Schreiben Sie einen Gästebucheintrag für mldesign

Beiträge: 7
Registriert: 03.06.2014

erstellt am: 04. Jun. 2014 15:04    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo wronzky,

vielen Dank! Damit komme ich auf jeden Fall erst mal weiter. So einfach kann es sein.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz