API_​ChangeMarkerType

Represents a ChangeMarker (a placeable element, not to be confused with the Change from the Change Manager palette).

    typedef struct {
        API_Elem_Head                     head;
        API_ChangeMarkerLinkType          linkType;
        API_ChangeMarkerComponentType     markerComponent;
        GS::uchar_t                       changeId[API_UniLongNameLen];
        GS::uchar_t                       changeName[API_UniLongNameLen];
        API_Coord                         pos;
        API_Polygon                       poly;
        API_Guid                          markerGuid;
        double                            angle;
        bool                              horizontalMarker;
        char                              filler_1[3];
        Int32                             filler_2;
    } API_ChangeMarkerType;

 

Members

head
General element header.
linkType
  • When creating/changing a ChangeMarker or changing the ChangeMarker Default, this field is used to make the ChangeMarker/ChangeMarker Default linked or unlinked. When linkType is APICMLT_CreateNewChange, first a new Change will be created, then the ChangeMarker will be made linked to this Change.
  • When creating/changing a ChangeMarker or changing the ChangeMarker Default
    • if linkType is APICMLT_CreateNewChange, changeId and changeName also has to be supplied,
    • if linkType is APICMLT_Linked, changeId also has to be supplied (changeName won’t be used).
  • When querying a placed ChangeMarker, in this field it is returned, whether the ChangeMarker is linked or unlinked. If linked, changeId and changeName shows the linked Change.
  • When querying the ChangeMarker Default, in this field it is returned, whether the Default is linked, unlinked or a new Change will be created when placing a ChangeMarker (APICMLT_CreateNewChange). If linked, changeId and changeName shows the linked Change. If APICMLT_CreateNewChange, changeId and changeName shows what Change will be created when placing a ChangeMarker.
markerComponent
This field specifies whether the ChangeMarker has a Marker Head and/or Marker Cloud.
changeId
Specifies the Id of the linked Change.
changeName
Specifies the Name of the linked Change.
pos
If the ChangeMarker has no polygon, this coordinate means the reference position, where the ChangeMarker points to.
poly
If the ChangeMarker has polygon, this field contains some data of the polygon (see API_Polygon). The polygon itself can be set/queried through memo.
markerGuid
After querying, changing, or creating a ChangeMarker, when the ChangeMarker has a Marker, this field contains the GUID of the associated Marker symbol.
angle New in API 22
Marker rotation angle (radian).
horizontalMarker New in API 22
Marker is always horizontal.

 

Remarks

For ChangeMarker related memo data see the ACAPI_Element_GetMemo function.

 

Requirements

Version: API 18 or later
Header: APIdefs_Elements.h

 

See Also

API_Element, API_Elem_Head, API_ChangeMarkerLinkType, API_Coord, API_Polygon, API_Guid
ACAPI_Element_CreateExt, ACAPI_Element_ChangeExt
ACAPI_Element_GetDefaultsExt, ACAPI_Element_ChangeDefaultsExt
Element Manager, API Types