LayOut C API
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Data Structures
Here are the data structures with brief descriptions:
oCLOAngularDimensionRefReferences an angular dimension entity. An angular dimension is composed of the following sub-entities:
oCLOApplicationRefEncapsulates a LayOut application
oCLOAutoTextDefinitionListRefReferences an ordered, indexable list of LOAutoTextDefinitionRef objects
oCLOAutoTextDefinitionRefReferences an auto-text definition
oCLOAxisAlignedRect2DRepresents a 2D rectangle that is aligned with the X and Y axis of the coordinate system
oCLOConnectionPointRefReferences a connection point. A connection point defines a target point to which a label or dimension can connect
oCLODictionaryRefReferences a dictionary. A dictionary maps string keys to LOTypedValueRef values
oCLODocumentRefReferences a LayOut document
oCLOEllipseRefReferences a simple elliptical shape entity
oCLOEntityIteratorRefReferences an iterator for LOEntityRef objects
oCLOEntityListRefReferences an ordered, indexable list of LOEntityRef objects
oCLOEntityRefAn entity is an object shown on a page of a LayOut document
oCLOFormattedTextRefReferences a formatted text entity
oCLOGridRefReferences a document's grid settings
oCLOGroupRefReferences a group entity. A group is a special type of entity that does not belong to a layer and contains other entities as children. A group's children may include other groups, allowing for a hierarchical tree structure of entities. A group must contain at least one child and will be automatically collapsed if an operation is performed that results in the group being empty
oCLOImageRefReferences a raster image entity
oCLOImageRepRefReferences the bitmap representation for a raster image
oCLOLabelRefReferences a label entity. A label consists of the label text (formatted text entity) and the label leader (path entity). A label may be connected to another entity via a LOConnectionPointRef object
oCLOLayerInstanceRefReferences a layer instance. A layer instance provides access to the entities that are drawn on a given layer, as well as the draw order of those entities. Groups are not included in the list of entities associated with a layer instance, since the group hierarchy has no effect on entity draw order. Each page has one layer instance for each layer in the document. Non-shared layer instances are unique per page, while shared layer instances are shared across all pages of the document
oCLOLayerListRefReferences an ordered, indexable list of LOLayerRef objects
oCLOLayerRefReferences a layer definition. A layer definition specifies the document-wide information about a layer. To access the entities on a layer for a given page, use LOLayerInstanceRef
oCLOLinearDimensionRefReferences a linear dimension entity. A linear dimension is composed of the following sub-entities:
oCLOOrientedRect2DRepresents a 2D rectangle that might be rotated. Each corner of the rectangle is represented by a separate 2D point
oCLOPageInfoRefReferences the page information for a document. This specifies the physical page dimensions and other page-related settings for a document
oCLOPageListRefReferences an ordered, indexable list of LOPageRef objects
oCLOPageRefReferences a single page in a document
oCLOPathRefReferences a path entity. A path entity represents a continuous, multi-segment polyline or Bezier curve
oCLORect2DRepresents a 2D rectangle
oCLORectangleRefReferences a simple rectangular shape entity
oCLOReferenceEntityRefReferences an entity containing the contents of an imported file
oCLOSketchUpModelRefReferences a SketchUp model viewport entity
oCLOSkpFileRefReferences a SketchUp file reference object
oCLOStyleRefReferences a collection of style attributes that determine the visual appearance of entities. Style attributes are those attributes which the user can manipulate in LayOut's inspector windows. For example, shape style attributes that define stroke and fill, or text style attributes that define the font for formatted text. The document maintains a default style for various types of entities, and it is possible to apply the style of one entity to another. LOStyleRef objects are transient and do not belong to a document
oCLOTableRefReferences a table. A table is a series of rows and columns that holds data
oCLOTransformMatrix2D2x3 matrix for representing 2D transforms on LayOut entities. The matrix is stored in column-major format:
oCLOTypedValueRefReferences a variant object used to represent a value of an arbitrary type
oCSUAxisAlignedRect2DRepresents a 2D rectangle that is aligned with the X and Y axis of the coordinate system
oCSUBoundingBox3DRepresents a 3D axis-aligned bounding box represented by the extreme diagonal corner points with minimum and maximum x,y,z coordinates
oCSUColorStores a RGBA color with 8 bit channels
oCSULengthFormatterRefReferences a length formatter object. Length formatters are used to generate formatted strings (optionally with units) from length, area, and volume values. Additionally length formatters can be used to translate a formatted length/area/volume string into a value. Accessors and setters are exposed for some of the key formatting properties, facilitating customization of the formater. In cases when users want the formatter to reflect the properties of a model, SUModelGetLengthFormatter should be used to more efficiently extract/copy the relevant properties from the model to the formatter
oCSUPlane3DRepresents a 3D plane by the parameters a, b, c, d. For any point on the plane, ax + by + cz + d = 0. The coeficients are normalized so that a*a + b*b + c*c = 1
oCSUPoint2DRepresents a point in 2-dimensional space
oCSUPoint3DRepresents a point in 3-dimensional space
oCSURay3DRepresents a 3D ray defined by a point and normal vector
oCSUStringRefStores a Unicode string for use as output string parameters in the API
oCSUTransformationRepresents a 3D (4x4) geometric transformation matrix
oCSUTransformation2DRepresents a 2D (2x3) affine transformation matrix. The matrix is stored in column-major format:
oCSUVector2DRepresents a vector in 2-dimensional space
\CSUVector3DRepresents a vector in 3-dimensional space