API_​Component3D

General representation of a 3D component.

    typedef union {
        API_3D_Head      header;
        API_BodyType     body;
        API_PgonType     pgon;
        API_PedgType     pedg;
        API_EdgeType     edge;
        API_VertType     vert;
        API_VectType     vect;
        API_LghtType     lght;
        API_UmatType     umat;
    } API_Component3D;

 

Members

header
The common header which specify the type and database index of the given component.
body
Parameters of a body type component.
pgon
Parameters of a polygon type component.
pedg
Edge reference. Negative value means opposite direction, zero index identifies a new hole in a polygon
edge
Parameters of an edge type component.
vert
Parameters of a vertex.
vect
Parameters of a vector type component.
lght
Parameters of a light type component.
umat
Parameters of a surface material.

Remarks

This structure is used to work with 3D components of the actual database. The definition of a 3D component is described in this structure, which is in fact a union of all component types.

Before you try to understand how the 3D model corresponds to the API structures, please read carefully the Primitive Elements chapter in the GDL Reference Manual.

The 3D geometry itself is described by the API_PgonType, API_PedgType, API_EdgeType, API_VertType and API_VectType structures.

Negative index referring to an edge or a normal vector indicates that the component should be interpreted reversed. In this case require the component using the absolute value of the index, but consider the edge directing from the second vertex to the first one, or when retrieving a normal vector, invert its coordinates.

The 3D representation also owns a common pool of the surface materials. The polygon instances of the geometry description refer to these materials by indices. One surface definition is described by the API_UmatType structure. Surface materials may come from two sources. The list of materials contains all the global material attributes which are referenced by any polygon of the 3D geometry. Materials may be defined in GDL scripts also.

Elements placed with the light tool on the floorplan may contain light emissions, defined via GDL scripts. All of the light sources present in the 3D geometry are described with the API_LghtType structure.

 

Requirements

Version: API 1.3 or later
Header: APIdefs_3D.h

 

See Also

API_3D_Head,
API_BodyType, API_PgonType, API_PedgType, API_EdgeType, API_VertType, API_VectType, API_LghtType, API_UmatType,
3D Manager, API Types