Gocator API
 All Classes Files Functions Variables Typedefs Macros Groups Pages
GoSurfaceTypes.h
Go to the documentation of this file.
1 /// @cond (Gocator_2x00 || Gocator_3x00)
2 
3 /**
4  * @file GoSurfaceTypes.h
5  * @brief Declares the GoSurfaceType classes.
6  *
7  * @internal
8  * Copyright (C) 2011-2012 by LMI Technologies Inc.
9  * Licensed under the MIT License.
10  * Redistributed files must retain the above copyright notice.
11  */
12 #ifndef GO_API_SURFACE_TYPES_H
13 #define GO_API_SURFACE_TYPES_H
14 
15 #include <GoSdk/GoSdkDef.h>
16 kBeginHeader()
17 
18 /**
19  * @struct GoSurfaceLocation
20  * @ingroup GoSdk
21  * @brief Represents a surface centroid
22  */
23 typedef k32s GoSurfaceLocation;
24 
25 #define GO_SURFACE_LOCATION_TYPE_MAX (0) ///< Location based on the maximum point
26 #define GO_SURFACE_LOCATION_TYPE_MIN (1) ///< Location based on the minimum point
27 #define GO_SURFACE_LOCATION_TYPE_2D_CENTROID (2) ///< Location based on a 2d centroid.
28 #define GO_SURFACE_LOCATION_TYPE_3D_CENTROID (3) ///< Location based on a 3d centroid.
29 #define GO_SURFACE_LOCATION_TYPE_AVG (4) ///< Location based on the average point.
30 #define GO_SURFACE_LOCATION_TYPE_MEDIAN (5) ///< Location based on the median point.
31 
32 
33 typedef k32s GoSurfaceFeatureType;
34 
35 #define GO_SURFACE_FEATURE_TYPE_CENTROID_2D (0)
36 #define GO_SURFACE_FEATURE_TYPE_CENTROID_3D (1)
37 #define GO_SURFACE_FEATURE_TYPE_X_MAX (2)
38 #define GO_SURFACE_FEATURE_TYPE_X_MIN (3)
39 #define GO_SURFACE_FEATURE_TYPE_Y_MAX (4)
40 #define GO_SURFACE_FEATURE_TYPE_Y_MIN (5)
41 #define GO_SURFACE_FEATURE_TYPE_Z_MAX (6)
42 #define GO_SURFACE_FEATURE_TYPE_Z_MIN (7)
43 
44 /**
45 * @class GoSurfaceRegion2d
46 * @extends kObject
47 * @ingroup GoSdk
48 * @brief Represents a ...
49 */
50 typedef kObject GoSurfaceRegion2d;
51 
52 /**
53  * Sets the X position.
54  *
55  * @public @memberof GoSurfaceRegion2d
56  * @param region GoSurfaceRegion2d object.
57  * @param x The X position to set.
58  * @return Operation status.
59  */
60 GoFx(kStatus) GoSurfaceRegion2d_SetX(GoSurfaceRegion2d region, k64f x);
61 
62 /**
63  * Gets the X position.
64  *
65  * @public @memberof GoSurfaceRegion2d
66  * @param region GoSurfaceRegion2d object.
67  * @return The X position of the region.
68  */
69 GoFx(k64f) GoSurfaceRegion2d_X(GoSurfaceRegion2d region);
70 
71 /**
72  * Sets the Y position.
73  *
74  * @public @memberof GoSurfaceRegion2d
75  * @param region GoSurfaceRegion2d object.
76  * @param value The Y position to set.
77  * @return Operation status.
78  */
79 GoFx(kStatus) GoSurfaceRegion2d_SetY(GoSurfaceRegion2d region, k64f value);
80 
81 /**
82  * Gets the Y position.
83  *
84  * @public @memberof GoSurfaceRegion2d
85  * @param region GoSurfaceRegion2d object.
86  * @return The Y position of the region.
87  */
88 GoFx(k64f) GoSurfaceRegion2d_Y(GoSurfaceRegion2d region);
89 
90 /**
91  * Sets the width.
92  *
93  * @public @memberof GoSurfaceRegion2d
94  * @param region GoSurfaceRegion2d object.
95  * @param width The width to set.
96  * @return Operation status.
97  */
98 GoFx(kStatus) GoSurfaceRegion2d_SetWidth(GoSurfaceRegion2d region, k64f width);
99 
100 /**
101  * Gets the width.
102  *
103  * @public @memberof GoSurfaceRegion2d
104  * @param region GoSurfaceRegion2d object.
105  * @return The width of the region.
106  */
107 GoFx(k64f) GoSurfaceRegion2d_Width(GoSurfaceRegion2d region);
108 
109 /**
110  * Sets the length.
111  *
112  * @public @memberof GoSurfaceRegion2d
113  * @param region GoSurfaceRegion2d object.
114  * @param length The length to set.
115  * @return Operation status.
116  */
117 GoFx(kStatus) GoSurfaceRegion2d_SetLength(GoSurfaceRegion2d region, k64f length);
118 
119 /**
120  * Gets the length.
121  *
122  * @public @memberof GoSurfaceRegion2d
123  * @param region GoSurfaceRegion2d object.
124  * @return The length of the region.
125  */
126 GoFx(k64f) GoSurfaceRegion2d_Length(GoSurfaceRegion2d region);
127 
128 
129 /**
130 * @class GoRegion3d
131 * @extends kObject
132 * @ingroup GoSdk
133 * @brief Represents a ...
134 */
135 typedef kObject GoRegion3d;
136 
137 /**
138  * Sets the X position.
139  *
140  * @public @memberof GoRegion3d
141  * @param region GoRegion3d object.
142  * @param x The X position to set.
143  * @return Operation status.
144  */
145 GoFx(kStatus) GoRegion3d_SetX(GoRegion3d region, k64f x);
146 
147 /**
148  * Gets the X position.
149  *
150  * @public @memberof GoRegion3d
151  * @param region GoRegion3d object.
152  * @return The X position of the region.
153  */
154 GoFx(k64f) GoRegion3d_X(GoRegion3d region);
155 
156 /**
157  * Sets the Y position.
158  *
159  * @public @memberof GoRegion3d
160  * @param region GoRegion3d object.
161  * @param value The Y position to set.
162  * @return Operation status.
163  */
164 GoFx(kStatus) GoRegion3d_SetY(GoRegion3d region, k64f value);
165 
166 /**
167  * Gets the Y position.
168  *
169  * @public @memberof GoRegion3d
170  * @param region GoRegion3d object.
171  * @return The Y position of the region.
172  */
173 GoFx(k64f) GoRegion3d_Y(GoRegion3d region);
174 
175 /**
176  * Sets the Z-position.
177  *
178  * @public @memberof GoRegion3d
179  * @param region GoRegion3d object.
180  * @param z The Z-position to set.
181  * @return Operation status.
182  */
183 GoFx(kStatus) GoRegion3d_SetZ(GoRegion3d region, k64f z);
184 
185 /**
186  * Gets the Z-position.
187  *
188  * @public @memberof GoRegion3d
189  * @param region GoRegion3d object.
190  * @return The Z-position of the region.
191  */
192 GoFx(k64f) GoRegion3d_Z(GoRegion3d region);
193 
194 /**
195  * Sets the width.
196  *
197  * @public @memberof GoRegion3d
198  * @param region GoRegion3d object.
199  * @param width The width to set.
200  * @return Operation status.
201  */
202 GoFx(kStatus) GoRegion3d_SetWidth(GoRegion3d region, k64f width);
203 
204 /**
205  * Gets the width.
206  *
207  * @public @memberof GoRegion3d
208  * @param region GoRegion3d object.
209  * @return The width of the region.
210  */
211 GoFx(k64f) GoRegion3d_Width(GoRegion3d region);
212 
213 /**
214  * Sets the length.
215  *
216  * @public @memberof GoRegion3d
217  * @param region GoRegion3d object.
218  * @param length The length to set.
219  * @return Operation status.
220  */
221 GoFx(kStatus) GoRegion3d_SetLength(GoRegion3d region, k64f length);
222 
223 /**
224  * Gets the length.
225  *
226  * @public @memberof GoRegion3d
227  * @param region GoRegion3d object.
228  * @return The length of the region.
229  */
230 GoFx(k64f) GoRegion3d_Length(GoRegion3d region);
231 
232 /**
233  * Sets the height.
234  *
235  * @public @memberof GoRegion3d
236  * @param region GoRegion3d object.
237  * @param height The height to set.
238  * @return Operation status.
239  */
240 GoFx(kStatus) GoRegion3d_SetHeight(GoRegion3d region, k64f height);
241 
242 /**
243  * Gets the height.
244  *
245  * @public @memberof GoRegion3d
246  * @param region GoRegion3d object.
247  * @return The height of the region.
248  */
249 GoFx(k64f) GoRegion3d_Height(GoRegion3d region);
250 
251 
252 /**
253 * @class GoCylinderRegion
254 * @extends kObject
255 * @ingroup GoSdk
256 * @brief Represents a ...
257 */
258 typedef kObject GoCylinderRegion;
259 
260 /**
261  * Sets the X position.
262  *
263  * @public @memberof GoCylinderRegion
264  * @param region GoCylinderRegion object.
265  * @param x The X position to set.
266  * @return Operation status.
267  */
268 GoFx(kStatus) GoCylinderRegion_SetX(GoCylinderRegion region, k64f x);
269 
270 /**
271  * Gets the X position.
272  *
273  * @public @memberof GoCylinderRegion
274  * @param region GoCylinderRegion object.
275  * @return The X position of the region.
276  */
277 GoFx(k64f) GoCylinderRegion_X(GoCylinderRegion region);
278 
279 /**
280  * Sets the Y position.
281  *
282  * @public @memberof GoCylinderRegion
283  * @param region GoCylinderRegion object.
284  * @param value The Y position to set.
285  * @return Operation status.
286  */
287 GoFx(kStatus) GoCylinderRegion_SetY(GoCylinderRegion region, k64f value);
288 
289 /**
290  * Gets the Y position.
291  *
292  * @public @memberof GoCylinderRegion
293  * @param region GoCylinderRegion object.
294  * @return The Y position of the region.
295  */
296 GoFx(k64f) GoCylinderRegion_Y(GoCylinderRegion region);
297 
298 /**
299  * Sets the Z-position.
300  *
301  * @public @memberof GoCylinderRegion
302  * @param region GoCylinderRegion object.
303  * @param z The Z-position to set.
304  * @return Operation status.
305  */
306 GoFx(kStatus) GoCylinderRegion_SetZ(GoCylinderRegion region, k64f z);
307 
308 /**
309  * Gets the Z-position.
310  *
311  * @public @memberof GoCylinderRegion
312  * @param region GoCylinderRegion object.
313  * @return The Z-position of the region.
314  */
315 GoFx(k64f) GoCylinderRegion_Z(GoCylinderRegion region);
316 
317 /**
318  * Sets the radius.
319  *
320  * @public @memberof GoCylinderRegion
321  * @param region GoCylinderRegion object.
322  * @param value The radius to set.
323  * @return Operation status.
324  */
325 GoFx(kStatus) GoCylinderRegion_SetRadius(GoCylinderRegion region, k64f value);
326 
327 /**
328  * Gets the radius.
329  *
330  * @public @memberof GoCylinderRegion
331  * @param region GoCylinderRegion object.
332  * @return The radius of the region.
333  */
334 GoFx(k64f) GoCylinderRegion_Radius(GoCylinderRegion region);
335 
336 /**
337  * Sets the Height.
338  *
339  * @public @memberof GoCylinderRegion
340  * @param region GoCylinderRegion object.
341  * @param value The height to set.
342  * @return Operation status.
343  */
344 GoFx(kStatus) GoCylinderRegion_SetHeight(GoCylinderRegion region, k64f value);
345 
346 /**
347  * Gets the Height.
348  *
349  * @public @memberof GoCylinderRegion
350  * @param region GoCylinderRegion object.
351  * @return The height of the region.
352  */
353 GoFx(k64f) GoCylinderRegion_Height(GoCylinderRegion region);
354 
355 
356 /**
357 * @class GoSurfaceFeature
358 * @extends kObject
359 * @ingroup GoSdk
360 * @brief Represents a ...
361 */
362 typedef kObject GoSurfaceFeature;
363 
364 GoFx(GoSurfaceFeatureType) GoSurfaceFeature_Type(GoSurfaceFeature feature);
365 GoFx(kStatus) GoSurfaceFeature_SetType(GoSurfaceFeature feature, GoSurfaceFeatureType type);
366 
367 GoFx(kBool) GoSurfaceFeature_RegionEnabled(GoSurfaceFeature feature);
368 GoFx(kStatus) GoSurfaceFeature_EnableRegion(GoSurfaceFeature feature, kBool enable);
369 
370 GoFx(GoRegion3d) GoSurfaceFeature_Region(GoSurfaceFeature feature);
371 
372 kEndHeader()
373 #include <GoSdk/GoSurfaceTypes.x.h>
374 
375 #endif
376 
377 /// @endcond
k64f GoCylinderRegion_Y(GoCylinderRegion region)
Gets the Y position.
k64f GoRegion3d_Z(GoRegion3d region)
Gets the Z-position.
kStatus GoSurfaceRegion2d_SetWidth(GoSurfaceRegion2d region, k64f width)
Sets the width.
kStatus GoCylinderRegion_SetY(GoCylinderRegion region, k64f value)
Sets the Y position.
kStatus GoSurfaceRegion2d_SetY(GoSurfaceRegion2d region, k64f value)
Sets the Y position.
k64f GoRegion3d_Length(GoRegion3d region)
Gets the length.
k64f GoCylinderRegion_Height(GoCylinderRegion region)
Gets the Height.
k64f GoRegion3d_Height(GoRegion3d region)
Gets the height.
k64f GoRegion3d_X(GoRegion3d region)
Gets the X position.
kStatus GoRegion3d_SetZ(GoRegion3d region, k64f z)
Sets the Z-position.
Represents a ...
kStatus GoRegion3d_SetLength(GoRegion3d region, k64f length)
Sets the length.
kStatus GoCylinderRegion_SetX(GoCylinderRegion region, k64f x)
Sets the X position.
Essential API declarations.
Represents a surface centroid.
Definition: GoSurfaceTypes.h:16
k64f GoSurfaceRegion2d_Y(GoSurfaceRegion2d region)
Gets the Y position.
Represents a ...
k64f GoSurfaceRegion2d_Length(GoSurfaceRegion2d region)
Gets the length.
k64f GoCylinderRegion_Z(GoCylinderRegion region)
Gets the Z-position.
Represents a ...
k64f GoCylinderRegion_X(GoCylinderRegion region)
Gets the X position.
kStatus GoSurfaceRegion2d_SetLength(GoSurfaceRegion2d region, k64f length)
Sets the length.
kStatus GoRegion3d_SetHeight(GoRegion3d region, k64f height)
Sets the height.
k64f GoSurfaceRegion2d_X(GoSurfaceRegion2d region)
Gets the X position.
kStatus GoCylinderRegion_SetHeight(GoCylinderRegion region, k64f value)
Sets the Height.
kStatus GoRegion3d_SetY(GoRegion3d region, k64f value)
Sets the Y position.
k64f GoRegion3d_Width(GoRegion3d region)
Gets the width.
kStatus GoSurfaceRegion2d_SetX(GoSurfaceRegion2d region, k64f x)
Sets the X position.
kStatus GoCylinderRegion_SetRadius(GoCylinderRegion region, k64f value)
Sets the radius.
kStatus GoRegion3d_SetWidth(GoRegion3d region, k64f width)
Sets the width.
k64f GoCylinderRegion_Radius(GoCylinderRegion region)
Gets the radius.
kStatus GoCylinderRegion_SetZ(GoCylinderRegion region, k64f z)
Sets the Z-position.
k64f GoRegion3d_Y(GoRegion3d region)
Gets the Y position.
kStatus GoRegion3d_SetX(GoRegion3d region, k64f x)
Sets the X position.
Represents a ...
k64f GoSurfaceRegion2d_Width(GoSurfaceRegion2d region)
Gets the width.