coord-transf.2d elements3d elementsnon geo scriptsfunctionscontrol statem.attributesvariousaddons
planarprimitivebasic shapesprismscomplex shapesfrom polylines3d cuttingsolid commandsvarious
BASE BODY COOR EDGE PGON PIPG TEVE VECT VERT
Name
PGON
Syntax
PGONnumber, alignment, status, edge1, edge2, ... edgen
Aufklappen Range
number=0 oder number>2, Typ Integer
alignment≥0, Typ integer
-1 ≤ status ≤ 127, Typ integer
edgei>0, Typ integer
Aufklappen Status Codes
status=-1 oder
status=s1+s2+s3+s4+s5+s6+s7, mit

s1=0 /=1: Polygon ist sichtbar/unsichtbar.
s2=0 /=2: Polygon planer/gekrümmter Oberfläche.
s5=16: Konkaves Polygon.
s6=32: Polygon mit Durchdringungen.
s7=64: Durchdringungen sind konvex (nur mit s6=32).

Bis ArchiCAD® 10 nicht implementiert:
s3=4: Erstes Polygon mit einer gekrümmten Oberfläche (nur mit s2=2).
s4=8: Letztes Polygon mit einer gekrümmten Oberfläche (nur mit s2=2)
Aufklappen Description
Erzeugt eine Polygonfläche aus number zuvor mit EDGE definierten Kanten. Die Kanten müssen in einer Ebene liegen und der explizit zugewiesene Normalenvektor (siehe VECT) alignment senkrecht zu dieser Fläche sein. Die Referenzierung auf die Kanten- und den Normalenvektor (edgei) erfolgt über den Index ihrer Position im Skript (siehe BASE).

Da die Kanten als Vektoren definiert werden, ist deren Richtung zu beachten. Kantenvektoren mit negativem Vorzeichen werden in zu ihrer Definition entgegengesetzter Richtung interpretiert. Jeder Vektor muss also am Ausgangspunkt des nächsten Vektors im Polygonzug enden.

Der Normalenvektor, der die Richtung der Körperaußenseite angibt, kann automatisch bestimmt werden, indem der Index (alignment) mit 0 vorgegeben wird.

Mit status gibt Polygonart vor, mit status=-1 kann sie auch automatisch ermittelt werden.
Aufklappen Example
VERT 0,0,0 ! Ecke 1
VERT 1,0,0 ! Ecke 2
VERT 0.5,1*SIN(60),0 ! Ecke 3

EDGE 1,2, -1,-1, 0 ! Kante 1
EDGE 2,3, -1,-1, 0 ! Kante 2
EDGE 3,1, -1,-1, 0 ! Kante 3

PGON 3, 0, 0, 1,2, 3 ! Fläche

BODY 1 !Dreieck darstellen
Aufklappen Specialities
number=0 stellt einen Sonderfall dar. Nur welchen?
Aufklappen Attributes
MATERIAL
Aufklappen Context
3D-Skript
Aufklappen Tips and Tricks
Es sollte nach Möglichkeit ein Normalenvektor zuvor festgelegt werden, da es sonst zu Unstimmigkeiten im Körper kommen kann. Im Beispiel des Tetraeders (siehe BODY-Befehl) würde automatisch der Normalenvektor der Bodenplatte nach innen orientiert, was zu fehlerhafter Darstellung führt.
Aufklappen References
GDL-Handbuch 4.5 (DE) p. 78
GDL-Handbuch 5.0 (DE) p. 89
GDL-Handbuch 6.0 (DE) p. 106
GDL-Handbuch 6.5 (DE) p. 101
GDL-Handbuch 7.0 (DE) p. 101
GDL-Handbuch 8.0 (DE) p. 70
GDL-Handbuch 8.1 (DE) p. 71
GDL-Handbuch 9.0 (DE) p. 99
GDL-Handbuch 10.0 (DE) p. 95
GDL-Handbuch 11.0 (DE) p. 99
GDL Reference Guide 9.0 (INT) p. 96
GDL Reference Guide 10.0 (INT) p. 95
GDL Reference Guide 11.0 (INT) p. 95
GDL Cookbook 3.1 (EN/DE) p. 2.56
 





Grundriss Tetraeder


Isometrie mit Indizes:
Rot=Ecken, Blau=Kanten (Vektoren), Gelb=Flächen


Fläche 1

Fläche 2

Fläche 3

Fläche 4

separates Web Control Fenster Download Objekt

Aufklappen GDL WebControl