NX Open C++ 参考指南
2406 v1.1
载入中...
搜索中...
未找到
D:
Tan_NX2406C++
UGopenLib
NX2406
UGOPEN
NXOpen
Features_ProjectCurveBuilder.hxx
1
//--------------------------------------------------------------------------
2
// Copyright 2024 Siemens
3
//--------------------------------------------------------------------------
4
// C++接口头文件,用于JA API
5
//--------------------------------------------------------------------------
6
//
7
// 源文件:
8
// Features_ProjectCurveBuilder.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_CurveFitData.hxx>
23
#include <NXOpen/GeometricUtilities_CurveFitJoin.hxx>
24
#include <NXOpen/GeometricUtilities_CurveOptions.hxx>
25
#include <NXOpen/Features_FeatureBuilder.hxx>
26
#include <NXOpen/Section.hxx>
27
#include <NXOpen/SelectObject.hxx>
28
#include <NXOpen/SelectObjectList.hxx>
29
#include <NXOpen/libnxopencpp_features_exports.hxx>
30
#ifdef _MSC_VER
31
#pragma warning(push)
32
#pragma warning(disable:4996)
33
#endif
34
#ifdef __GNUC__
35
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
36
#endif
37
namespace
NXOpen
38
{
39
namespace
Features
40
{
41
class
ProjectCurveBuilder
;
42
}
43
class
Direction
;
44
class
Expression
;
45
namespace
Features
46
{
47
class
FeatureBuilder
;
48
}
49
namespace
GeometricUtilities
50
{
51
class
CurveFitData
;
52
}
53
namespace
GeometricUtilities
54
{
55
class
CurveFitJoin
;
56
}
57
namespace
GeometricUtilities
58
{
59
class
CurveOptions
;
60
}
61
class
Plane
;
62
class
Point
;
63
class
Section
;
64
class
SelectDisplayableObject
;
65
class
SelectObjectList
;
66
namespace
Features
67
{
68
class
_ProjectCurveBuilderBuilder;
69
class
ProjectCurveBuilderImpl;
142
class
NXOPENCPP_FEATURESEXPORT ProjectCurveBuilder :
public
NXOpen::Features::FeatureBuilder
143
{
145
public
:
enum
DirectionType
146
{
147
DirectionTypeAlongFaceNormal
,
148
DirectionTypeTowardPoint
,
149
DirectionTypeTowardLine
,
150
DirectionTypeAlongVector
,
151
DirectionTypeAngleToVector
152
};
153
154
public
:
enum
ProjectionOptionType
155
{
156
ProjectionOptionTypeNone
,
157
ProjectionOptionTypeProjectBothSides
,
158
ProjectionOptionTypeEqualArcLength
159
};
160
161
public
:
enum
ArcLengthType
162
{
163
ArcLengthTypeBothXY
,
164
ArcLengthTypeFirstXThenY
,
165
ArcLengthTypeFirstYThenX
,
166
ArcLengthTypeXOnly
,
167
ArcLengthTypeYOnly
168
};
169
private
:
ProjectCurveBuilderImpl
* m_projectcurvebuilder_impl;
170
private
:
friend
class
_ProjectCurveBuilderBuilder;
171
protected
:
ProjectCurveBuilder
();
172
public
:
~ProjectCurveBuilder
();
176
public
:
NXOpen::Section
*
SectionToProject
177
(
178
);
182
public
:
NXOpen::SelectObjectList
*
FaceToProjectTo
183
(
184
);
188
public
:
NXOpen::Plane
*
PlaneToProjectTo
189
(
190
);
194
public
:
void
SetPlaneToProjectTo
195
(
196
NXOpen::Plane
* projectedPlane
197
);
201
public
:
NXOpen::Features::ProjectCurveBuilder::DirectionType
ProjectionDirectionMethod
202
(
203
);
207
public
:
void
SetProjectionDirectionMethod
208
(
209
NXOpen::Features::ProjectCurveBuilder::DirectionType
directionMethod
210
);
214
public
:
NXOpen::Point
*
PointToProjectToward
215
(
216
);
220
public
:
void
SetPointToProjectToward
221
(
222
NXOpen::Point
* towardPoint
223
);
227
public
:
NXOpen::Point
*
ReferencePointForEqualArcLength
228
(
229
);
233
public
:
void
SetReferencePointForEqualArcLength
234
(
235
NXOpen::Point
* referencePoint
236
);
240
public
:
NXOpen::SelectDisplayableObject
*
LineToProjectToward
241
(
242
);
246
public
:
NXOpen::Direction
*
ProjectionVector
247
(
248
);
252
public
:
void
SetProjectionVector
253
(
254
NXOpen::Direction
* alongVector
255
);
259
public
:
NXOpen::Features::ProjectCurveBuilder::ProjectionOptionType
ProjectionOption
260
(
261
);
265
public
:
void
SetProjectionOption
266
(
267
NXOpen::Features::ProjectCurveBuilder::ProjectionOptionType
projectionOption
268
);
272
public
:
NXOpen::Expression
*
AngleToProjectionVector
273
(
274
);
278
public
:
NXOpen::Direction
*
XVectorForEqualArcLength
279
(
280
);
284
public
:
void
SetXVectorForEqualArcLength
285
(
286
NXOpen::Direction
* xVector
287
);
291
public
:
NXOpen::Features::ProjectCurveBuilder::ArcLengthType
EqualArcLengthMethod
292
(
293
);
297
public
:
void
SetEqualArcLengthMethod
298
(
299
NXOpen::Features::ProjectCurveBuilder::ArcLengthType
arcLengthMethod
300
);
304
public
:
NXOpen::GeometricUtilities::CurveOptions
*
InputCurvesOption
305
(
306
);
311
public
:
NX_DEPRECATED
(
"Deprecated in NX8.0.0. Use NXOpen::Features::ProjectCurveBuilder::CurveFitData instead"
)
NXOpen
::
GeometricUtilities
::CurveFitJoin * CurveFitJoinData
312
(
313
);
317
public:
double
Tolerance
318
(
319
);
323
public:
NXOpen
::
GeometricUtilities
::
CurveFitData
*
CurveFitData
324
(
325
);
329
public:
void
SetTolerance
330
(
331
double
tolerance
332
);
339
public:
double
BridgedGapSize
340
(
341
);
348
public:
void
SetBridgedGapSize
349
(
350
double
bridgedGapSize
351
);
355
public:
bool
GapOption
356
(
357
);
361
public:
void
SetGapOption
362
(
363
bool
gapOption
364
);
371
public:
bool
NearestPointOption
372
(
373
);
380
public:
void
SetNearestPointOption
381
(
382
bool
nearestPointOption
383
);
384
};
385
}
386
}
387
#ifdef _MSC_VER
388
#pragma warning(pop)
389
#endif
390
#ifdef __GNUC__
391
#ifndef NX_NO_GCC_DEPRECATION_WARNINGS
392
#pragma GCC diagnostic warning "-Wdeprecated-declarations"
393
#endif
394
#endif
395
#undef EXPORTLIBRARY