SketchUp C API

- Main Page
- Related Pages
- Data Structures
- Files

- Data Structures
- Data Structure Index
- Class Hierarchy
- Data Fields

All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Related Functions
SUGuideLineRef Struct Reference

A guide line that has a start and end position. More...

`#include <SketchUpAPI/model/guide_line.h>`

Inherits SUDrawingElementRef.

## Related Functions
(Note that these are not member functions.)
SUEntityRef | SUGuideLineToEntity (SUGuideLineRef guide_line)
| Converts from an SUGuideLineRef to an SUEntityRef. This is essentially an upcast operation. More...
SUGuideLineRef | SUGuideLineFromEntity (SUEntityRef entity)
| Converts from an SUEntityRef to an SUGuideLineRef. This is essentially a downcast operation so the given SUEntityRef must be convertible to an SUGuideLineRef. More...
SUDrawingElementRef | SUGuideLineToDrawingElement (SUGuideLineRef guide_line)
| Converts from an SUGuideLineRef to an SUDrawingElementRef. This is essentially an upcast operation. More...
SUGuideLineRef | SUGuideLineFromDrawingElement (SUDrawingElementRef drawing_elem)
| Converts from an SUDrawingElementRef to an SUGuideLineRef. This is essentially a downcast operation so the given element must be convertible to an SUGuideLineRef. More...
enum SUResult | SUGuideLineCreateFinite (SUGuideLineRef *guide_line, const struct SUPoint3D *start, const struct SUPoint3D *end)
| Creates a finite guide line object. The guide line object must be subsequently deallocated with SUGuideLineRelease() unless it is associated with a parent object. The generated line will be a segment with start and end points. The end point can be obtained by adding the direction vector to the start point. More...
enum SUResult | SUGuideLineCreateInfinite (SUGuideLineRef *guide_line, const struct SUPoint3D *point, const struct SUVector3D *direction)
| Creates a infinite guide line object. The guide line object must be subsequently deallocated with SUGuideLineRelease() unless it is associated with a parent object. The generated line will be infinite. Defined with a point along the line and a direction vector. More...
enum SUResult | SUGuideLineRelease (SUGuideLineRef *guide_line)
| Releases a guide line object. The guide line object must have been created with SUGuideLineCreateFinite() or SUGuideLineCreateInfinite and not subsequently associated with a parent object (e.g. SUEntitiesRef). More...
enum SUResult | SUGuideLineGetData (SUGuideLineRef guide_line, struct SUPoint3D *start, struct SUVector3D *direction, bool *isinfinite)
| Retrieves the data defining the line (a point, a direction vector, and a boolean flagging if the line is infinite). For finite lines `start` is the start point, and the end point can be obtained by adding the direction vector (`direction`) to the start point (`start`). For infinite lines `start` is simply a point on the guide line, and `direction` is always a unit vector. More...
Related Functions inherited from SUDrawingElementRef
SUEntityRef | SUDrawingElementToEntity (SUDrawingElementRef elem)
| Converts from an SUDrawingElementRef to an SUEntityRef. This is essentially an upcast operation. More...
SUDrawingElementRef | SUDrawingElementFromEntity (SUEntityRef entity)
| Converts from an SUEntityRef to an SUDrawingElementRef. This is essentially a downcast operation so the given entity must be convertible to a drawing element. More...
enum SURefType | SUDrawingElementGetType (SUDrawingElementRef elem)
| Returns the concrete type of the given drawing element. More...
enum SUResult | SUDrawingElementGetBoundingBox (SUDrawingElementRef elem, struct SUBoundingBox3D *bbox)
| Retrieves the bounding box of a drawing element. More...
enum SUResult | SUDrawingElementGetMaterial (SUDrawingElementRef elem, SUMaterialRef *material)
| Retrieves the material object of a drawing element. More...
enum SUResult | SUDrawingElementSetMaterial (SUDrawingElementRef elem, SUMaterialRef material)
| Sets the material of a drawing element. More...
enum SUResult | SUDrawingElementGetLayer (SUDrawingElementRef elem, SULayerRef *layer)
| Retrieves the layer object associated with a drawing element. More...
enum SUResult | SUDrawingElementSetLayer (SUDrawingElementRef elem, SULayerRef layer)
| Sets the layer object to be associated with a drawing element. More...
enum SUResult | SUDrawingElementSetHidden (SUDrawingElementRef elem, bool hide_flag)
| Sets the hide flag of a drawing element. More...
enum SUResult | SUDrawingElementGetHidden (SUDrawingElementRef elem, bool *hide_flag)
| Retrieves the hide flag of a drawing element. More...
enum SUResult | SUDrawingElementSetCastsShadows (SUDrawingElementRef elem, bool casts_shadows_flag)
| Sets the casts shadows flag of a drawing element. More...
enum SUResult | SUDrawingElementGetCastsShadows (SUDrawingElementRef elem, bool *casts_shadows_flag)
| Retrieves the casts shadows flag of a drawing element. More...
enum SUResult | SUDrawingElementSetReceivesShadows (SUDrawingElementRef elem, bool receives_shadows_flag)
| Sets the receives shadows flag of a drawing element. More...
enum SUResult | SUDrawingElementGetReceivesShadows (SUDrawingElementRef elem, bool *receives_shadows_flag)
| Retrieves the receives shadows flag of a drawing element. More...
Related Functions inherited from SUEntityRef
enum SURefType | SUEntityGetType (SUEntityRef entity)
| Returns the concrete type of the given entity. More...
enum SUResult | SUEntityGetID (SUEntityRef entity, int32_t *entity_id)
| Retrieves the id of the entity. More...
enum SUResult | SUEntityGetPersistentID (SUEntityRef entity, int64_t *entity_pid)
| Retrieves the persistent id of the entity. More...
enum SUResult | SUEntityGetNumAttributeDictionaries (SUEntityRef entity, size_t *count)
| Retrieves the number of attribute dictionaries of an entity. More...
enum SUResult | SUEntityGetAttributeDictionaries (SUEntityRef entity, size_t len, SUAttributeDictionaryRef dictionaries[], size_t *count)
| Retrieves the attribute dictionaries of an entity. More...
enum SUResult | SUEntityAddAttributeDictionary (SUEntityRef entity, SUAttributeDictionaryRef dictionary)
| Adds the attribute dictionary to an entity. The given dictionary object must not belong to another entity. In other words, each dictionary should be added to one entity only. More...
enum SUResult | SUEntityGetAttributeDictionary (SUEntityRef entity, const char *name, SUAttributeDictionaryRef *dictionary)
| Retrieves the attribute dictionary of an entity that has the given name. More...
enum SUResult | SUEntityGetModel (SUEntityRef entity, SUModelRef *model)
| Retrieves the model object associated with the entity. More...
enum SUResult | SUEntityGetParentEntities (SUEntityRef entity, SUEntitiesRef *entities)
| Retrieves the entities object which contains the entity. More...

