Support Forum

[Question] Fläche messen und ausgeben [Solved]


Hallo zusammen!
Ich finde mal wieder nichts entsprechendes. Gibt es einen node um Flächen, z.B. aus 3DPolygonen, zu ermitteln? Und kann ich diesen Wert dann ausgeben?
Wäre froh wenn jemand einen Tipp hätte.
Gruss Wolfgang

Show solution Hide solution

Hallo Mario,
Super Infos. Klappt perfekt.
Danke an Alle
Gruß
Wolfgang

1 - 10 (19)

Hallo Wolfgang,

also ich konnte jetzt auch keinen Node zum berechnen der Fläche eines 3DPolygons finden...glaub der Node fehlt einfach noch.
(Ist mir aber, ehrlich gesagt, bis jetzt auch gar nicht aufgefallen, da ich bisher immer nur 3D-Objekte mit VS erstellt habe).

Wird dir wahrscheinlich nicht viel nützen wenn du das PythonPart direkt auswerten bzw. die Fläche als Attribut auf das PythonPart schreiben willst, aber:
Das Einzige, dass mir momentan einfallen würde um die Fläche des 3D-Polygons zu erhalten, wäre das PythonPart
mit dem Allplan befehlt "Makro auflösen" in seine einzelnen Grundobjekte zu zerlegen. Dann solltest du zumindest die Fläche des jeweiligen Objektes (z.B. der 3D-Fläche) in den Objektattributen vorfinden.
Solltest dir aber vorher eine Kopie des PP machen, weil nach dem Auflösen ist es...weg.

LG
Mario

Hallo Mario,
Ja mit 2D bin ich da natürlich nicht ganz typisch unterwegs. Wie könnte ich die Fragestellung für das Volumen eines Körpers lösen. Hast du diesbezüglich eine Idee?
LG Wolfgang

Was eventuell helfen könnte, wäre die Gaußsche Flächenformel.
Hier ein Skript dazu.

Gruß Felix
Allplan 2024-0-1

Attachments (3)

Type: image/png
Downloaded 154 times
Size: 137,35 KiB
Type: text/xml
Downloaded 503 times
Size: 7,82 KiB
Type: text/xml
Downloaded 474 times
Size: 233,00 B

Quote by WolfgangPoiger
Hallo Mario,

Ja mit 2D bin ich da natürlich nicht ganz typisch unterwegs. Wie könnte ich die Fragestellung für das Volumen eines Körpers lösen. Hast du diesbezüglich eine Idee?

LG Wolfgang

Hallo Wolfgang,

um das Volumen eines Körpers in VS zu ermitteln, solltest du dir mal den Node CalculateMass ansehen.
Der gibt dir das Volumen direkt aus.

LG Mario

Hallo Felix und Mario,
sowohl die Berechnung als auch der Ansatz mit der Erzeugung eines Körpers und Auswertung des Volumens funktionieren einwandfrei. Danke euch dafür. Wenn ich noch eine Frage anhängen darf. Kann ich die Ausgabewerte noch irgendwie auf 2 Kommastellen runden?
Wäre super wenn das auch noch klappen würde.
Danke und Gruß
Wolfgang

Hallo Wolfgang,

dazu solltest du mal einen Blick hier rein werfen:

https://connect.allplan.com/at/forum/themen/topic/topics/cad-visual-scripting-1/fliesskommazahlen-runden.html

Ich persönlich bevorzuge den Node FunctionX.
Beim Inputport von X deine Zahl verbinden.
Und bei Function trägst du "round(x,2)" ein. (-> Rundet den Wert x auf 2 Nachkommastellen)

LG
Mario

Hallo Mario,
Super Infos. Klappt perfekt.
Danke an Alle
Gruß
Wolfgang

Kleine Info noch am Rande:
Das VS-Script mit der "Gaußschen Flächenformel" von f_hoeser liefert die Fläche des in die X-Y-Ebene projizierten 3D-Polygons! (Weil: Die Z-Koordinaten der Polygonpunkte werden nicht benutzt!)
Sprich: Wenn das 3D-Polygon "senkrecht" zur dieser Ebene steht, wird die Berechnung 0.0 liefern.

CalculateMass ist das richtige Node für diesen Zweck!

Danke Nemo, dass du das anmerkst.

Bei der eingangs gestellten Frage bin ich davon ausgegangen, dass es sich nur um die Fläche eines planen Polygons handeln kann. Weil ein 3D-Polygon nicht zwangsläufig plan sein muss.

Seine Scheitelpunkte können frei im Raum platziert werden. Das führt dazu, dass es meist nicht die eine plane Ebene gibt auf der alle Scheitelpunkte zu liegen kommen. Um eine 3D-Fläche in einem solchen Polygon aufzuspannen, gibt es mehrere Möglichkeiten (trianguliert, NURBS, ...). Dem zufolge ist der daraus abzuleitende Flächeninhalt mathematisch nicht eindeutig. Soll heißen, die eine Fläche eines 3D-Polygons gibt es nicht. (Ich hoffe ich erkläre es richtig)

CalculateMass berechnet Volumen und Oberfläche.

Gruß Felix
Allplan 2024-0-1

1 - 10 (19)

https://connect.allplan.com/ uses cookies  -  More information

Accept