NX Open C++ 参考指南
2406 v1.1
载入中...
搜索中...
未找到
D:
Tan_NX2406C++
UGopenLib
NX2406
UGOPEN
NXOpen
Features_ShadowCurveBuilder.hxx
1
//--------------------------------------------------------------------------
2
// Copyright 2024 Siemens
3
//--------------------------------------------------------------------------
4
// C++接口JA API头文件
5
//--------------------------------------------------------------------------
6
//
7
// 源文件:
8
// Features_ShadowCurveBuilder.ja
9
//
10
// 生成工具:
11
// apiwrap
12
//
13
// 警告:
14
// 此文件自动生成 - 请勿手动编辑
15
//
16
#pragma once
17
#include <NXOpen/NXDeprecation.hxx>
18
#include <vector>
19
#include <NXOpen/NXString.hxx>
20
#include <NXOpen/Callback.hxx>
21
#include <NXOpen/Expression.hxx>
22
#include <NXOpen/GeometricUtilities_CurveSettings.hxx>
23
#include <NXOpen/Features_ServiceOrientedFeatureCurveBuilder.hxx>
24
#include <NXOpen/ScCollector.hxx>
25
#include <NXOpen/Section.hxx>
26
#include <NXOpen/libnxopencpp_features_exports.hxx>
27
#ifdef _MSC_VER
28
#pragma warning(push)
29
#pragma warning(disable:4996)
30
#endif
31
#ifdef __GNUC__
32
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
33
#endif
34
namespace
NXOpen
35
{
36
namespace
Features
37
{
38
class
ShadowCurveBuilder
;
39
}
40
class
Direction
;
41
class
Expression
;
42
namespace
Features
43
{
44
class
ServiceOrientedFeatureCurveBuilder
;
45
}
46
namespace
GeometricUtilities
47
{
48
class
CurveSettings
;
49
}
50
class
Plane
;
51
class
Point
;
52
class
ScCollector
;
53
class
Section
;
54
namespace
Features
55
{
56
class
_ShadowCurveBuilderBuilder;
57
class
ShadowCurveBuilderImpl;
147
class
NXOPENCPP_FEATURESEXPORT ShadowCurveBuilder :
public
NXOpen::Features::ServiceOrientedFeatureCurveBuilder
148
{
151
public
:
enum
LightSourceTypes
152
{
153
LightSourceTypesVector
,
154
LightSourceTypesPoint
155
};
156
158
public
:
enum
MaskTypes
159
{
160
MaskTypesBodies
,
161
MaskTypesCurves
,
162
MaskTypesAssemblyUnassociativeOnly
163
};
164
166
public
:
enum
ClippingTypes
167
{
168
ClippingTypesNone
,
169
ClippingTypesCone
,
170
ClippingTypesPyramid
,
171
ClippingTypesBody
172
};
173
175
public
:
enum
CurveLocationTypes
176
{
177
CurveLocationTypesSilhouetteCurve
,
178
CurveLocationTypesShadowonPlane
,
179
CurveLocationTypesShadowonFace
,
180
CurveLocationTypesShadowonSphere
181
};
182
184
public
:
enum
AccuracyTypes
185
{
186
AccuracyTypesUltraFine
,
187
AccuracyTypesFine
,
188
AccuracyTypesStandard
,
189
AccuracyTypesCourse
,
190
AccuracyTypesRough
191
};
192
194
public
:
enum
MaskBodyProcessingType
195
{
196
MaskBodyProcessingTypeFasterResult
,
197
MaskBodyProcessingTypeMorePreciseResult
198
};
199
private
:
ShadowCurveBuilderImpl
* m_shadowcurvebuilder_impl;
200
private
:
friend
class
_ShadowCurveBuilderBuilder;
201
protected
:
ShadowCurveBuilder
();
202
public
:
~ShadowCurveBuilder
();
206
public
:
NXOpen::Features::ShadowCurveBuilder::LightSourceTypes
LightSourceType
207
(
208
);
212
public
:
void
SetLightSourceType
213
(
214
NXOpen::Features::ShadowCurveBuilder::LightSourceTypes
lightSourceType
215
);
219
public
:
NXOpen::Point
*
OriginPoint
220
(
221
);
225
public
:
void
SetOriginPoint
226
(
227
NXOpen::Point
* originPoint
228
);
232
public
:
NXOpen::Direction
*
RayDirection
233
(
234
);
238
public
:
void
SetRayDirection
239
(
240
NXOpen::Direction
* rayDirection
241
);
245
public
:
NXOpen::Features::ShadowCurveBuilder::MaskTypes
MaskType
246
(
247
);
251
public
:
void
SetMaskType
252
(
253
NXOpen::Features::ShadowCurveBuilder::MaskTypes
maskType
254
);
258
public
:
NXOpen::ScCollector
*
MaskingBodies
259
(
260
);
264
public
:
void
SetMaskingBodies
265
(
266
NXOpen::ScCollector
* maskingBodies
267
);
271
public
:
NXOpen::Section
*
MaskingCurves
272
(
273
);
277
public
:
void
SetMaskingCurves
278
(
279
NXOpen::Section
* maskingCurves
280
);
284
public
:
NXOpen::ScCollector
*
UnassociativeMaskingBodiesFromAssembly
285
(
286
);
290
public
:
void
SetUnassociativeMaskingBodiesFromAssembly
291
(
292
NXOpen::ScCollector
* unassociativeMaskingBodiesFromAssembly
293
);
297
public
:
NXOpen::Features::ShadowCurveBuilder::ClippingTypes
ClippingType
298
(
299
);
303
public
:
void
SetClippingType
304
(
305
NXOpen::Features::ShadowCurveBuilder::ClippingTypes
clippingType
306
);
310
public
:
NXOpen::Direction
*
BeamDirection
311
(
312
);
316
public
:
void
SetBeamDirection
317
(
318
NXOpen::Direction
* beamDirection
319
);
324
public
:
NXOpen::Expression
*
HalfAngle
325
(
326
);
331
public
:
NXOpen::Expression
*
Angle
332
(
333
);
337
public
:
NXOpen::Direction
*
UpVector
338
(
339
);
343
public
:
void
SetUpVector
344
(
345
NXOpen::Direction
* upVector
346
);
351
public
:
NXOpen::Expression
*
WidthHalfAngle
352
(
353
);
358
public
:
NXOpen::Expression
*
WidthAngle
359
(
360
);
365
public
:
NXOpen::Expression
*
VerticalHalfAngle
366
(
367
);
372
public
:
NXOpen::Expression
*
VerticalAngle
373
(
374
);
378
public
:
NXOpen::ScCollector
*
ClippingBody
379
(
380
);
384
public
:
void
SetClippingBody
385
(
386
NXOpen::ScCollector
* clippingBody
387
);
391
public
:
NXOpen::Features::ShadowCurveBuilder::CurveLocationTypes
CurveLocationType
392
(
393
);
397
public
:
void
SetCurveLocationType
398
(
399
NXOpen::Features::ShadowCurveBuilder::CurveLocationTypes
curveLocationType
400
);
404
public
:
NXOpen::Plane
*
CurveLocationPlane
405
(
406
);
410
public
:
void
SetCurveLocationPlane
411
(
412
NXOpen::Plane
* curveLocationPlane
413
);
417
public
:
bool
EnableShadowRange
418
(
419
);
423
public
:
void
SetEnableShadowRange
424
(
425
bool
enableShadowRange
426
);
430
public
:
NXOpen::Expression
*
ShadowRangeOnPlane
431
(
432
);
436
public
:
NXOpen::Expression
*
SphereDiameter
437
(
438
);
442
public
:
NXOpen::ScCollector
*
CurveLocationFaces
443
(
444
);
448
public
:
void
SetCurveLocationFaces
449
(
450
NXOpen::ScCollector
* curveLocationFaces
451
);
455
public
:
NXOpen::Features::ShadowCurveBuilder::AccuracyTypes
AccuracyType
456
(
457
);
461
public
:
void
SetAccuracyType
462
(
463
NXOpen::Features::ShadowCurveBuilder::AccuracyTypes
accuracyType
464
);
468
public
:
NXOpen::GeometricUtilities::CurveSettings
*
CurveSettings
469
(
470
);
474
public
:
void
SetCurveSettings
475
(
476
NXOpen::GeometricUtilities::CurveSettings
* curveSettingData
477
);
481
public
:
bool
OptimizeCurveFlag
482
(
483
);
487
public
:
void
SetOptimizeCurveFlag
488
(
489
bool
optimizeCurveFlag
490
);
494
public
:
double
DistanceThreshold
495
(
496
);
500
public
:
void
SetDistanceThreshold
501
(
502
double
distanceThreshold
503
);
507
public
:
NXOpen::Features::ShadowCurveBuilder::MaskBodyProcessingType
MaskBodyProcessingTypes
508
(
509
);
513
public
:
void
SetMaskBodyProcessingTypes
514
(
515
NXOpen::Features::ShadowCurveBuilder::MaskBodyProcessingType
maskBodyProcessingTypes
516
);
517
};
518
}
519
}
520
#ifdef _MSC_VER
521
#pragma warning(pop)
522
#endif
523
#ifdef __GNUC__
524
#ifndef NX_NO_GCC_DEPRECATION_WARNINGS
525
#pragma GCC diagnostic warning "-Wdeprecated-declarations"
526
#endif
527
#endif
528
#undef EXPORTLIBRARY