API_​SectionSegment

Represents one segment of a section/elevation/interior elevation.

    typedef struct {
        short                              linePen;
        short                              textPen;
        API_AttributeIndex                 ltypeInd;
        short                              sectPen;
        short                              sectFillPen;
        short                              sectFillBGPen;
        short                              verticalRangeStoryBaseNumber;
        API_SegmentHorizontalRange         horizRange;
        API_SegmentVerticalRange           vertRange;
        double                             markerSize;
        bool                               begMark;
        bool                               endMark;
        bool                               relativeToStory;
        bool                               filler_2;
        bool                               useElemPens;
        bool                               begLine;
        bool                               middleLine;
        bool                               endLine;
        double                             lineLength;
        double                             vertMin;
        double                             vertMax;
        GS::uchar_t                        cutPlName [API_UniLongNameLen];
        GS::uchar_t                        cutPlIdStr [API_UniLongNameLen];
        double                             textSize;
        short                              font;
        short                              effectBits;
        API_AttributeIndex                 shadFill;
        short                              shadFillPen;
        short                              shadFillBGPen;
        API_AttributeIndex                 limitLtypeInd;
        short                              limitLinePen;
        bool                               continuous;
        bool                               filler_3[5];
        double                             sunAngXY;
        double                             sunAngZ;
        API_Guid                           begMarkerId;
        API_Guid                           midMarkerId;
        API_Guid                           endMarkerId;
        short                              filler_4;
        bool                               modelUseElemPen;
        bool                               distAreaUseElemPen;
        short                              modelElemPen;
        short                              distAreaElemPen;
        API_AttributeIndex                 distAreaShadFill;
        short                              distAreaShadFillPen;
        short                              distAreaShadFillBGPen;
        API_CutPlaneUncutSurfaceFillID     distAreaUncutSurfFillType;
        short                              distAreaUncutSurfBGPen;
        bool                               distAreaUseUncutSurfFill;
        bool                               markedDistArea;
        API_CutPlaneUncutSurfaceFillID     modelUncutSurfFillType;
        short                              modelUncutSurfBGPen;
        bool                               modelUseUncutSurfFill;
        bool                               transparency;
        short                              nMainCoord;
        short                              nDistCoord;
        short                              nDepthCoord;
        bool                               drawingModeON;
        bool                               windOpened;
        bool                               active;
        bool                               sourceMarker;
        bool                               filler_5[4];
        API_DatabaseUnId                   databaseID;
        API_CutPlanePlanConn               currPlanConn;
        API_CutPlanePlanConn               intPlanConn;
        bool                               solidOperationsOnZones;
        bool                               exclBlockWalls;
        bool                               showCutElements;
        bool                               byLimitLines;
        bool                               filler_6[4];
        API_StoryHandleAppearance          shAppearance;
        short                              shLinePen;
        API_AttributeIndex                 shLineType;
        short                              shMarkerPen;
        bool                               shUseSymbolPens;
        bool                               shLeftMarkerOn;
        bool                               shRightMarkerOn;
        bool                               shLineOn;
        bool                               filler_6[2];
        double                             shLeftMarkerOffset;
        double                             shRightMarkerOffset;
        API_Guid                           shSymbolId;
        short                              shMarkerFont;
        unsigned short                     shMarkerFaceBits;
        double                             shMarkerTextSize;
        double                             shMarkerSize;
        API_BoundaryDisplay                boundaryDisplay;
        short                              boundaryPen;
        short                              filler_7[3];
        API_AttributeIndex                 boundaryLineType;
        API_Sector                         iePolygonEdge;
        double                             ieCreationSegmentHorizontalOffset;
        double                             ieCreationSegmentDepth;
    } API_SectionSegment;

 

Members

