NX Open C++ 参考指南
2406 v1.1
载入中...
搜索中...
未找到
D:
Tan_NX2406C++
UGopenLib
NX2406
UGOPEN
NXOpen
GeometricAnalysis_GeometricProperties.hxx
1
//--------------------------------------------------------------------------
2
// Copyright 2024 Siemens
3
//--------------------------------------------------------------------------
4
// C++接口到JA API的头文件
5
//--------------------------------------------------------------------------
6
//
7
// 源文件:
8
// GeometricAnalysis_GeometricProperties.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/Builder.hxx>
22
#include <NXOpen/SelectObjectList.hxx>
23
#include <NXOpen/ugmath.hxx>
24
#include <NXOpen/libnxopencpp_geometricanalysis_exports.hxx>
25
#ifdef _MSC_VER
26
#pragma warning(push)
27
#pragma warning(disable:4996)
28
#endif
29
#ifdef __GNUC__
30
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
31
#endif
32
namespace
NXOpen
33
{
34
namespace
GeometricAnalysis
35
{
36
class
GeometricProperties
;
37
}
38
class
Builder
;
39
class
NXObject
;
40
class
SelectObjectList
;
41
namespace
GeometricAnalysis
42
{
43
class
_GeometricPropertiesBuilder;
44
class
GeometricPropertiesImpl;
49
class
NXOPENCPP_GEOMETRICANALYSISEXPORT GeometricProperties :
public
NXOpen::Builder
50
{
54
public
:
enum
OutputType
55
{
56
OutputTypeDynamic
,
57
OutputTypeStatic
58
};
59
60
public
:
enum
Entity
61
{
62
EntityFace
,
63
EntityEdge
,
64
EntityCaeFace
,
65
EntityCaeCurve
66
};
67
68
public
:
69
struct
Face
70
{
71
public
:
double
UParamater
;
72
public
:
double
VParamater
;
73
public
:
NXOpen::Point3d
PositionInWcs
;
74
public
:
NXOpen::Vector3d
UDerivativeInWcs
;
75
public
:
NXOpen::Vector3d
VDerivativeInWcs
;
76
public
:
NXOpen::Vector3d
NormalInWcs
;
77
public
:
NXOpen::Point3d
Position
;
78
public
:
NXOpen::Vector3d
UDerivative
;
79
public
:
NXOpen::Vector3d
VDerivative
;
80
public
:
NXOpen::Vector3d
Normal
;
81
public
:
double
InvOfMinRadiusOfCurvature
;
82
public
:
double
InvOfMaxRadiusOfCurvature
;
83
public
: Face() :
84
UParamater
(),
85
VParamater
(),
86
PositionInWcs
(),
87
UDerivativeInWcs
(),
88
VDerivativeInWcs
(),
89
NormalInWcs
(),
90
Position
(),
91
UDerivative
(),
92
VDerivative
(),
93
Normal
(),
94
InvOfMinRadiusOfCurvature
(),
95
InvOfMaxRadiusOfCurvature
()
96
{
97
}
99
public
:
Face
(
double
uParamaterInitial ,
100
double
vParamaterInitial ,
101
const
NXOpen::Point3d
&positionInWcsInitial ,
102
const
NXOpen::Vector3d
&uDerivativeInWcsInitial ,
103
const
NXOpen::Vector3d
&vDerivativeInWcsInitial ,
104
const
NXOpen::Vector3d
&normalInWcsInitial ,
105
const
NXOpen::Point3d
&positionInitial ,
106
const
NXOpen::Vector3d
&uDerivativeInitial ,
107
const
NXOpen::Vector3d
&vDerivativeInitial ,
108
const
NXOpen::Vector3d
&normalInitial ,
109
double
invOfMinRadiusOfCurvatureInitial ,
110
double
invOfMaxRadiusOfCurvatureInitial ) :
111
UParamater
(uParamaterInitial),
112
VParamater
(vParamaterInitial),
113
PositionInWcs
(positionInWcsInitial),
114
UDerivativeInWcs
(uDerivativeInWcsInitial),
115
VDerivativeInWcs
(vDerivativeInWcsInitial),
116
NormalInWcs
(normalInWcsInitial),
117
Position
(positionInitial),
118
UDerivative
(uDerivativeInitial),
119
VDerivative
(vDerivativeInitial),
120
Normal
(normalInitial),
121
InvOfMinRadiusOfCurvature
(invOfMinRadiusOfCurvatureInitial),
122
InvOfMaxRadiusOfCurvature
(invOfMaxRadiusOfCurvatureInitial)
123
{
124
}
125
};
126
127
public
:
128
struct
Edge
129
{
130
public
:
double
ParameterPercentage
;
131
public
:
double
Parameter
;
132
public
:
NXOpen::Point3d
PositionInWcs
;
133
public
:
NXOpen::Point3d
Position
;
134
public
:
NXOpen::Vector3d
TangentInWcs
;
135
public
:
NXOpen::Vector3d
Tangent
;
136
public
:
NXOpen::Vector3d
NormalInWcs
;
137
public
:
NXOpen::Vector3d
Normal
;
138
public
:
NXOpen::Vector3d
BinormalInWcs
;
139
public
:
NXOpen::Vector3d
Binormal
;
140
public
:
double
Torsion
;
141
public
:
double
Curvature
;
142
public
: Edge() :
143
ParameterPercentage
(),
144
Parameter
(),
145
PositionInWcs
(),
146
Position
(),
147
TangentInWcs
(),
148
Tangent
(),
149
NormalInWcs
(),
150
Normal
(),
151
BinormalInWcs
(),
152
Binormal
(),
153
Torsion
(),
154
Curvature
()
155
{
156
}
158
public
:
Edge
(
double
parameterPercentageInitial ,
159
double
parameterInitial ,
160
const
NXOpen::Point3d
&positionInWcsInitial ,
161
const
NXOpen::Point3d
&positionInitial ,
162
const
NXOpen::Vector3d
&tangentInWcsInitial ,
163
const
NXOpen::Vector3d
&tangentInitial ,
164
const
NXOpen::Vector3d
&normalInWcsInitial ,
165
const
NXOpen::Vector3d
&normalInitial ,
166
const
NXOpen::Vector3d
&binormalInWcsInitial ,
167
const
NXOpen::Vector3d
&binormalInitial ,
168
double
torsionInitial ,
169
double
curvatureInitial ) :
170
ParameterPercentage
(parameterPercentageInitial),
171
Parameter
(parameterInitial),
172
PositionInWcs
(positionInWcsInitial),
173
Position
(positionInitial),
174
TangentInWcs
(tangentInWcsInitial),
175
Tangent
(tangentInitial),
176
NormalInWcs
(normalInWcsInitial),
177
Normal
(normalInitial),
178
BinormalInWcs
(binormalInWcsInitial),
179
Binormal
(binormalInitial),
180
Torsion
(torsionInitial),
181
Curvature
(curvatureInitial)
182
{
183
}
184
};
185
186
public
:
187
struct
CaeFace
188
{
189
public
:
NXOpen::Vector3d
ClosestPoint
;
190
public
:
double
UParameter
;
191
public
:
double
VParameter
;
192
public
:
NXOpen::Vector3d
Normal
;
193
public
:
NXOpen::Point3d
ClosestPointInWcs
;
194
public
:
NXOpen::Vector3d
NormalInWcs
;
195
public
:
NXOpen::Vector3d
UDerivative
;
196
public
:
NXOpen::Vector3d
VDerivative
;
197
public
:
NXOpen::Vector3d
UDerivativeInWcs
;
198
public
:
NXOpen::Vector3d
VDerivativeInWcs
;
199
public
: CaeFace() :
200
ClosestPoint
(),
201
UParameter
(),
202
VParameter
(),
203
Normal
(),
204
ClosestPointInWcs
(),
205
NormalInWcs
(),
206
UDerivative
(),
207
VDerivative
(),
208
UDerivativeInWcs
(),
209
VDerivativeInWcs
()
210
{
211
}
213
public
:
CaeFace
(
const
NXOpen::Vector3d
&closestPointInitial ,
214
double
uParameterInitial ,
215
double
vParameterInitial ,
216
const
NXOpen::Vector3d
&normalInitial ,
217
const
NXOpen::Point3d
&closestPointInWcsInitial ,
218
const
NXOpen::Vector3d
&normalInWcsInitial ,
219
const
NXOpen::Vector3d
&uDerivativeInitial ,
220
const
NXOpen::Vector3d
&vDerivativeInitial ,
221
const
NXOpen::Vector3d
&uDerivativeInWcsInitial ,
222
const
NXOpen::Vector3d
&vDerivativeInWcsInitial ) :
223
ClosestPoint
(closestPointInitial),
224
UParameter
(uParameterInitial),
225
VParameter
(vParameterInitial),
226
Normal
(normalInitial),
227
ClosestPointInWcs
(closestPointInWcsInitial),
228
NormalInWcs
(normalInWcsInitial),
229
UDerivative
(uDerivativeInitial),
230
VDerivative
(vDerivativeInitial),
231
UDerivativeInWcs
(uDerivativeInWcsInitial),
232
VDerivativeInWcs
(vDerivativeInWcsInitial)
233
{
234
}
235
};
236
237
public
:
238
struct
CaeCurve
239
{
240
public
:
double
ArcLengthParameter
;
241
public
:
double
UnitArcLengthParameter
;
242
public
:
NXOpen::Point3d
ClosestPointInWcs
;
243
public
:
NXOpen::Vector3d
NormalInWcs
;
244
public
:
NXOpen::Vector3d
TangentInWcs
;
245
public
:
NXOpen::Vector3d
Tangent
;
246
public
:
NXOpen::Vector3d
Normal
;
247
public
:
NXOpen::Point3d
ClosestPoint
;
248
public
: CaeCurve() :
249
ArcLengthParameter
(),
250
UnitArcLengthParameter
(),
251
ClosestPointInWcs
(),
252
NormalInWcs
(),
253
TangentInWcs
(),
254
Tangent
(),
255
Normal
(),
256
ClosestPoint
()
257
{
258
}
260
public
:
CaeCurve
(
double
arcLengthParameterInitial ,
261
double
unitArcLengthParameterInitial ,
262
const
NXOpen::Point3d
&closestPointInWcsInitial ,
263
const
NXOpen::Vector3d
&normalInWcsInitial ,
264
const
NXOpen::Vector3d
&tangentInWcsInitial ,
265
const
NXOpen::Vector3d
&tangentInitial ,
266
const
NXOpen::Vector3d
&normalInitial ,
267
const
NXOpen::Point3d
&closestPointInitial ) :
268
ArcLengthParameter
(arcLengthParameterInitial),
269
UnitArcLengthParameter
(unitArcLengthParameterInitial),
270
ClosestPointInWcs
(closestPointInWcsInitial),
271
NormalInWcs
(normalInWcsInitial),
272
TangentInWcs
(tangentInWcsInitial),
273
Tangent
(tangentInitial),
274
Normal
(normalInitial),
275
ClosestPoint
(closestPointInitial)
276
{
277
}
278
};
279
280
public
:
enum
Status
281
{
282
StatusSuccess
,
283
StatusInvalidInput
,
284
StatusFailed
285
};
286
private
:
GeometricPropertiesImpl
* m_geometricproperties_impl;
287
private
:
friend
class
_GeometricPropertiesBuilder;
288
protected
:
GeometricProperties
();
289
public
:
~GeometricProperties
();
293
public
:
NXOpen::GeometricAnalysis::GeometricProperties::OutputType
OutputMethod
294
(
295
);
299
public
:
void
SetOutputMethod
300
(
301
NXOpen::GeometricAnalysis::GeometricProperties::OutputType
outputMethod
302
);
306
public
:
NXOpen::SelectObjectList
*
ObjectsForAnalysis
307
(
308
);
312
public
:
NXOpen::GeometricAnalysis::GeometricProperties::Status
GetFaceProperties
313
(
314
NXOpen::NXObject
* entityTag ,
315
const
NXOpen::Point3d
& absPoint ,
316
NXOpen::GeometricAnalysis::GeometricProperties::Face
* face
317
);
321
public
:
NXOpen::GeometricAnalysis::GeometricProperties::Status
GetEdgeProperties
322
(
323
NXOpen::NXObject
* entityTag ,
324
const
NXOpen::Point3d
& absPoint ,
325
NXOpen::GeometricAnalysis::GeometricProperties::Edge
* edge
326
);
330
public
:
NXOpen::GeometricAnalysis::GeometricProperties::Status
GetCaeFaceProperties
331
(
332
NXOpen::NXObject
* entityTag ,
333
const
NXOpen::Point3d
& absPoint ,
334
NXOpen::GeometricAnalysis::GeometricProperties::CaeFace
* caeFace
335
);
339
public
:
NXOpen::GeometricAnalysis::GeometricProperties::Status
GetCaeCurveProperties
340
(
341
NXOpen::NXObject
* entityTag ,
342
const
NXOpen::Point3d
& absPoint ,
343
NXOpen::GeometricAnalysis::GeometricProperties::CaeCurve
* caeCurve
344
);
348
public
:
NXOpen::GeometricAnalysis::GeometricProperties::Status
ListProperties
349
(
350
NXOpen::NXObject
* entityTag ,
351
const
NXOpen::Point3d
& absPoint
352
);
356
public
:
NXOpen::GeometricAnalysis::GeometricProperties::Status
ListProperties
357
(
358
const
NXOpen::Point3d
& absPoint
359
);
363
public
:
void
Reset
364
(
365
);
366
};
367
}
368
}
369
#ifdef _MSC_VER
370
#pragma warning(pop)
371
#endif
372
#ifdef __GNUC__
373
#ifndef NX_NO_GCC_DEPRECATION_WARNINGS
374
#pragma GCC diagnostic warning "-Wdeprecated-declarations"
375
#endif
376
#endif
377
#undef EXPORTLIBRARY