Beside standard C++ types and Windows-specific types, programming for ZModeler involves using of ZModeler native types. This have been required to make ZModeler SDK mostly independ part and avoid using of different techniques. For example, ZModeler's native string is defined as class ZString and progammers that used char*, CString, std::string and other types have to use supplied native types when dealing with ZModeler SDK.
Native types: | |
---|---|
ZRESULT | Return-value of interface methods. Very similar to Windows HRESULT. |
ZAngle | Native angular-data type. |
ZBlackBox | Flexible arguments container to pass into routines. Can store several arguments of different types: from BYTE upto interfaces. |
ZBoundary | Native boundary object type. |
ZColor | Color representation type. Includes color management routines and operators. |
ZEntityBase | Base type for visual scene elements. |
ZLine | 2D on-screen line segment type. Line is presented with a base point and directional target vector. |
ZLine3D | 3D line (segment, ray, line) type. Line is presented with start and end-points (in case of ray or infinite line endpoint just indicates a direction). |
ZMatrix | Four by four matrix. |
ZPlane | Plane in 3D space. |
ZPoint | 2D on-screen point type. |
ZPoint2D | 2D floating-point type. |
ZPoint3D | Point in 3D-space with floating-point coordinates type. |
ZPoly | Polygon base class. |
ZPolyBuf | Polygon buffer class. |
ZQuatern | 4D vector or axis-angle rotation Quaternion. |
ZRect | On-screen rectangular area type. |
ZString | String data type with internal dynamic buffer and wide character support. |
ZVector | Vector in 3D-space. |
ZVertex | Vertex prototype class. |
ZVertexBuf | Vertex buffer class. |