Represents a zone stamp.
typedef struct { API_Elem_Head head; short pen; API_AttributeIndex catInd; bool useStampPens; bool manual; bool refLineFlag; bool show_found_poly; char filler_1[16]; GS::uchar_t roomName [API_UniLongNameLen]; GS::uchar_t roomNoStr [32]; double roomBaseLev; double roomHeight; double roomTopOffset; double roomFlThick; double roomLSize; double reducePercent; API_AttributeIndex material; Int32 filler_2[2]; double stampAngle; bool fixedAngle; bool oneMat; short floorFillPen; API_AttributeIndex floorFillInd; short floorFillBGPen; short floorContLPen; API_AttributeIndex floorContLType; bool useContourLine; bool useLocalOrigo; bool use3DHatching; bool useFloorFill; Int32 libInd; API_LinkToSettings linkToSettings; short relativeTopStory; short filler_3[3]; API_Polygon poly; API_Coord pos; API_Coord refPos; API_Coord locOrigo; double fillAngle; API_Polygon refPoly; API_Guid stampGuid; } API_ZoneType;
Members
- head
- General element header.
- pen
- Pen attribute index for the zone stamp. Used only if
useStampPens
isfalse
. - catInd
- Index of the actual zone category.
- useStampPens
- Draw with a single pen (
false
) or use the pens defined in the zone category library part (true
)? - manual
- Manually created zone; all edges static, no reference point (
refPos
). - refLineFlag
- Surrounded by walls’ reference lines, not side lines.
- show_found_poly
- If
true
, then Archicad uses the reference line of the walls surrounding the zone for calculations; otherwise it uses the inner edges of the walls. (Can be used only ifrefLineFlag
istrue
.) - roomName[API_UniLongNameLen]
- Name of the room.
- roomNoStr[32]
- Number of the room in string form.
- roomBaseLev
- Base level of the room, measured from the floor level.
- roomHeight
- Height of the room.
- roomTopOffset
- The offset from top floor if zone is top linked.
- roomFlThick
- Sub-floor thickness of the room.
- roomLSize
- Room letter size in mm.
- reducePercent
- Reduce the zone area with this value [%].
- material
- Material attribute index of the 3D zone’s (free or all) surfaces.
- stampAngle
- Rotation angle of the room stamp [radian].
- fixedAngle
- The stampAngle will not change when the element is rotated and this flag is true.
- oneMat
- Use
material
for all surfaces if true; otherwise inherit boundary walls’ and trimming elements’ materials. - floorFillPen
- Pen attribute index of zone’s cover fill.
- floorFillBGPen
- Background pen attribute index of the zone’s cover fill.
- floorFillInd
- Fill attribute index of the zone’s cover fill.
- floorContLPen
- Pen attribute index of zone’s contour.
- floorContLType
- Line type attribute index of zone’s contour.
- useContourLine
- Draw contour line?
- useLocalOrigo
- Use local origo for cover fill drawing?
- use3DHatching
- Use Vectorial 3D Hatch patterns in Floor Plan view? This will apply the Vectorial 3D Hatch set for the element’s top side material.
- useFloorFill
- Use cover fill?
- libInd
- Index to the zone category library part in the library.
- linkToSettings
- Mode of linking to home story.
- relativeTopStory
- The top linked story (relative to home story). Negative values are invalid. 0 = not top linked.
- poly
- Polygon of the zone.
- pos
- Position of the origin of the zone stamp.
- refPos
- Reference point to find zone if it was not created manually.
- locOrigo
- Base coordinate of zone’s cover fill reference vector if it’s linked to the element.
- fillAngle
- Angle of zone’s cover fill reference vector if it’s linked to the element.
- refPoly
- The found polygon of the zone. You can access the geometry through the API_ElementMemo of the zone.
- stampGuid
- GUID of the zone stamp object.
Remarks
The additional parameters of the zone category can be found in the params
field of API_ElementMemo.
With the help of ACAPI_Element_GetRelations you can find out what and how many construction elements and objects are in the zone.
Requirements
- Version: API 2.1 or later
- Header: APIdefs_Elements.h
See Also
API_AttributeIndex, API_Elem_Head, API_Coord, API_Element,
API_Polygon, API_AddParType, API_ElementMemo,
Element Manager, API Types