NX Open C++ 参考指南
2406 v1.1
载入中...
搜索中...
未找到
D:
Tan_NX2406C++
UGopenLib
NX2406
UGOPEN
NXOpen
Mechatronics_CollisionBodyBuilder.hxx
1
//--------------------------------------------------------------------------
2
// Copyright 2024 Siemens
3
//--------------------------------------------------------------------------
4
// C++接口JA API的头文件
5
//--------------------------------------------------------------------------
6
//
7
// 源文件:
8
// Mechatronics_CollisionBodyBuilder.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/Mechatronics_CollisionShapeBuilder.hxx>
23
#include <NXOpen/SelectObjectList.hxx>
24
#include <NXOpen/libnxopencpp_mechatronics_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
Mechatronics
35
{
36
class
CollisionBodyBuilder
;
37
}
38
class
Expression
;
39
namespace
GeometricAnalysis
40
{
41
namespace
SectionAnalysis
42
{
43
class
SectionAnalysisExObject
;
44
}
45
}
46
namespace
Mechatronics
47
{
48
class
CollisionMaterial
;
49
}
50
namespace
Mechatronics
51
{
52
class
CollisionShapeBuilder
;
53
}
54
class
NXObject
;
55
class
SelectNXObjectList
;
56
namespace
Mechatronics
57
{
58
class
_CollisionBodyBuilderBuilder;
59
class
CollisionBodyBuilderImpl;
63
class
NXOPENCPP_MECHATRONICSEXPORT CollisionBodyBuilder :
public
NXOpen::Mechatronics::CollisionShapeBuilder
64
{
66
public
:
enum
CollisionShapeTypes
67
{
68
CollisionShapeTypesBox
,
69
CollisionShapeTypesSphere
,
70
CollisionShapeTypesCylinder
,
71
CollisionShapeTypesCapsule
,
72
CollisionShapeTypesConvex
,
73
CollisionShapeTypesMultiConvex
,
74
CollisionShapeTypesHole
,
75
CollisionShapeTypesMesh
,
76
CollisionShapeTypesUserDefinedConvex
77
};
78
79
public
:
enum
ShapePropertyTypes
80
{
81
ShapePropertyTypesAutomatic
,
82
ShapePropertyTypesUserDefined
83
};
84
private
:
CollisionBodyBuilderImpl
* m_collisionbodybuilder_impl;
85
private
:
friend
class
_CollisionBodyBuilderBuilder;
86
protected
:
CollisionBodyBuilder
();
87
public
:
~CollisionBodyBuilder
();
92
public
:
NXOpen::SelectNXObjectList
*
Geometry
93
(
94
);
98
public
:
void
SetGeometry
99
(
100
const
std::vector<NXOpen::NXObject *> & geometries
101
);
105
public
:
NXOpen::Mechatronics::CollisionBodyBuilder::CollisionShapeTypes
CollisionShape
106
(
107
);
111
public
:
void
SetCollisionShape
112
(
113
NXOpen::Mechatronics::CollisionBodyBuilder::CollisionShapeTypes
collisionShape
114
);
118
public
:
NXOpen::Mechatronics::CollisionBodyBuilder::ShapePropertyTypes
CollisionProperties
119
(
120
);
124
public
:
void
SetCollisionProperties
125
(
126
NXOpen::Mechatronics::CollisionBodyBuilder::ShapePropertyTypes
collisionProperties
127
);
131
public
:
int
Category
132
(
133
);
137
public
:
void
SetCategory
138
(
139
int
category
140
);
144
public
:
NXString
Name
145
(
146
);
150
public
:
void
SetName
151
(
152
const
NXString
& name
153
);
157
void
SetName
158
(
159
const
char
* name
160
);
164
public
:
NXOpen::Mechatronics::CollisionMaterial
*
CollisionMaterial
165
(
166
);
170
public
:
void
SetCollisionMaterial
171
(
172
NXOpen::Mechatronics::CollisionMaterial
* collisionMaterial
173
);
177
public
:
void
CalculateConvex
178
(
179
);
183
public
:
void
CalculateMesh
184
(
185
);
189
public
:
void
CalculateMultiConvex
190
(
191
);
195
public
:
bool
HighlightOnCollision
196
(
197
);
201
public
:
void
SetHighlightOnCollision
202
(
203
bool
highlight
204
);
208
public
:
bool
StickCollision
209
(
210
);
214
public
:
void
SetStickCollision
215
(
216
bool
stickCollision
217
);
221
public
:
double
CollisionFactor
222
(
223
);
227
public
:
void
SetCollisionFactor
228
(
229
double
factor
230
);
234
public
:
bool
Thickness
235
(
236
);
240
public
:
void
SetThickness
241
(
242
bool
thickness
243
);
247
public
:
NXOpen::Expression
*
Offset
248
(
249
);
253
public
:
void
CalculateHole
254
(
255
);
259
public
:
void
CalculateUserDefinedConvex
260
(
261
);
265
public
:
void
ExecuteCollisionSection
266
(
267
);
271
public
:
NXOpen::GeometricAnalysis::SectionAnalysis::SectionAnalysisExObject
*
GetCsao
272
(
273
);
277
public
:
void
SetCsao
278
(
279
NXOpen::GeometricAnalysis::SectionAnalysis::SectionAnalysisExObject
* csaoTag
280
);
285
public
:
NXOpen::NXObject
*
GetFacetFromSolid
286
(
287
NXOpen::NXObject
* solidTag
288
);
292
public
:
void
DeleteTempFacetsAndHideCsao
293
(
294
);
298
public
:
bool
PauseOnceCollide
299
(
300
);
304
public
:
void
SetPauseOnceCollide
305
(
306
bool
pause
307
);
308
};
309
}
310
}
311
#ifdef _MSC_VER
312
#pragma warning(pop)
313
#endif
314
#ifdef __GNUC__
315
#ifndef NX_NO_GCC_DEPRECATION_WARNINGS
316
#pragma GCC diagnostic warning "-Wdeprecated-declarations"
317
#endif
318
#endif
319
#undef EXPORTLIBRARY