## Detailed Description

A guide line that has a start and end position.

Since
  SketchUp 2016, API 4.0

## Friends And Related Function Documentation

enum SUResult SUGuideLineCreateFinite | ( | SUGuideLineRef * | guide_line,
|  | const struct SUPoint3D * | start,
|  | const struct SUPoint3D * | end
| ) |  |
| related

Creates a finite guide line object. The guide line object must be subsequently deallocated with SUGuideLineRelease() unless it is associated with a parent object. The generated line will be a segment with start and end points. The end point can be obtained by adding the direction vector to the start point.

Since
  SketchUp 2016, API 4.0

Parameters

  [in] | guide_line | The guide line object.
  [out] | start | The guide line start position.
  [out] | end | The guide line end position.

Returns
  - SU_ERROR_NONE on success
  - SU_ERROR_NULL_POINTER_INPUT if guide_line is NULL
  - SU_ERROR_OVERWRITE_VALID if guide_line references a valid object
  - SU_ERROR_NULL_POINTER_INPUT if start or end is NULL

enum SUResult SUGuideLineCreateInfinite | ( | SUGuideLineRef * | guide_line,
|  | const struct SUPoint3D * | point,
|  | const struct SUVector3D * | direction
| ) |  |
| related

Creates a infinite guide line object. The guide line object must be subsequently deallocated with SUGuideLineRelease() unless it is associated with a parent object. The generated line will be infinite. Defined with a point along the line and a direction vector.