linePen
Pen attribute index of the line.
textPen
Pen attribute index of the text.
ltypeInd
Line type attribute index.
sectPen
Pen attribute index to be used in sections for contours (when not overridden by useElemPens).
sectFillPen
Pen attribute index to be used in sections for fills (when not overridden by useElemPens)
sectFillBGPen
Pen attribute index of the background fill of the cut elements (when not overridden by useElemPens)
verticalRangeStoryBaseNumber 17
The story number to which vertMin and vertMax is relative to, when relativeToStory is true.
horizRange
Horizontal range of the segment:
API_SegmentHorizontalRange Meaning
APIHorRange_Infinite No limit on horizontal range.
APIHorRange_Limited Limit the horizontal range.
APIHorRange_ZeroDepth The depth of the section or elevation is 0.
vertRange
Vertical range of the segment:
API_SegmentVerticalRange Meaning
APIVerRange_Infinite No limit on vertical range.
APIVerRange_Limited Limit the vertical range; the limits are in vertMin and vertMax
APIVerRange_FitToZoneRange If a zone is present, then use the top and bottom level of the zone as a limit (for interior elevations only).
markerSize
Marker size.
begMark
Put marker on the beginning point.
endMark
Put marker on the end point.
relativeToStory 17
Vertical limited range is relative to the home story or absolute to project zero.
useElemPens
Use the pens defined in the elements.
begLine
Show line at beginning point.
middleLine
Show line at midlle point.
endLine
Show line at end point.
lineLength
Length of the line.
vertMin
Vertical limitation – minimum height.
vertMax
Vertical limitation – maximum height.
cutPlName Featuring API 11
Unicode name of the section.
cutPlIdStr Featuring API 11
Unicode reference ID of the section. If the text contains a ‘/’ character, then the text is split between the beginning and end marks.
textSize
Text size [mm] of marker text.
font
Font attribute index for the marker text.
effectBits
The settings of the 3D view. It can take the following values:
APICutPl_VectorHatch Create vectorial 3D hatching
APICutPl_VectorShadow Create vectorial Sun shadows
APICutPl_SunFrom3D The parameters of the Sun are the same as in the 3D window
shadFill
Fill attribute index of the shadow’s fill.
shadFillPen
Pen attribute index of the shadow’s fill.
shadFillBGPen
Background pen attribute index of the shadow’s fill.
limitLinePen
Line pen of the horizontal limit line.
limitLtypeInd
Line type of the horizontal limit line.
continuous 11
Continuous if true, otherwise is segmented.
sunAngXY
Custom sun azimuth relative to the cut plane.
sunAngZ
Custom sun altitude relative to the cut plane.
begMarkerId 17
Guid of the Section Marker object at the starting point of the section line.
midMarkerId 17
Guid of the Section Marker object at the center point of the section line.
endMarkerId 17
Guid of the Section Marker object at the end point of the section line.
modelUseElemPen
Use one pen for all elements in the Section/Elevation view.
distAreaUseElemPen
Use one pen for all elements in distant area of the Section/Elevation view.
modelElemPen
Foreground pen of model uncut surface fill.
distAreaElemPen
Pen attribute index of elements in distant area of the Section/Elevation view.
distAreaShadFill
Fill attribute index for Shadow Polygons used in the Section/Elevation view.
distAreaShadFillPen
Fill pen index for Shadow Polygons used in the Section/Elevation view.
distAreaShadFillBGPen
Fill background pen index for Shadow Polygons used in the Section/Elevation view.
distAreaUncutSurfFillType
The method for displaying fills of uncut surfaces in the distant area of the Section/Elevation (effective if distAreaUseUncutSurfFill is true)
API_CutPlaneUncutSurfaceFillID Meaning
APICutPl_PenColor Apply uniform pencolor to the fills of all uncut surfaces
APICutPl_MaterialColorShaded Display uncut fills using own material colors of the elements with shading
APICutPl_MaterialColorNonShaded Featuring API 11 Display uncut fills using own material colors of the elements without shading
distAreaUncutSurfBGPen
Pencolor to apply to the fills of all uncut surfaces in the distant area of the Section/Elevation (if uniform pencolor is selected in the Distant Area Options).
distAreaUseUncutSurfFill
Apply fills to uncut surfaces displayed in the distant area of the Section/Elevation.
markedDistArea
Mark distant area.
modelUncutSurfFillType
The method for displaying fills of uncut surfaces (Model Effects) of the Section/Elevation (effective if modelUseUncutSurfFill is true).
See the API_CutPlaneUncutSurfaceFillID values at the distAreaUncutSurfFillType parameter.
modelUncutSurfBGPen
Pencolor to apply to the fills of all uncut surfaces in the Section/Elevation (if uniform pencolor is selected in the Model Effects panel).
modelUseUncutSurfFill
Apply fills to uncut surfaces displayed in the Section/Elevation.
transparency Featuring API 11
This variable controls the transparency for Section, Elevation and Interior Elevation windows. Until now the Transparency in Shading option in 3D Window Settings Dialog achieved the same effect.
nMainCoord 21
Number of main line coordinates in memo.
nDistCoord 21
Number of marked distant area line coordinates in memo.
nDepthCoord 21
Number of depth line coordinates in memo.
drawingModeON
Section is in drawing mode.
windOpened
The section/elevation/interior elevation window is opened.
active
Turned off or active.
sourceMarker Featuring API 12
Is this segment a source marker? (output only/no default)
databaseID
Database ID to switch to (see API_DatabaseUnId).
currPlanConn
Current plan connectivity (read only). Show the state of the Section/Elevation window. This member will pick up the value of intPlanConn when the Section/Elevation window was activated. The Section/Elevation will be regenerated from the model if it’s necessary.
intPlanConn
Intended plan connectivity. Show the state of the element on the plan. It could be different from the state of its Section/Elevation window (currPlanConn).
solidOperationsOnZones Featuring API 11
Use the solid operations on zones (for interior elevations only).
exclBlockWalls Featuring API 11
Exclude view blocking walls (for interior elevations only).
showCutElements
Show cut elements (for interior elevations only).
byLimitLines Featuring API 12
Relevant elems are detected only by limit lines (used only for Interior Elevation segments).
shAppearance
Options for displaying story lines on the Section/Elevation
API_StoryHandleAppearance Meaning
APICutPl_SHANone Story lines are not displayed on the Section/Elevation
APICutPl_SHADisplayOnly Story lines appear only on-screen, but are not displayed on the printed output
APICutPl_SHAAll Story lines appear both on screen and on the printed output
shLinePen
Pencolor index of the Story Level lines.
shLineType
Line type index of the Story Level lines.
shMarkerPen
Pencolor index of the Story Handle Markers (effective when not overridden by shUseSymbolPens).
shUseSymbolPens
Use own colors of the Story Handle Marker object.
shLeftMarkerOn
Display the Story Handle Markers on the left side.
shRightMarkerOn
Display the Story Handle Markers on the right side.
shLineOn
Story handle line is on or off.
shLeftMarkerOffset
The offset of the Story Level line beyond the limits of the Section/Elevation on the left side.
shRightMarkerOffset
The offset of the Story Level line beyond the limits of the Section/Elevation on the right side.
shSymbolId 17
The guid of the Story Handle Marker object element instance (API_ObjectType).
shMarkerFont
The font index of the Story Handle Marker.
shMarkerFaceBits
The text style of the Story Handle Marker.
shMarkerTextSize
The text size of the Story Handle Marker in mm.
shMarkerSize
The size of the Story Handle Marker in mm.
boundaryDisplay 13
Boundary contour display mode. The possible values are: APIBound_UncutContours, APIBound_NoContours, and APIBound_OverrideContours.
boundaryPen 13
Boundary contour pen.
boundaryLineType 13
Boundary contour line type.
iePolygonEdge 21
Used for link the segment to an edge of the Interior Elevation.
ieCreationSegmentHorizontalOffset 21
Used only for Interior Elevation creation.
ieCreationSegmentDepth 21
Used only for Interior Elevation creation.

 

