Representation of a 3D body.
typedef struct { API_3D_Head head; API_Elem_Head parent; Int32 status; short color; short filler_0[3]; API_AttributeIndex iumat; float xmin; float ymin; float zmin; float xmax; float ymax; float zmax; Int32 nPgon; Int32 nPedg; Int32 nEdge; Int32 nVert; Int32 nVect; Int32 filler_1; API_Tranmat tranmat; } API_BodyType;
Members
- head
- Header information of this component. This specifies the type and database index.
- parent
- The floorplan element the body has been converted from.
- status
- The properties of the body.
- color
- Refers to the default color of the body edges.
- iumat
- Refers to the default material of the body polygons.
- xmin, ymin, zmin, xmax, ymax, zmax
- The six coordinate data of the body’s bounding box.
- nPgon
- Number of polygons in the body.
- nPedg
- Number of edge references in the body.
- nEdge
- Number of edges in the body.
- nVert
- Number of vertices in the body.
- nVect
- Number of normal vectors in the body.
- tranmat
- The base transformation matrix.
Remarks
The 3D representation of a particular element is based on API_BodyType
structure. One element may hold one or more bodies to describe the 3D geometry. Generally a body is built up from a number of vertices, edges, polygons and normal vectors. This data structure gives you the number of the internal components as well as some status bits, surface properties and a global transformation matrix. You also get a reference to the parent element through an API_Elem_Head structure.
You can get a component of a body, just after you call ACAPI_3D_GetComponent with the appropriate body component. Then you can obtain edges, pgons, vertices etc. of that body. Use indices from 1 to nPgon
, nPedg
, nEdge
, nVert
or nVect
in parameter of ACAPI_3D_GetComponent function to get a subcomponent.
The status
field specifies some properties of the body. You can use the bitwise-OR operator (|
) to combine any of the following constants:
APIBody_MulRtxt
: more textures are referenced by its materials.APIBody_MulColor
: more than one colors referenced by its edges.APIBody_MulMater
: more than one materials referenced by its polygons.APIBody_Closed
: its geometry is closed.APIBody_Curved
: it has smooth polygons.
Requirements
- Version: API 1.3 or later
- Header: APIdefs_3D.h
See Also
API_3D_Head, API_PgonType, API_PedgType, API_EdgeType, API_VertType, API_VectType, API_Component3D,
API_Elem_Head, API_Tranmat, API_AttributeIndex,
3D Manager, API Types