LayOut C API

- Main Page
- Related Pages
- Data Structures
- Files

- File List
- Globals

All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
lineardimension.h
Go to the documentation of this file.
1 // Copyright 2015 Trimble Navigation Ltd. All rights reserved.
2 // This file is intended for public distribution.
3
4 #ifndef LAYOUT_MODEL_LINEARDIMENSION_H_
5 #define LAYOUT_MODEL_LINEARDIMENSION_H_
6
7 #include <LayOutAPI/common.h>
8 #include <LayOutAPI/geometry/geometry.h>
9 #include <LayOutAPI/model/defs.h>
10
30 #ifdef __cplusplus
31 extern "C" {
32 #endif // __cplusplus
33
38 typedef enum {
39 LOLinearDimensionLeaderLineType_SingleSegment = 0,
40 LOLinearDimensionLeaderLineType_TwoSegment,
41 LOLinearDimensionLeaderLineType_Bezier,
42 LOLinearDimensionLeaderLineType_Hidden,
43 LONumLinearDimensionLeaderLineTypes
44 } LOLinearDimensionLeaderLineType;
45
51 typedef enum {
52 LOLinearDimensionAlignment_Aligned = 0,
53 LOLinearDimensionAlignment_Vertical,
54 LOLinearDimensionAlignment_Horizontal,
55 LONumLinearDimensionAlignments
56 } LOLinearDimensionAlignment;
57
73 LO_RESULT LOLinearDimensionCreate(
74 LOLinearDimensionRef* dimension, const LOPoint2D* start_point, const LOPoint2D* end_point,
75 double height);
76
97 LO_RESULT LOLinearDimensionCreateWithAlignment(
98 LOLinearDimensionRef* dimension, const LOPoint2D* start_point, const LOPoint2D* end_point,
99 double height, LOLinearDimensionAlignment alignment);
100
108 LO_RESULT LOLinearDimensionAddReference(LOLinearDimensionRef dimension);
109
119 LO_RESULT LOLinearDimensionRelease(LOLinearDimensionRef* dimension);
120
130 LO_EXPORT LOLinearDimensionRef LOLinearDimensionFromEntity(LOEntityRef entity);
131
140 LO_EXPORT LOEntityRef LOLinearDimensionToEntity(LOLinearDimensionRef dimension);
141
158 LO_RESULT LOLinearDimensionGetExplodedEntities(
159 LOLinearDimensionRef dimension, LOEntityListRef entity_list);
160
173 LO_RESULT LOLinearDimensionGetUsesCustomText(LOLinearDimensionRef dimension, bool* use_custom_text);
174
188 LO_RESULT LOLinearDimensionSetUsesCustomText(LOLinearDimensionRef dimension, bool use_custom_text);
189
203 LO_RESULT LOLinearDimensionCreateDimensionTextCopy(
204 LOLinearDimensionRef dimension, LOFormattedTextRef* text);
205
218 LO_RESULT LOLinearDimensionSetDimensionText(
219 LOLinearDimensionRef dimension, LOFormattedTextRef text);
220
230 LO_RESULT LOLinearDimensionGetLeaderLineType(
231 LOLinearDimensionRef dimension, LOLinearDimensionLeaderLineType* leader_line_type);
232
247 LO_RESULT LOLinearDimensionSetLeaderLineType(
248 LOLinearDimensionRef dimension, LOLinearDimensionLeaderLineType leader_line_type);
249
262 LO_RESULT LOLinearDimensionGetLeaderLineVisible(
263 LOLinearDimensionRef dimension, bool* leader_line_visible);
264
275 LO_RESULT LOLinearDimensionGetUsesAutoScale(LOLinearDimensionRef dimension, bool* use_auto_scale);
276
287 LO_RESULT LOLinearDimensionSetUsesAutoScale(LOLinearDimensionRef dimension, bool use_auto_scale);
288
298 LO_RESULT LOLinearDimensionGetScale(LOLinearDimensionRef dimension, double* scale);
299
312 LO_RESULT LOLinearDimensionSetScale(LOLinearDimensionRef dimension, double scale);
313
323 LO_RESULT LOLinearDimensionGetStartConnectionPoint(
324 LOLinearDimensionRef dimension, LOPoint2D* point);
325
338 LO_RESULT LOLinearDimensionSetStartConnectionPoint(
339 LOLinearDimensionRef dimension, LOPoint2D* point);
340
352 LO_RESULT LOLinearDimensionGetEndConnectionPoint(LOLinearDimensionRef dimension, LOPoint2D* point);
353
364 LO_RESULT LOLinearDimensionSetEndConnectionPoint(LOLinearDimensionRef dimension, LOPoint2D* point);
365
375 LO_RESULT LOLinearDimensionGetStartExtentPoint(LOLinearDimensionRef dimension, LOPoint2D* point);
376
389 LO_RESULT LOLinearDimensionSetStartExtentPoint(LOLinearDimensionRef dimension, LOPoint2D* point);
390
400 LO_RESULT LOLinearDimensionGetEndExtentPoint(LOLinearDimensionRef dimension, LOPoint2D* point);
401
414 LO_RESULT LOLinearDimensionSetEndExtentPoint(LOLinearDimensionRef dimension, LOPoint2D* point);
415
427 LO_RESULT LOLinearDimensionGetStartOffsetPoint(LOLinearDimensionRef dimension, LOPoint2D* point);
428
440 LO_RESULT LOLinearDimensionGetEndOffsetPoint(LOLinearDimensionRef dimension, LOPoint2D* point);
441
454 LO_RESULT LOLinearDimensionSetStartOffsetLength(LOLinearDimensionRef dimension, double length);
455
468 LO_RESULT LOLinearDimensionSetEndOffsetLength(LOLinearDimensionRef dimension, double length);
469
487 LO_RESULT LOLinearDimensionConnectTo(
488 LOLinearDimensionRef dimension, LOConnectionPointRef start_point,
489 LOConnectionPointRef end_point);
490
502 LO_RESULT LOLinearDimensionDisconnect(LOLinearDimensionRef dimension);
503
504 #ifdef __cplusplus
505 } // end extern "C"
506 #endif // __cplusplus
507
508 #endif // LAYOUT_MODEL_LINEARDIMENSION_H_