Since
  SketchUp 2016, API 4.0

Parameters

  [in] | guide_line | The guide line object.
  [out] | point | A point on the guide line.
  [out] | direction | The guide line direction vector.

Returns
  - SU_ERROR_NONE on success
  - SU_ERROR_NULL_POINTER_INPUT if guide_line is NULL
  - SU_ERROR_OVERWRITE_VALID if guide_line references a valid object
  - SU_ERROR_NULL_POINTER_INPUT if start or end is NULL

SUGuideLineRef SUGuideLineFromDrawingElement | ( | SUDrawingElementRef | drawing_elem | ) |
| related

Converts from an SUDrawingElementRef to an SUGuideLineRef. This is essentially a downcast operation so the given element must be convertible to an SUGuideLineRef.

Since
  SketchUp 2016, API 4.0

Parameters

  [in] | drawing_elem | The given element reference.

Returns
  - The converted SUGuideLineRef if the downcast operation succeeds
  - If not, the returned reference will be invalid.

SUGuideLineRef SUGuideLineFromEntity | ( | SUEntityRef | entity | ) |
| related

Converts from an SUEntityRef to an SUGuideLineRef. This is essentially a downcast operation so the given SUEntityRef must be convertible to an SUGuideLineRef.

Since
  SketchUp 2016, API 4.0

Parameters

  [in] | entity | The entity object.

Returns
  - The converted SUGuideLineRef if the downcast operation succeeds
  - If the downcast operation fails, the returned reference will be invalid

enum SUResult SUGuideLineGetData | ( | SUGuideLineRef | guide_line,
|  | struct SUPoint3D * | start,
|  | struct SUVector3D * | direction,
|  | bool * | isinfinite
| ) |  |
| related

Retrieves the data defining the line (a point, a direction vector, and a boolean flagging if the line is infinite). For finite lines `start` is the start point, and the end point can be obtained by adding the direction vector (`direction`) to the start point (`start`). For infinite lines `start` is simply a point on the guide line, and `direction` is always a unit vector.

Since
  SketchUp 2016, API 4.0

Parameters

  [in] | guide_line | The guide line object.
  [out] | start | A point on the guide line.
  [out] | direction | The guide line direction.
  [out] | isinfinite | returns true if infinite otherwise returns false

Returns
  - SU_ERROR_NONE on success
  - SU_ERROR_INVALID_INPUT if guide line is an invalid object
  - SU_ERROR_NULL_POINTER_OUTPUT if start, direction, or isinfinite is NULL

enum SUResult SUGuideLineRelease | ( | SUGuideLineRef * | guide_line | ) |
| related

Releases a guide line object. The guide line object must have been created with SUGuideLineCreateFinite() or SUGuideLineCreateInfinite and not subsequently associated with a parent object (e.g. SUEntitiesRef).

Since
  SketchUp 2016, API 4.0

Parameters

  [in] | guide_line | The guide line object.

Returns
  - SU_ERROR_NONE on success
  - SU_ERROR_NULL_POINTER_INPUT if guide_line is NULL
  - SU_ERROR_INVALID_INPUT if guide_line does not reference a valid object

SUDrawingElementRef SUGuideLineToDrawingElement | ( | SUGuideLineRef | guide_line | ) |
| related

Converts from an SUGuideLineRef to an SUDrawingElementRef. This is essentially an upcast operation.

Since
  SketchUp 2016, API 4.0

Parameters

  [in] | guide_line | The given guide line reference.

Returns
  - The converted SUEntityRef if guide_line is a valid guide line
  - If not, the returned reference will be invalid

SUEntityRef SUGuideLineToEntity | ( | SUGuideLineRef | guide_line | ) |
| related

Converts from an SUGuideLineRef to an SUEntityRef. This is essentially an upcast operation.

Since
  SketchUp 2016, API 4.0

Parameters

  [in] | guide_line | The guide line object.

Returns
  - The converted SUEntityRef if guide_line is a valid object
  - If not, the returned reference will be invalid

The documentation for this struct was generated from the following files:

- SketchUpAPI/model/defs.h
- SketchUpAPI/model/guide_line.h