NX Open C++ 参考指南 2406 v1.1
载入中...
搜索中...
未找到
Section.hxx
1//--------------------------------------------------------------------------
2// Copyright 2024 Siemens
3//--------------------------------------------------------------------------
4// C++接口JA API的头文件
5//--------------------------------------------------------------------------
6//
7// 源文件:
8// Section.ja
9//
10// 生成工具:
11// apiwrap
12//
13// 警告:
14// 此文件为自动生成,请勿手动编辑
15//
16#pragma once
17#include <NXOpen/NXDeprecation.hxx>
18#include <vector>
19#include <NXOpen/NXString.h>
20#include <NXOpen/Callback.hxx>
21#include <NXOpen/DisplayableObject.hxx>
22#include <NXOpen/SectionData.hxx>
23#include <NXOpen/SelectionIntentRule.hxx>
24#include <NXOpen/ugmath.hxx>
25#include <NXOpen/libnxopencpp_exports.hxx>
26#ifdef _MSC_VER
27#pragma warning(push)
28#pragma warning(disable:4996)
29#endif
30#ifdef __GNUC__
31#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
32#endif
33namespace NXOpen
34{
35 class Section;
37 class ICurve;
38 class NXObject;
39 class Point;
40 class SectionData;
42 class TaggedObject;
43 class _SectionBuilder;
44 class SectionImpl;
69 class NXOPENCPPEXPORT Section : public NXOpen::DisplayableObject
70 {
73 public: enum Mode
74 {
77 };
78
87
94 private: SectionImpl * m_section_impl;
95 private: friend class _SectionBuilder;
96 protected: Section();
97public: ~Section();
102 (
103 double chainingTolerance
104 );
109 (
110 double distanceTolerance
111 );
115 public: void SetAngleTolerance
116 (
117 double angleTolerance
118 );
122 public: double ChainingTolerance
123 (
124 );
128 public: double DistanceTolerance
129 (
130 );
134 public: double AngleTolerance
135 (
136 );
140 public: void AddToSection
141 (
142 const std::vector<NXOpen::SelectionIntentRule *> & rules ,
144 NXOpen::NXObject * seed ,
145 NXOpen::NXObject * startConnector ,
147 NXOpen::NXObject * endConnector ,
149 const NXOpen::Point3d & helpPoint ,
151 NXOpen::Section::Mode featureMode
152 );
156 public: void AddToSection
157 (
158 const std::vector<NXOpen::SelectionIntentRule *> & rules ,
160 NXOpen::NXObject * seed ,
161 NXOpen::NXObject * startConnector ,
163 NXOpen::NXObject * endConnector ,
165 const NXOpen::Point3d & helpPoint ,
167 NXOpen::Section::Mode featureMode ,
168 bool chainWithinFeature
169 );
178 public: void RemoveRules
179 (
180 const std::vector<NXOpen::SelectionIntentRule *> & rules ,
181 NXOpen::NXObject * startConnector ,
184 NXOpen::NXObject * endConnector ,
186 NXOpen::Section::Mode featureMode
187 );
196 (
197 NXOpen::ICurve * sectionElement ,
198 NXOpen::NXObject * startConnector ,
199 NXOpen::NXObject * endConnector ,
200 NXOpen::Section::Mode featureMode
201 );
210 (
211 NXOpen::Point * sectionElement ,
212 NXOpen::Section::Mode featureMode
213 );
221 public: void RemoveRules
222 (
223 NXOpen::ICurve * sectionElement ,
224 NXOpen::NXObject * startConnector ,
225 NXOpen::NXObject * endConnector ,
226 NXOpen::Section::Mode featureMode
227 );
235 (
236 const NXOpen::Point3d & pointSpecifyingChain ,
237 double tolerance ,
238 NXOpen::Section::Mode featureMode
239 );
244 (
245 NXOpen::ICurve * startElement ,
249 const NXOpen::Point3d & startPoint ,
250 const NXOpen::Vector3d & direction
251 );
256 (
257 NXOpen::ICurve ** startElement ,
261 NXOpen::Point3d* startPoint ,
262 NXOpen::Vector3d* direction
263 );
268 (
269 int index ,
270 NXOpen::Point3d* startPoint ,
271 NXOpen::Vector3d* direction
272 );
276 public: void GetSectionData
277 (
278 std::vector<NXOpen::SectionData *> & sectionData
279 );
283 public: void Destroy
284 (
285 );
289 public: void ReverseDirection
290 (
291 );
296 (
297 int index
298 );
303 (
304 int index ,
305 const NXOpen::Point3d & pointOnStartCurve
306 );
311 (
312 int index
313 );
321 public: NX_DEPRECATED("Deprecated in NX7.5.0. Please use ScRuleFactory::CreateRuleCurveDumb followed by Section::AddToSection instead.") void AddSmartPoint
322 (
323 NXOpen::Point * smartPt ,
324 double tol
325 );
330 (
331 bool allowSelfIntersection
332 );
337 (
338 bool allowDegenerateCurves
339 );
343 public: void Clear
344 (
345 );
349 public: int GetLoopIndex
350 (
351 NXOpen::NXObject * sectionElement
352 );
356 public: int GetLoopIndex
357 (
358 const NXOpen::Point3d & pointSpecifyingLoop ,
359 double tolerance
360 );
365 (
366 const NXOpen::Point3d & point ,
367 const NXOpen::Vector3d & direction
368 );
376 public: void SetInterpart
377 (
378 bool interpart
379 );
388 public: NX_DEPRECATED("Deprecated in NX8.5.0. Please use Section::RemoveMultipleElements instead.") void RemoveMultipleCurves
389 (
390 const std::vector<NXOpen::ICurve *> & wfs ,
391 const std::vector<NXOpen::NXObject *> & startConnector ,
392 const std::vector<NXOpen::NXObject *> & endConnector ,
393 NXOpen::Section::Mode featureMode
394 );
403 public: NX_DEPRECATED("Deprecated in NX8.5.0. Please use Section::RemoveMultipleElements instead.") void RemoveMultiplePoints
404 (
405 const std::vector<NXOpen::Point *> & points ,
406 NXOpen::Section::Mode featureMode
407 );
416 (
417 const NXOpen::Point3d & pointSpecifyingCurve ,
418 double tolerance ,
419 NXOpen::Section::Mode featureMode
420 );
429 (
430 const std::vector<NXOpen::ICurve *> & wfs ,
431 const std::vector<NXOpen::NXObject *> & startConnectors ,
432 const std::vector<NXOpen::NXObject *> & endConnectors ,
433 const std::vector<bool> & isCombinationsResultIntoOnlyOneCurvePerCombination ,
434 const std::vector<NXOpen::Point3d> & pointsOnCurvesToBeRemoved ,
435 const std::vector<NXOpen::Point *> & points ,
436 NXOpen::Section::Mode featureMode
437 );
441 public: NXOpen::Section * CloneSection
442 (
443 );
451 (
452 );
459 public: void CleanMappingData
460 (
461 );
470 (
471 );
479 (
480 NXOpen::Section::AllowTypes allowedEntityTypes
481 );
493 (
494 NXOpen::NXObject * oldWf ,
495 NXOpen::NXObject * newWf
496 );
504 public: void GetOutputCurves
505 (
506 std::vector<NXOpen::NXObject *> & outputs
507 );
516 (
517 std::vector<NXOpen::NXObject *> & oldOutputs
518 );
525 public: void DeselectPortion
526 (
527 const NXOpen::Point3d & seedPoint ,
528 NXOpen::NXObject * startLimit ,
529 NXOpen::NXObject * endLimit ,
530 NXOpen::Section::DeselectOption deselectionType
531 );
536 (
537 const std::vector<NXOpen::SelectionIntentRule *> & rules ,
540 NXOpen::NXObject * startConnector ,
543 const NXOpen::Point3d & startIntersectionPoint ,
544 NXOpen::NXObject * endConnector ,
546 const NXOpen::Point3d & endIntersectionPoint ,
547 NXOpen::NXObject * seed ,
548 const NXOpen::Point3d & helpPoint ,
549 NXOpen::Section::Mode featureMode ,
550 bool chainWithinFeature
551 );
560 public: void SkipSorting
561 (
562 bool skipSorting
563 );
571 (
572 std::vector<NXOpen::NXObject *> & refs
573 );
581 public: bool GetMultiComponent
582 (
583 );
593 public: void SetMultiComponent
594 (
595 );
603 public: bool GetNonFeatureMode
604 (
605 );
616 public: void SetNonFeatureMode
617 (
618 );
625 public: void SetAllowRefCrvs
626 (
627 bool allowRefCrvs
628 );
632 public: void GetSectionData
633 (
634 bool withOccurrenceInfo ,
635 std::vector<NXOpen::SectionData *> & sectionData
637 );
642 (
643 std::vector<NXOpen::SelectionIntentRule *> & rules ,
644 std::vector<int> & ruleObjectArrayCount
645 );
650 (
651 );
652};
653}
654#ifdef _MSC_VER
655#pragma warning(pop)
656#endif
657#ifdef __GNUC__
658#ifndef NX_NO_GCC_DEPRECATION_WARNINGS
659#pragma GCC diagnostic warning "-Wdeprecated-declarations"
660#endif
661#endif
662#undef EXPORTLIBRARY