scriptup 2024.0.4 → 2024.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/ext/attribute_dictionaries.c +1 -1
- data/ext/color.c +3 -3
- data/ext/component_definition.c +2 -2
- data/ext/definition_list.c +1 -1
- data/ext/entity.c +4 -3
- data/ext/material.c +4 -7
- data/ext/utils.h +4 -4
- data/sketchup-sdk-win/binaries/layout/x64/LayOutAPI.dll +0 -0
- data/sketchup-sdk-win/binaries/layout/x64/LayOutAPI.lib +0 -0
- data/sketchup-sdk-win/binaries/layout/x64/LayOutControllers.dll +0 -0
- data/sketchup-sdk-win/binaries/layout/x64/LayOutModel.dll +0 -0
- data/sketchup-sdk-win/binaries/layout/x64/LayOutRTF.dll +0 -0
- data/sketchup-sdk-win/binaries/layout/x64/LayOutUtils.dll +0 -0
- data/sketchup-sdk-win/binaries/layout/x64/SketchUpCommonPreferences.dll +0 -0
- data/sketchup-sdk-win/binaries/layout/x64/SketchUpViewerAPI.dll +0 -0
- data/sketchup-sdk-win/binaries/layout/x64/SketchUpViewerAPI.lib +0 -0
- data/sketchup-sdk-win/binaries/layout/x64/pdflib.dll +0 -0
- data/sketchup-sdk-win/headers/LayOutAPI/application/application.h +117 -0
- data/sketchup-sdk-win/headers/LayOutAPI/common.h +22 -0
- data/sketchup-sdk-win/headers/LayOutAPI/geometry/geometry.h +78 -0
- data/sketchup-sdk-win/headers/LayOutAPI/initialize.h +36 -0
- data/sketchup-sdk-win/headers/LayOutAPI/layout.h +49 -0
- data/sketchup-sdk-win/headers/LayOutAPI/model/angulardimension.h +468 -0
- data/sketchup-sdk-win/headers/LayOutAPI/model/autotextdefinition.h +569 -0
- data/sketchup-sdk-win/headers/LayOutAPI/model/autotextdefinitionlist.h +79 -0
- data/sketchup-sdk-win/headers/LayOutAPI/model/connectionpoint.h +107 -0
- data/sketchup-sdk-win/headers/LayOutAPI/model/defs.h +42 -0
- data/sketchup-sdk-win/headers/LayOutAPI/model/dictionary.h +120 -0
- data/sketchup-sdk-win/headers/LayOutAPI/model/document.h +864 -0
- data/sketchup-sdk-win/headers/LayOutAPI/model/documentexportoptions.h +59 -0
- data/sketchup-sdk-win/headers/LayOutAPI/model/ellipse.h +78 -0
- data/sketchup-sdk-win/headers/LayOutAPI/model/entity.h +330 -0
- data/sketchup-sdk-win/headers/LayOutAPI/model/entityiterator.h +49 -0
- data/sketchup-sdk-win/headers/LayOutAPI/model/entitylist.h +114 -0
- data/sketchup-sdk-win/headers/LayOutAPI/model/formattedtext.h +397 -0
- data/sketchup-sdk-win/headers/LayOutAPI/model/grid.h +251 -0
- data/sketchup-sdk-win/headers/LayOutAPI/model/group.h +243 -0
- data/sketchup-sdk-win/headers/LayOutAPI/model/image.h +146 -0
- data/sketchup-sdk-win/headers/LayOutAPI/model/imagerep.h +109 -0
- data/sketchup-sdk-win/headers/LayOutAPI/model/label.h +332 -0
- data/sketchup-sdk-win/headers/LayOutAPI/model/layer.h +207 -0
- data/sketchup-sdk-win/headers/LayOutAPI/model/layerinstance.h +117 -0
- data/sketchup-sdk-win/headers/LayOutAPI/model/layerlist.h +69 -0
- data/sketchup-sdk-win/headers/LayOutAPI/model/lineardimension.h +456 -0
- data/sketchup-sdk-win/headers/LayOutAPI/model/page.h +261 -0
- data/sketchup-sdk-win/headers/LayOutAPI/model/pageinfo.h +372 -0
- data/sketchup-sdk-win/headers/LayOutAPI/model/pagelist.h +81 -0
- data/sketchup-sdk-win/headers/LayOutAPI/model/path.h +464 -0
- data/sketchup-sdk-win/headers/LayOutAPI/model/rectangle.h +240 -0
- data/sketchup-sdk-win/headers/LayOutAPI/model/referenceentity.h +120 -0
- data/sketchup-sdk-win/headers/LayOutAPI/model/sketchupmodel.h +624 -0
- data/sketchup-sdk-win/headers/LayOutAPI/model/skpfilereference.h +94 -0
- data/sketchup-sdk-win/headers/LayOutAPI/model/style.h +1080 -0
- data/sketchup-sdk-win/headers/LayOutAPI/model/table.h +470 -0
- data/sketchup-sdk-win/headers/LayOutAPI/model/typed_value.h +156 -0
- metadata +50 -2
@@ -0,0 +1,468 @@
|
|
1
|
+
// Copyright 2016 Trimble Navigation Ltd. All Rights Reserved.
|
2
|
+
// This file is intended for public distribution.
|
3
|
+
|
4
|
+
#ifndef LAYOUT_MODEL_ANGULARDIMENSION_H_
|
5
|
+
#define LAYOUT_MODEL_ANGULARDIMENSION_H_
|
6
|
+
|
7
|
+
#include <LayOutAPI/common.h>
|
8
|
+
#include <LayOutAPI/geometry/geometry.h>
|
9
|
+
#include <LayOutAPI/model/defs.h>
|
10
|
+
|
11
|
+
/**
|
12
|
+
@struct LOAngularDimensionRef
|
13
|
+
@brief References an angular dimension entity. An angular dimension is composed
|
14
|
+
of the following sub-entities:
|
15
|
+
- two 'extension lines' that extend from the entity being dimensioned.
|
16
|
+
- a 'dimension line' connecting the ends of the leaders.
|
17
|
+
(this may be represented by one or two paths depending on appearance.)
|
18
|
+
- an optional 'leader line' that is used for small dimensions.
|
19
|
+
- a 'dimension text' that displays the dimension's text.
|
20
|
+
|
21
|
+
There are seven points that may be modified for an angular dimension:
|
22
|
+
- two 'connection points' that define the start and end of the
|
23
|
+
dimension.
|
24
|
+
- two 'extent points' that define the start and end of the dimension
|
25
|
+
line and are the ends of the two extension lines.
|
26
|
+
- two 'offset points' that define the starting points of the extension
|
27
|
+
lines.
|
28
|
+
- one 'arc center point' that defines the center of the dimension, where
|
29
|
+
the extension lines intersect.
|
30
|
+
@since LayOut 2017, API 2.0
|
31
|
+
*/
|
32
|
+
|
33
|
+
#ifdef __cplusplus
|
34
|
+
extern "C" {
|
35
|
+
#endif // __cplusplus
|
36
|
+
|
37
|
+
/**
|
38
|
+
@enum LOAngularDimensionLeaderLineType
|
39
|
+
@brief Defines the different types of leader lines for an angular dimension
|
40
|
+
entity.
|
41
|
+
@since LayOut 2017, API 2.0
|
42
|
+
*/
|
43
|
+
typedef enum {
|
44
|
+
LOAngularDimensionLeaderLineType_SingleSegment = 0, ///< Single segment leader line.
|
45
|
+
LOAngularDimensionLeaderLineType_TwoSegment, ///< Two segment leader line.
|
46
|
+
LOAngularDimensionLeaderLineType_Bezier, ///< Curved Bezier leader line.
|
47
|
+
LOAngularDimensionLeaderLineType_Hidden, ///< No visible leader line.
|
48
|
+
LONumAngularDimensionLeaderLineTypes
|
49
|
+
} LOAngularDimensionLeaderLineType;
|
50
|
+
|
51
|
+
/**
|
52
|
+
@brief Creates a new disconnected angular dimension object. The arc center point
|
53
|
+
is defined implicitly by the intersection of the two extension lines, and
|
54
|
+
the radius is defined implicitly by the distance of the extent points
|
55
|
+
from the arc center point. If the extent points are not equidistant from
|
56
|
+
the arc center point, then the end extent point is adjusted
|
57
|
+
automatically.
|
58
|
+
@since LayOut 2017, API 2.0
|
59
|
+
@param[out] dimension The angular dimension object
|
60
|
+
@param[in] start_point Where the dimension should start
|
61
|
+
@param[in] end_point Where the dimension should end
|
62
|
+
@param[in] start_extent_point The extent point where the dimension line should
|
63
|
+
start
|
64
|
+
@param[in] end_extent_point The extent point where the dimension line should
|
65
|
+
end
|
66
|
+
@param[in] inner_angle Whether or not the dimension should measure the
|
67
|
+
inner angle. If false, it will measure the outer
|
68
|
+
angle.
|
69
|
+
@return
|
70
|
+
- \ref SU_ERROR_NONE on success
|
71
|
+
- \ref SU_ERROR_NULL_POINTER_OUTPUT if dimension is NULL
|
72
|
+
- \ref SU_ERROR_OVERWRITE_VALID if *dimension already refers to a valid object
|
73
|
+
- \ref SU_ERROR_NULL_POINTER_INPUT if start_point is NULL
|
74
|
+
- \ref SU_ERROR_NULL_POINTER_INPUT if end_point is NULL
|
75
|
+
- \ref SU_ERROR_NULL_POINTER_INPUT if start_extent_point is NULL
|
76
|
+
- \ref SU_ERROR_NULL_POINTER_INPUT if end_extent_point is NULL
|
77
|
+
*/
|
78
|
+
LO_RESULT LOAngularDimensionCreate(
|
79
|
+
LOAngularDimensionRef* dimension, const LOPoint2D* start_point, const LOPoint2D* end_point,
|
80
|
+
const LOPoint2D* start_extent_point, const LOPoint2D* end_extent_point, bool inner_angle);
|
81
|
+
|
82
|
+
/**
|
83
|
+
@brief Adds a reference to an angular dimension object.
|
84
|
+
@since LayOut 2017, API 2.0
|
85
|
+
@param[in] dimension The angular dimension object.
|
86
|
+
@return
|
87
|
+
- \ref SU_ERROR_NONE on success
|
88
|
+
- \ref SU_ERROR_INVALID_INPUT if dimension does not refer to a valid object
|
89
|
+
*/
|
90
|
+
LO_RESULT LOAngularDimensionAddReference(LOAngularDimensionRef dimension);
|
91
|
+
|
92
|
+
/**
|
93
|
+
@brief Releases an angular dimension object. The object will be invalidated if
|
94
|
+
releasing the last reference.
|
95
|
+
@since LayOut 2017, API 2.0
|
96
|
+
@param[in] dimension The angular dimension object.
|
97
|
+
@return
|
98
|
+
- \ref SU_ERROR_NONE on success
|
99
|
+
- \ref SU_ERROR_NULL_POINTER_INPUT if dimension is NULL
|
100
|
+
- \ref SU_ERROR_INVALID_INPUT if *dimension does not refer to a valid object
|
101
|
+
*/
|
102
|
+
LO_RESULT LOAngularDimensionRelease(LOAngularDimensionRef* dimension);
|
103
|
+
|
104
|
+
/**
|
105
|
+
@brief Converts from a \ref LOEntityRef to a \ref LOAngularDimensionRef.
|
106
|
+
This is essentially a downcast operation so the given \ref LOEntityRef
|
107
|
+
must be convertible to a \ref LOAngularDimensionRef.
|
108
|
+
@since LayOut 2017, API 2.0
|
109
|
+
@param[in] entity The entity object.
|
110
|
+
@return
|
111
|
+
- The converted \ref LOAngularDimensionRef if the downcast operation succeeds
|
112
|
+
- If not, the returned reference will be invalid
|
113
|
+
*/
|
114
|
+
LO_EXPORT LOAngularDimensionRef LOAngularDimensionFromEntity(LOEntityRef entity);
|
115
|
+
|
116
|
+
/**
|
117
|
+
@brief Converts from a \ref LOAngularDimensionRef to a \ref LOEntityRef.
|
118
|
+
This is essentially an upcast operation.
|
119
|
+
@since LayOut 2017, API 2.0
|
120
|
+
@param[in] dimension The angular dimension object.
|
121
|
+
@return
|
122
|
+
- The converted \ref LOEntityRef if dimension is a valid object
|
123
|
+
- If not, the returned reference will be invalid
|
124
|
+
*/
|
125
|
+
LO_EXPORT LOEntityRef LOAngularDimensionToEntity(LOAngularDimensionRef dimension);
|
126
|
+
|
127
|
+
/**
|
128
|
+
@brief Creates the entities that represent the dimension in its exploded form
|
129
|
+
and adds them to a \ref LOEntityListRef. It is NOT necessary to
|
130
|
+
explicitly release these entities, since \ref LOEntityListRef itself
|
131
|
+
adds a reference to the entities and will release them when they are
|
132
|
+
removed from the list or when the list is released. Depending on the
|
133
|
+
appearance of the dimension being exploded, this may return anywhere from
|
134
|
+
four to six entities. Start extension line, end extension line,
|
135
|
+
one or two dimension lines, dimension text, optional leader line.
|
136
|
+
@since LayOut 2017, API 2.0
|
137
|
+
@param[in] dimension The angular dimension object.
|
138
|
+
@param[in] entity_list The entity list object to add the new entities to.
|
139
|
+
@return
|
140
|
+
- \ref SU_ERROR_NONE on success
|
141
|
+
- \ref SU_ERROR_INVALID_INPUT if dimension does not refer to a valid object
|
142
|
+
- \ref SU_ERROR_INVALID_INPUT if entity_list does not refer to a valid object
|
143
|
+
*/
|
144
|
+
LO_RESULT LOAngularDimensionGetExplodedEntities(
|
145
|
+
LOAngularDimensionRef dimension, LOEntityListRef entity_list);
|
146
|
+
|
147
|
+
/**
|
148
|
+
@brief Gets whether or not the dimension text uses custom text. When
|
149
|
+
true, the dimension text will display a custom string that doesn't
|
150
|
+
change. When false, the dimension text will display the length
|
151
|
+
measurement and will update automatically.
|
152
|
+
@since LayOut 2017, API 2.0
|
153
|
+
@param[in] dimension The angular dimension object.
|
154
|
+
@param[out] use_custom_text Whether the dimension uses custom text.
|
155
|
+
@return
|
156
|
+
- \ref SU_ERROR_NONE on success
|
157
|
+
- \ref SU_ERROR_INVALID_INPUT if dimension does not refer to a valid object
|
158
|
+
- \ref SU_ERROR_NULL_POINTER_OUTPUT if use_auto_text is NULL
|
159
|
+
*/
|
160
|
+
LO_RESULT LOAngularDimensionGetUsesCustomText(
|
161
|
+
LOAngularDimensionRef dimension, bool* use_custom_text);
|
162
|
+
|
163
|
+
/**
|
164
|
+
@brief Sets whether or not the dimension text uses custom text. When true, the
|
165
|
+
dimension text will display a custom string that doesn't change. When
|
166
|
+
false, the dimension text will display the length measurement and will
|
167
|
+
update automatically.
|
168
|
+
@since LayOut 2017, API 2.0
|
169
|
+
@param[in] dimension The angular dimension object.
|
170
|
+
@param[in] use_custom_text Whether or not the dimension should use custom text.
|
171
|
+
@return
|
172
|
+
- \ref SU_ERROR_NONE on success
|
173
|
+
- \ref SU_ERROR_INVALID_INPUT if dimension does not refer to a valid object
|
174
|
+
- \ref SU_ERROR_LAYER_LOCKED if dimension is on a locked layer
|
175
|
+
- \ref SU_ERROR_ENTITY_LOCKED if dimension is locked
|
176
|
+
*/
|
177
|
+
LO_RESULT LOAngularDimensionSetUsesCustomText(
|
178
|
+
LOAngularDimensionRef dimension, bool use_custom_text);
|
179
|
+
|
180
|
+
/**
|
181
|
+
@brief Creates a copy of the dimension text's \ref LOFormattedTextRef object.
|
182
|
+
@note With the addition of auto-text in dimensions for LayOut 2019.2, the
|
183
|
+
copy of the dimension text incorrectly provided the plain text when
|
184
|
+
requesting the display text. This has been fixed in LayOut 2020.1, API 5.1.
|
185
|
+
@since LayOut 2017, API 2.0
|
186
|
+
@param[in] dimension The angular dimension object.
|
187
|
+
@param[out] text The formatted text object.
|
188
|
+
@return
|
189
|
+
- \ref SU_ERROR_NONE on success
|
190
|
+
- \ref SU_ERROR_INVALID_INPUT if dimension does not refer to a valid object
|
191
|
+
- \ref SU_ERROR_NULL_POINTER_OUTPUT if text is NULL
|
192
|
+
- \ref SU_ERROR_OVERWRITE_VALID if *text already refers to a valid object
|
193
|
+
*/
|
194
|
+
LO_RESULT LOAngularDimensionCreateDimensionTextCopy(
|
195
|
+
LOAngularDimensionRef dimension, LOFormattedTextRef* text);
|
196
|
+
|
197
|
+
/**
|
198
|
+
@brief Sets the text of the dimension from a \ref LOFormattedTextRef object.
|
199
|
+
The dimension lines may be adjusted if the text has been re-positioned.
|
200
|
+
@since LayOut 2017, API 2.0
|
201
|
+
@param[in] dimension The angular dimension object.
|
202
|
+
@param[in] text The formatted text object.
|
203
|
+
@return
|
204
|
+
- \ref SU_ERROR_NONE on success
|
205
|
+
- \ref SU_ERROR_INVALID_INPUT if dimension does not refer to a valid object
|
206
|
+
- \ref SU_ERROR_INVALID_INPUT if text does not refer to a valid object
|
207
|
+
- \ref SU_ERROR_LAYER_LOCKED if dimension is on a locked layer
|
208
|
+
- \ref SU_ERROR_ENTITY_LOCKED if dimension is locked
|
209
|
+
*/
|
210
|
+
LO_RESULT LOAngularDimensionSetDimensionText(
|
211
|
+
LOAngularDimensionRef dimension, LOFormattedTextRef text);
|
212
|
+
|
213
|
+
/**
|
214
|
+
@brief Gets the type of leader line the angular dimension is using.
|
215
|
+
@since LayOut 2017, API 2.0
|
216
|
+
@param[in] dimension The angular dimension object.
|
217
|
+
@param[out] leader_line_type The leader line type.
|
218
|
+
@return
|
219
|
+
- \ref SU_ERROR_NONE on success
|
220
|
+
- \ref SU_ERROR_INVALID_INPUT if dimension does not refer to a valid object
|
221
|
+
- \ref SU_ERROR_NULL_POINTER_OUTPUT if leader_line_type is NULL
|
222
|
+
*/
|
223
|
+
LO_RESULT LOAngularDimensionGetLeaderLineType(
|
224
|
+
LOAngularDimensionRef dimension, LOAngularDimensionLeaderLineType* leader_line_type);
|
225
|
+
|
226
|
+
/**
|
227
|
+
@brief Sets the type of leader line the angular dimension is using. New control
|
228
|
+
points will be generated if changing to a two segment or bezier leader
|
229
|
+
line type. Setting the leader line type to \ref
|
230
|
+
LOAngularDimensionLeaderLineType_Hidden will not move the dimension text.
|
231
|
+
@since LayOut 2017, API 2.0
|
232
|
+
@param[in] dimension The angular dimension object.
|
233
|
+
@param[in] leader_line_type The leader line type.
|
234
|
+
@return
|
235
|
+
- \ref SU_ERROR_NONE on success
|
236
|
+
- \ref SU_ERROR_INVALID_INPUT if dimension does not refer to a valid object
|
237
|
+
- \ref SU_ERROR_OUT_OF_RANGE if leader_line_type is not a valid value
|
238
|
+
- \ref SU_ERROR_LAYER_LOCKED if dimension is on a locked layer
|
239
|
+
- \ref SU_ERROR_ENTITY_LOCKED if dimension is locked
|
240
|
+
*/
|
241
|
+
LO_RESULT LOAngularDimensionSetLeaderLineType(
|
242
|
+
LOAngularDimensionRef dimension, LOAngularDimensionLeaderLineType leader_line_type);
|
243
|
+
|
244
|
+
/**
|
245
|
+
@brief Gets the page location for the first connection.
|
246
|
+
@since LayOut 2017, API 2.0
|
247
|
+
@param[in] dimension The angular dimension object.
|
248
|
+
@param[out] point The position of the first connection point.
|
249
|
+
@return
|
250
|
+
- \ref SU_ERROR_NONE on success
|
251
|
+
- \ref SU_ERROR_INVALID_INPUT if dimension does not refer to a valid object
|
252
|
+
- \ref SU_ERROR_NULL_POINTER_OUTPUT if point is NULL
|
253
|
+
*/
|
254
|
+
LO_RESULT LOAngularDimensionGetStartConnectionPoint(
|
255
|
+
LOAngularDimensionRef dimension, LOPoint2D* point);
|
256
|
+
|
257
|
+
/**
|
258
|
+
@brief Sets the page location for the first connection.
|
259
|
+
@since LayOut 2017, API 2.0
|
260
|
+
@param[in] dimension The angular dimension object.
|
261
|
+
@param[in] point The position for the first connection point.
|
262
|
+
@return
|
263
|
+
- \ref SU_ERROR_NONE on success
|
264
|
+
- \ref SU_ERROR_INVALID_INPUT if dimension does not refer to a valid object
|
265
|
+
- \ref SU_ERROR_LAYER_LOCKED if dimension is on a locked layer
|
266
|
+
- \ref SU_ERROR_ENTITY_LOCKED if dimension is locked
|
267
|
+
*/
|
268
|
+
LO_RESULT LOAngularDimensionSetStartConnectionPoint(
|
269
|
+
LOAngularDimensionRef dimension, const LOPoint2D* point);
|
270
|
+
|
271
|
+
/**
|
272
|
+
@brief Gets the page location for the second connection.
|
273
|
+
@since LayOut 2017, API 2.0
|
274
|
+
@param[in] dimension The angular dimension object.
|
275
|
+
@param[out] point The position of the second control point.
|
276
|
+
@return
|
277
|
+
- \ref SU_ERROR_NONE on success
|
278
|
+
- \ref SU_ERROR_INVALID_INPUT if dimension does not refer to a valid object
|
279
|
+
- \ref SU_ERROR_NULL_POINTER_OUTPUT if point is NULL
|
280
|
+
*/
|
281
|
+
LO_RESULT LOAngularDimensionGetEndConnectionPoint(
|
282
|
+
LOAngularDimensionRef dimension, LOPoint2D* point);
|
283
|
+
|
284
|
+
/**
|
285
|
+
@brief Sets the page location for the second connection.
|
286
|
+
@since LayOut 2017, API 2.0
|
287
|
+
@param[in] dimension The angular dimension object.
|
288
|
+
@param[in] point The position for the second control point.
|
289
|
+
@return
|
290
|
+
- \ref SU_ERROR_NONE on success
|
291
|
+
- \ref SU_ERROR_INVALID_INPUT if dimension does not refer to a valid object
|
292
|
+
- \ref SU_ERROR_LAYER_LOCKED if dimension is on a locked layer
|
293
|
+
- \ref SU_ERROR_ENTITY_LOCKED if dimension is locked
|
294
|
+
*/
|
295
|
+
LO_RESULT LOAngularDimensionSetEndConnectionPoint(
|
296
|
+
LOAngularDimensionRef dimension, const LOPoint2D* point);
|
297
|
+
|
298
|
+
/**
|
299
|
+
@brief Gets the page location for the start of the dimension line.
|
300
|
+
@since LayOut 2017, API 2.0
|
301
|
+
@param[in] dimension The angular dimension object.
|
302
|
+
@param[out] point The position of the start of the dimension line.
|
303
|
+
@return
|
304
|
+
- \ref SU_ERROR_NONE on success
|
305
|
+
- \ref SU_ERROR_INVALID_INPUT if dimension does not refer to a valid object
|
306
|
+
- \ref SU_ERROR_NULL_POINTER_OUTPUT if point is NULL
|
307
|
+
*/
|
308
|
+
LO_RESULT LOAngularDimensionGetStartExtentPoint(LOAngularDimensionRef dimension, LOPoint2D* point);
|
309
|
+
|
310
|
+
/**
|
311
|
+
@brief Sets the page location for the start of the dimension line. This will
|
312
|
+
also adjust the end of the dimension line to maintain the correct
|
313
|
+
dimension line length.
|
314
|
+
@since LayOut 2017, API 2.0
|
315
|
+
@param[in] dimension The angular dimension object.
|
316
|
+
@param[in] point The position of the start of the dimension line.
|
317
|
+
@return
|
318
|
+
- \ref SU_ERROR_NONE on success
|
319
|
+
- \ref SU_ERROR_INVALID_INPUT if dimension does not refer to a valid object
|
320
|
+
- \ref SU_ERROR_LAYER_LOCKED if dimension is on a locked layer
|
321
|
+
- \ref SU_ERROR_ENTITY_LOCKED if dimension is locked
|
322
|
+
*/
|
323
|
+
LO_RESULT LOAngularDimensionSetStartExtentPoint(
|
324
|
+
LOAngularDimensionRef dimension, const LOPoint2D* point);
|
325
|
+
|
326
|
+
/**
|
327
|
+
@brief Gets the page location for the end of the dimension line.
|
328
|
+
@since LayOut 2017, API 2.0
|
329
|
+
@param[in] dimension The angular dimension object.
|
330
|
+
@param[out] point The position of the end of the dimension line.
|
331
|
+
@return
|
332
|
+
- \ref SU_ERROR_NONE on success
|
333
|
+
- \ref SU_ERROR_INVALID_INPUT if dimension does not refer to a valid object
|
334
|
+
- \ref SU_ERROR_NULL_POINTER_OUTPUT if point is NULL
|
335
|
+
*/
|
336
|
+
LO_RESULT LOAngularDimensionGetEndExtentPoint(LOAngularDimensionRef dimension, LOPoint2D* point);
|
337
|
+
|
338
|
+
/**
|
339
|
+
@brief Sets the page location for the end of the dimension line. This will
|
340
|
+
also adjust the start of the dimension line to maintain the correct
|
341
|
+
dimension line length.
|
342
|
+
@since LayOut 2017, API 2.0
|
343
|
+
@param[in] dimension The angular dimension object.
|
344
|
+
@param[in] point The position of the end of the dimension line.
|
345
|
+
@return
|
346
|
+
- \ref SU_ERROR_NONE on success
|
347
|
+
- \ref SU_ERROR_INVALID_INPUT if dimension does not refer to a valid object
|
348
|
+
- \ref SU_ERROR_LAYER_LOCKED if dimension is on a locked layer
|
349
|
+
- \ref SU_ERROR_ENTITY_LOCKED if dimension is locked
|
350
|
+
*/
|
351
|
+
LO_RESULT LOAngularDimensionSetEndExtentPoint(
|
352
|
+
LOAngularDimensionRef dimension, const LOPoint2D* point);
|
353
|
+
|
354
|
+
/**
|
355
|
+
@brief Gets the page location for the start of the first extension line. The
|
356
|
+
first extension line runs from this offset point to the start extent
|
357
|
+
point.
|
358
|
+
@since LayOut 2017, API 2.0
|
359
|
+
@param[in] dimension The angular dimension object.
|
360
|
+
@param[out] point The position of the start of the extension line.
|
361
|
+
@return
|
362
|
+
- \ref SU_ERROR_NONE on success
|
363
|
+
- \ref SU_ERROR_INVALID_INPUT if dimension does not refer to a valid object
|
364
|
+
- \ref SU_ERROR_NULL_POINTER_OUTPUT if point is NULL
|
365
|
+
*/
|
366
|
+
LO_RESULT LOAngularDimensionGetStartOffsetPoint(LOAngularDimensionRef dimension, LOPoint2D* point);
|
367
|
+
|
368
|
+
/**
|
369
|
+
@brief Gets the page location for the start of the second extension line. The
|
370
|
+
second extension line runs from this offset point to the end extent
|
371
|
+
point.
|
372
|
+
@since LayOut 2017, API 2.0
|
373
|
+
@param[in] dimension The angular dimension object.
|
374
|
+
@param[out] point The position of the end of the dimension line.
|
375
|
+
@return
|
376
|
+
- \ref SU_ERROR_NONE on success
|
377
|
+
- \ref SU_ERROR_INVALID_INPUT if dimension does not refer to a valid object
|
378
|
+
- \ref SU_ERROR_NULL_POINTER_OUTPUT if point is NULL
|
379
|
+
*/
|
380
|
+
LO_RESULT LOAngularDimensionGetEndOffsetPoint(LOAngularDimensionRef dimension, LOPoint2D* point);
|
381
|
+
|
382
|
+
/**
|
383
|
+
@brief Sets the length of the offset from the first connection point to the
|
384
|
+
start of the first extension line. The connection and extent points will
|
385
|
+
not move.
|
386
|
+
@since LayOut 2017, API 2.0
|
387
|
+
@param[in] dimension The angular dimension object.
|
388
|
+
@param[in] length The length the offset to the extension line should be.
|
389
|
+
@return
|
390
|
+
- \ref SU_ERROR_NONE on success
|
391
|
+
- \ref SU_ERROR_INVALID_INPUT if dimension does not refer to a valid object
|
392
|
+
- \ref SU_ERROR_LAYER_LOCKED if dimension is on a locked layer
|
393
|
+
- \ref SU_ERROR_ENTITY_LOCKED if dimension is locked
|
394
|
+
*/
|
395
|
+
LO_RESULT LOAngularDimensionSetStartOffsetLength(LOAngularDimensionRef dimension, double length);
|
396
|
+
|
397
|
+
/**
|
398
|
+
@brief Sets the length of the offset from the second connection point to the
|
399
|
+
start of the second extension line. The connection and extent points
|
400
|
+
will not move.
|
401
|
+
@since LayOut 2017, API 2.0
|
402
|
+
@param[in] dimension The angular dimension object.
|
403
|
+
@param[in] length The length the offset to the extension line should be.
|
404
|
+
@return
|
405
|
+
- \ref SU_ERROR_NONE on success
|
406
|
+
- \ref SU_ERROR_INVALID_INPUT if dimension does not refer to a valid object
|
407
|
+
- \ref SU_ERROR_LAYER_LOCKED if dimension is on a locked layer
|
408
|
+
- \ref SU_ERROR_ENTITY_LOCKED if dimension is locked
|
409
|
+
*/
|
410
|
+
LO_RESULT LOAngularDimensionSetEndOffsetLength(LOAngularDimensionRef dimension, double length);
|
411
|
+
|
412
|
+
/**
|
413
|
+
@brief Gets the page location for the dimension arc center point.
|
414
|
+
@since LayOut 2017, API 2.0
|
415
|
+
@param[in] dimension The angular dimension object.
|
416
|
+
@param[out] point The position of the dimension arc center point.
|
417
|
+
@return
|
418
|
+
- \ref SU_ERROR_NONE on success
|
419
|
+
- \ref SU_ERROR_INVALID_INPUT if dimension does not refer to a valid object
|
420
|
+
- \ref SU_ERROR_NULL_POINTER_OUTPUT if point is NULL
|
421
|
+
*/
|
422
|
+
LO_RESULT LOAngularDimensionGetArcCenterPoint(LOAngularDimensionRef dimension, LOPoint2D* point);
|
423
|
+
|
424
|
+
/**
|
425
|
+
@brief Gets the angular dimension's radius. This is the distance from the arc
|
426
|
+
center point to the dimension line.
|
427
|
+
@since LayOut 2017, API 2.0
|
428
|
+
@param[in] dimension The angular dimension object.
|
429
|
+
@param[out] radius The dimension radius.
|
430
|
+
@return
|
431
|
+
- \ref SU_ERROR_NONE on success
|
432
|
+
- \ref SU_ERROR_INVALID_INPUT if dimension does not refer to a valid object
|
433
|
+
- \ref SU_ERROR_NULL_POINTER_OUTPUT if radius is NULL
|
434
|
+
*/
|
435
|
+
LO_RESULT LOAngularDimensionGetRadius(LOAngularDimensionRef dimension, double* radius);
|
436
|
+
|
437
|
+
/**
|
438
|
+
@brief Sets the angular dimension's radius. This is the distance from the arc
|
439
|
+
center point to the dimension line.
|
440
|
+
@since LayOut 2017, API 2.0
|
441
|
+
@param[in] dimension The angular dimension object.
|
442
|
+
@param[in] radius The dimension radius.
|
443
|
+
@return
|
444
|
+
- \ref SU_ERROR_NONE on success
|
445
|
+
- \ref SU_ERROR_INVALID_INPUT if dimension does not refer to a valid object
|
446
|
+
- \ref SU_ERROR_LAYER_LOCKED if dimension is on a locked layer
|
447
|
+
- \ref SU_ERROR_ENTITY_LOCKED if dimension is locked
|
448
|
+
- \ref SU_ERROR_OUT_OF_RANGE if radius is less than or equal to zero
|
449
|
+
*/
|
450
|
+
LO_RESULT LOAngularDimensionSetRadius(LOAngularDimensionRef dimension, double radius);
|
451
|
+
|
452
|
+
/**
|
453
|
+
@brief Gets the angular dimension's angle. The angle is represented in radians.
|
454
|
+
@since LayOut 2017, API 2.0
|
455
|
+
@param[in] dimension The angular dimension object.
|
456
|
+
@param[out] angle The dimension angle.
|
457
|
+
@return
|
458
|
+
- \ref SU_ERROR_NONE on success
|
459
|
+
- \ref SU_ERROR_INVALID_INPUT if dimension does not refer to a valid object
|
460
|
+
- \ref SU_ERROR_NULL_POINTER_OUTPUT if angle is NULL
|
461
|
+
*/
|
462
|
+
LO_RESULT LOAngularDimensionGetAngle(LOAngularDimensionRef dimension, double* angle);
|
463
|
+
|
464
|
+
#ifdef __cplusplus
|
465
|
+
} // end extern "C"
|
466
|
+
#endif // __cplusplus
|
467
|
+
|
468
|
+
#endif // LAYOUT_MODEL_ANGULARDIMENSION_H_
|