Remarks

Refer to the APIDb_ChangeCurrentDatabaseID function to access and operate on the corresponding Section/Elevation/Interior Elevation database.

For cut plane element related memo data see the ACAPI_Element_GetMemo function.

You can retrieve the Section Marker and the Story Handle Marker objects with the ACAPI_Element_Get and ACAPI_Element_GetMemo functions applying the corresponding marker indices stored in API_CutPlaneType, but you cannot create or modify them directly. You can define and change marker objects only together with the cut plane element using ACAPI_Element_CreateExt and ACAPI_Element_ChangeExt respectively.
You can access to the default settings of the markers with the ACAPI_Element_GetDefaultsExt and ACAPI_Element_ChangeDefaultsExt functions.

You can enumerate the drawing primitives of the Story Level lines of a given Section/Elevation database with the APIDb_DrawStoryControlID database function.

From API 21 all 3 (main, depth, and marked distant) lines of a section segment can be “broken”. The coordinates can be found in the element memo.

 

Requirements

Version: API 11 or later
Header: APIdefs_Elements.h

 

See Also

API_AttributeIndex, API_Elem_Head, API_Coord, API_CutPlanePlanConn, API_DatabaseUnId
API_ObjectType, API_Element
ACAPI_Element_CreateExt, ACAPI_Element_ChangeExt
ACAPI_Element_GetDefaultsExt, ACAPI_Element_ChangeDefaultsExt
APIDb_ChangeCurrentDatabaseID, APIDb_DrawStoryControlID
Element Manager, API Types