NX Open C++ 参考指南
2406 v1.1
载入中...
搜索中...
未找到
D:
Tan_NX2406C++
UGopenLib
NX2406
UGOPEN
NXOpen
CAM_Path.hxx
1
//--------------------------------------------------------------------------
2
// 版权所有 2024 Siemens
3
//--------------------------------------------------------------------------
4
// JA API 的 C++ 接口头文件
5
//--------------------------------------------------------------------------
6
//
7
// 源文件:
8
// CAM_Path.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/CAM_PathData.hxx>
22
#include <NXOpen/CAM_PathEvent.hxx>
23
#include <NXOpen/CAM_PathLaserOptimizationData.hxx>
24
#include <NXOpen/CAM_PathMarker.hxx>
25
#include <NXOpen/CAM_PathOwnerData.hxx>
26
#include <NXOpen/CAM_Ude.hxx>
27
#include <NXOpen/TaggedObject.hxx>
28
#include <NXOpen/libnxopencpp_cam_exports.hxx>
29
#ifdef _MSC_VER
30
#pragma warning(push)
31
#pragma warning(disable:4996)
32
#endif
33
#ifdef __GNUC__
34
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
35
#endif
36
namespace
NXOpen
37
{
38
namespace
CAM
39
{
40
class
Path
;
41
}
42
namespace
CAM
43
{
44
class
PathCircularMotion
;
45
}
46
namespace
CAM
47
{
48
class
PathEvent
;
49
}
50
namespace
CAM
51
{
52
class
PathHelixMotion
;
53
}
54
namespace
CAM
55
{
56
class
PathLaserOptimizationData
;
57
}
58
namespace
CAM
59
{
60
class
PathLevelMarker
;
61
}
62
namespace
CAM
63
{
64
class
PathLinearMotion
;
65
}
66
namespace
CAM
67
{
68
class
PathMarker
;
69
}
70
namespace
CAM
71
{
72
class
PathOwnerData
;
73
}
74
namespace
CAM
75
{
76
class
Ude
;
77
}
78
namespace
CAM
79
{
80
class
_PathBuilder;
81
class
PathImpl;
85
class
NXOPENCPP_CAMEXPORT Path :
public
NXOpen::TaggedObject
86
{
88
public
:
enum
FindingTypes
89
{
90
FindingTypesGouge
= 1,
91
FindingTypesSpike
,
92
FindingTypesSingularity
= 5,
93
FindingTypesSoftLimit
,
94
FindingTypesHardLimit
,
95
FindingTypesUnwind
,
96
FindingTypesCollision
,
97
FindingTypesReachFailure
,
98
FindingTypesVariableLimit
,
99
FindingTypesHolderCollision
,
100
FindingTypesRapidCollision
,
101
FindingTypesOverEngagement
= 22
102
};
103
104
public
:
enum
RobotRulesStatusStates
105
{
106
RobotRulesStatusStatesUnchanged
,
107
RobotRulesStatusStatesChanged
,
108
RobotRulesStatusStatesRegenerate
,
109
RobotRulesStatusStatesRegenerated
110
};
111
private
:
PathImpl
* m_path_impl;
112
private
:
friend
class
_PathBuilder;
113
protected
:
Path
();
114
public
:
~Path
();
118
public
:
NXOpen::CAM::PathLinearMotion
*
NewPathLinearMotion
119
(
120
);
124
public
:
NXOpen::CAM::PathCircularMotion
*
NewPathCircularMotion
125
(
126
);
130
public
:
NXOpen::CAM::PathHelixMotion
*
NewPathHelixMotion
131
(
132
);
136
public
:
NXOpen::CAM::CamPathToolAxisType
ToolAxisType
137
(
138
);
142
public
:
int
NumberOfToolpathEvents
143
(
144
);
148
public
:
NXOpen::CAM::PathEvent
*
GetToolpathEvent
149
(
150
int
eventNumber
151
);
155
public
:
NXOpen::CAM::CamPathToolpathEventType
GetToolpathEventType
156
(
157
int
eventNumber
158
);
162
public
:
NXOpen::CAM::CamPathToolpathEventType
GetToolpathEventType
163
(
164
NXOpen::CAM::PathEvent
* pathEvent
165
);
170
public
:
void
MoveEvent
171
(
172
int
fromIndex ,
173
int
toIndex
174
);
179
public
:
void
MoveEvent
180
(
181
NXOpen::CAM::PathEvent
* eventToMove ,
182
NXOpen::CAM::CamPathToolpathEventLocation
location ,
183
NXOpen::CAM::PathEvent
* referenceEvent
184
);
188
public
:
bool
IsToolpathEventAMotion
189
(
190
int
eventNumber ,
191
NXOpen::CAM::CamPathMotionType
* motionType ,
192
NXOpen::CAM::CamPathMotionShapeType
* motionShape
193
);
197
public
:
bool
IsToolpathEventAMotion
198
(
199
NXOpen::CAM::PathEvent
* eventOfInterest ,
200
NXOpen::CAM::CamPathMotionType
* motionType ,
201
NXOpen::CAM::CamPathMotionShapeType
* motionShape
202
);
206
public
:
bool
IsToolpathEventUde
207
(
208
NXOpen::CAM::PathEvent
* eventOfInterest ,
209
NXString
* udeName
210
);
214
public
:
NXOpen::CAM::PathLinearMotion
*
GetLinearMotion
215
(
216
int
index
217
);
221
public
:
void
SetLinearMotion
222
(
223
int
index ,
224
NXOpen::CAM::PathLinearMotion
* data
225
);
229
public
:
void
AppendLinearMotion
230
(
231
NXOpen::CAM::PathLinearMotion
* data
232
);
236
public
:
void
InsertLinearMotionBefore
237
(
238
NXOpen::CAM::PathLinearMotion
* data ,
239
int
index
240
);
244
public
:
void
InsertLinearMotionAfter
245
(
246
NXOpen::CAM::PathLinearMotion
* data ,
247
int
index
248
);
252
public
:
NXOpen::CAM::PathLinearMotion
*
GetLinearMotion
253
(
254
NXOpen::CAM::PathEvent
* eventOfInterest
255
);
260
public
:
NX_DEPRECATED
(
"Deprecated in NX1872.0.0. Use NXOpen::CAM::Path::ModifyLinearMotion instead."
) void
SetLinearMotion
261
(
262
NXOpen
::
CAM
::
PathEvent
* eventOfInterest ,
263
NXOpen
::
CAM
::
PathLinearMotion
* data
264
);
268
public:
NXOpen
::
CAM
::
PathEvent
*
AddLinearMotion
269
(
270
NXOpen
::
CAM
::
PathLinearMotion
* data ,
271
NXOpen
::
CAM
::
CamPathToolpathEventLocation
location ,
272
NXOpen
::
CAM
::
PathEvent
* referenceEvent
273
);
277
public:
NXOpen
::
CAM
::
PathCircularMotion
*
GetCircularMotion
278
(
279
int
index
280
);
284
public:
void
SetCircularMotion
285
(
286
int
index ,
287
NXOpen
::
CAM
::
PathCircularMotion
* data
288
);
292
public:
void
AppendCircularMotion
293
(
294
NXOpen
::
CAM
::
PathCircularMotion
* data
295
);
299
public:
void
InsertCircularMotionBefore
300
(
301
NXOpen
::
CAM
::
PathCircularMotion
* data ,
302
int
index
303
);
307
public:
void
InsertCircularMotionAfter
308
(
309
NXOpen
::
CAM
::
PathCircularMotion
* data ,
310
int
index
311
);
315
public:
NXOpen
::
CAM
::
PathCircularMotion
*
GetCircularMotion
316
(
317
NXOpen
::
CAM
::
PathEvent
* eventOfInterest
318
);
323
public:
NX_DEPRECATED
(
"Deprecated in NX1872.0.0. Use NXOpen::CAM::Path::ModifyCircularMotion instead."
)
void
SetCircularMotion
324
(
325
NXOpen
::
CAM
::
PathEvent
* eventOfInterest ,
326
NXOpen
::
CAM
::
PathCircularMotion
* data
327
);
331
public:
NXOpen
::
CAM
::
PathEvent
*
AddCircularMotion
332
(
333
NXOpen
::
CAM
::
PathCircularMotion
* data ,
334
NXOpen
::
CAM
::
CamPathToolpathEventLocation
location ,
335
NXOpen
::
CAM
::
PathEvent
* referenceEvent
336
);
340
public:
NXOpen
::
CAM
::
PathHelixMotion
*
GetHelixMotion
341
(
342
int
index
343
);
347
public:
void
SetHelixMotion
348
(
349
int
index ,
350
NXOpen
::
CAM
::
PathHelixMotion
* data
351
);
355
public:
void
AppendHelixMotion
356
(
357
NXOpen
::
CAM
::
PathHelixMotion
* data
358
);
362
public:
void
InsertHelixMotionBefore
363
(
364
NXOpen
::
CAM
::
PathHelixMotion
* data ,
365
int
index
366
);
370
public:
void
InsertHelixMotionAfter
371
(
372
NXOpen
::
CAM
::
PathHelixMotion
* data ,
373
int
index
374
);
378
public:
NXOpen
::
CAM
::
PathHelixMotion
*
GetHelixMotion
379
(
380
NXOpen
::
CAM
::
PathEvent
* eventOfInterest
381
);
386
public:
NX_DEPRECATED
(
"Deprecated in NX1872.0.0. Use NXOpen::CAM::Path::ModifyHelixMotion instead."
)
void
SetHelixMotion
387
(
388
NXOpen
::
CAM
::
PathEvent
* eventOfInterest ,
389
NXOpen
::
CAM
::
PathHelixMotion
* data
390
);
394
public:
NXOpen
::
CAM
::
PathEvent
*
AddHelixMotion
395
(
396
NXOpen
::
CAM
::
PathHelixMotion
* data ,
397
NXOpen
::
CAM
::
CamPathToolpathEventLocation
location ,
398
NXOpen
::
CAM
::
PathEvent
* referenceEvent
399
);
403
public:
NXOpen
::
CAM
::
Ude
*
GetUde
404
(
405
int
index
406
);
410
public:
void
SetUde
411
(
412
int
index ,
413
NXOpen
::
CAM
::
Ude
* data
414
);
418
public:
void
AppendUde
419
(
420
const
NXString
& udeName
421
);
425
void
AppendUde
426
(
427
const
char
* udeName
428
);
432
public:
void
InsertUdeBefore
433
(
434
const
NXString
& udeName ,
435
int
index
436
);
440
void
InsertUdeBefore
441
(
442
const
char
* udeName ,
443
int
index
444
);
448
public:
void
InsertUdeAfter
449
(
450
const
NXString
& udeName ,
451
int
index
452
);
456
void
InsertUdeAfter
457
(
458
const
char
* udeName ,
459
int
index
460
);
464
public:
NXOpen
::
CAM
::
Ude
*
GetUde
465
(
466
NXOpen
::
CAM
::
PathEvent
* eventOfInterest
467
);
471
public:
void
SetUde
472
(
473
NXOpen
::
CAM
::
PathEvent
* eventOfInterest ,
474
NXOpen
::
CAM
::
Ude
* data
475
);
479
public:
NXOpen
::
CAM
::
PathEvent
*
AddUde
480
(
481
const
NXString
& udeName ,
482
NXOpen
::
CAM
::
CamPathToolpathEventLocation
location ,
483
NXOpen
::
CAM
::
PathEvent
* referenceEvent
484
);
488
NXOpen
::
CAM
::
PathEvent
*
AddUde
489
(
490
const
char
* udeName ,
491
NXOpen
::
CAM
::
CamPathToolpathEventLocation
location ,
492
NXOpen
::
CAM
::
PathEvent
* referenceEvent
493
);
497
public:
void
EmptyPath
498
(
499
);
503
public:
void
DeleteOneEvent
504
(
505
int
index
506
);
510
public:
void
DeleteOneEvent
511
(
512
NXOpen
::
CAM
::
PathEvent
* pathEvent
513
);
517
public:
NXOpen
::
CAM
::
PathLaserOptimizationData
*
GetLaserOptimizationData
518
(
519
);
523
public:
NXOpen
::
CAM
::
PathLevelMarker
*
GetLevelMarker
524
(
525
int
index
526
);
530
public:
void
SetLevelMarker
531
(
532
int
index ,
533
NXOpen
::
CAM
::
PathLevelMarker
* data
534
);
538
public:
void
AppendLevelMarker
539
(
540
NXOpen
::
CAM
::
PathLevelMarker
* data
541
);
545
public:
void
InsertLevelMarkerBefore
546
(
547
NXOpen
::
CAM
::
PathLevelMarker
* data ,
548
int
index
549
);
553
public:
void
InsertLevelMarkerAfter
554
(
555
NXOpen
::
CAM
::
PathLevelMarker
* data ,
556
int
index
557
);
561
public:
NXOpen
::
CAM
::
PathLevelMarker
*
GetLevelMarker
562
(
563
NXOpen
::
CAM
::
PathEvent
* eventOfInterest
564
);
568
public:
void
SetLevelMarker
569
(
570
NXOpen
::
CAM
::
PathEvent
* eventOfInterest ,
571
NXOpen
::
CAM
::
PathLevelMarker
* data
572
);
576
public:
NXOpen
::
CAM
::
PathEvent
*
AddLevelMarker
577
(
578
NXOpen
::
CAM
::
PathLevelMarker
* data ,
579
NXOpen
::
CAM
::
CamPathToolpathEventLocation
location ,
580
NXOpen
::
CAM
::
PathEvent
* referenceEvent
581
);
585
public:
NXOpen
::
CAM
::
PathEvent
*
GetFirstEvent
586
(
587
);
591
public:
NXOpen
::
CAM
::
PathEvent
*
GetLastEvent
592
(
593
);
597
public:
void
DeleteAllUdesOfName
598
(
599
const
NXString
& udeName
600
);
604
void
DeleteAllUdesOfName
605
(
606
const
char
* udeName
607
);
611
public:
NXOpen
::
CAM
::
CamPathContactType
ContactType
612
(
613
);
617
public:
void
SetContactType
618
(
619
NXOpen
::
CAM
::
CamPathContactType
contactType
620
);
624
public:
NXOpen
::
CAM
::
PathMarker
*
NewPathMarker
625
(
626
NXOpen
::
CAM
::
PathMarker
::Type markerType
627
);
631
public:
NXOpen
::
CAM
::
PathMarker
*
GetMarker
632
(
633
int
index
634
);
638
public:
void
SetMarker
639
(
640
int
index ,
641
NXOpen
::
CAM
::
PathMarker
* data
642
);
646
public:
void
AppendMarker
647
(
648
NXOpen
::
CAM
::
PathMarker
* data
649
);
653
public:
void
InsertMarkerBefore
654
(
655
NXOpen
::
CAM
::
PathMarker
* data ,
656
int
index
657
);
661
public:
void
InsertMarkerAfter
662
(
663
NXOpen
::
CAM
::
PathMarker
* data ,
664
int
index
665
);
669
public:
NXOpen
::
CAM
::
PathMarker
*
GetMarker
670
(
671
NXOpen
::
CAM
::
PathEvent
* eventOfInterest
672
);
676
public:
void
SetMarker
677
(
678
NXOpen
::
CAM
::
PathEvent
* eventOfInterest ,
679
NXOpen
::
CAM
::
PathMarker
* data
680
);
684
public:
NXOpen
::
CAM
::
PathEvent
*
AddMarker
685
(
686
NXOpen
::
CAM
::
PathMarker
* data ,
687
NXOpen
::
CAM
::
CamPathToolpathEventLocation
location ,
688
NXOpen
::
CAM
::
PathEvent
* referenceEvent
689
);
693
public:
int
GetNumberOfFindings
694
(
695
NXOpen
::
CAM
::Path::
FindingTypes
type
696
);
700
public:
void
GetAllFindingTypes
701
(
702
std::vector<
NXOpen
::
CAM
::Path::
FindingTypes
> & findingTypes
703
);
707
public:
void
GetFindingStartEndEvents
708
(
709
NXOpen
::
CAM
::Path::
FindingTypes
type ,
710
std::vector<
NXOpen
::
CAM
::
PathEvent
*> & startEvents ,
711
std::vector<
NXOpen
::
CAM
::
PathEvent
*> & endEvents
712
);
716
public:
NXOpen
::
CAM
::Path::
RobotRulesStatusStates
RobotRulesStatus
717
(
718
);
722
public:
void
SetRobotRulesStatus
723
(
724
NXOpen
::
CAM
::Path::
RobotRulesStatusStates
status
725
);
729
public:
NXOpen
::
CAM
::
PathEvent
*
ModifyLinearMotion
730
(
731
NXOpen
::
CAM
::
PathLinearMotion
* data ,
732
NXOpen
::
CAM
::
PathEvent
* eventOfInterest
733
);
737
public:
NXOpen
::
CAM
::
PathEvent
*
ModifyCircularMotion
738
(
739
NXOpen
::
CAM
::
PathCircularMotion
* data ,
740
NXOpen
::
CAM
::
PathEvent
* eventOfInterest
741
);
745
public:
NXOpen
::
CAM
::
PathEvent
*
ModifyHelixMotion
746
(
747
NXOpen
::
CAM
::
PathHelixMotion
* data ,
748
NXOpen
::
CAM
::
PathEvent
* eventOfInterest
749
);
753
public:
bool
IsFirstEvent
754
(
755
NXOpen
::
CAM
::
PathEvent
* eventOfInterest
756
);
760
public:
bool
IsLastEvent
761
(
762
NXOpen
::
CAM
::
PathEvent
* eventOfInterest
763
);
767
public:
void
GetWidthHeight
768
(
769
NXOpen
::
CAM
::
PathEvent
* eventOfInterest ,
770
double
* width ,
771
double
* height
772
);
776
public:
void
SetWidthHeight
777
(
778
NXOpen
::
CAM
::
PathEvent
* eventOfInterest ,
779
double
width ,
780
double
height
781
);
785
public:
NXOpen
::
CAM
::
PathEvent
*
CopyEvent
786
(
787
NXOpen
::
CAM
::
PathEvent
* eventToCopy ,
788
NXOpen
::
CAM
::
CamPathToolpathEventLocation
location ,
789
NXOpen
::
CAM
::
PathEvent
* referenceEvent
790
);
794
public:
NXOpen
::
CAM
::
PathOwnerData
*
GetReferenceData
795
(
796
);
800
public:
bool
HasSubPath
801
(
802
);
806
public:
NXOpen
::
CAM
::
PathOwnerData
*
GetSubPathData
807
(
808
NXOpen
::
CAM
::
PathEvent
* forEvent
809
);
810
};
811
}
812
}
813
#ifdef _MSC_VER
814
#pragma warning(pop)
815
#endif
816
#ifdef __GNUC__
817
#ifndef NX_NO_GCC_DEPRECATION_WARNINGS
818
#pragma GCC diagnostic warning "-Wdeprecated-declarations"
819
#endif
820
#endif
821
#undef EXPORTLIBRARY