NX Open C++ 参考指南 2406 v1.1
载入中...
搜索中...
未找到
Measurement.hxx
1//--------------------------------------------------------------------------
2// Copyright 2024 Siemens
3//--------------------------------------------------------------------------
4// C++接口的JA API头文件
5//--------------------------------------------------------------------------
6//
7// 源文件:
8// Measurement.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/GeometryTypes.hxx>
22#include <NXOpen/TaggedObject.hxx>
23#include <NXOpen/ugmath.hxx>
24#include <NXOpen/libnxopencpp_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
32namespace NXOpen
33{
34 class Measurement;
35 class Session;
36 class Curve;
37 class Direction;
39 class Edge;
40 class Face;
41 class IBody;
42 class ICurve;
43 class IReferenceAxis;
44 class ISurface;
45 class NXObject;
46 class Point;
47 namespace Routing
48 {
49 class ISegment;
50 }
51 class ScCollector;
52 class Unit;
53 class MeasurementImpl;
59 class NXOPENCPPEXPORT Measurement
60 {
73
80
94
100
106
130
144 private: MeasurementImpl * m_measurement_impl;
145 private: NXOpen::Session* m_owner;
147 public: explicit Measurement(NXOpen::Session *owner);
149 public:
151 tag_t Tag() const;
152 public: ~Measurement();
160 public: void DisplayArcLength
161 (
162 const std::vector<NXOpen::DisplayableObject *> & selectedObjects
163 );
170 public: double GetArcLength
171 (
172 const std::vector<NXOpen::DisplayableObject *> & selectedObjects
173 );
183 (
184 NXOpen::DisplayableObject * object1 ,
185 NXOpen::DisplayableObject * object2 ,
186 NXOpen::Point3d* closePoint1 ,
187 NXOpen::Point3d* closePoint2
188 );
198 (
199 NXOpen::NXObject * object1 ,
200 const NXOpen::Point3d & startPointForObject1 ,
201 NXOpen::NXObject * object2 ,
202 const NXOpen::Point3d & startPointForObject2 ,
203 NXOpen::Point3d* closePoint1 ,
204 NXOpen::Point3d* closePoint2
205 );
215 (
216 NXOpen::NXObject * object1 ,
217 const NXOpen::Point3d & startPointForObject1 ,
218 NXOpen::NXObject * object2 ,
219 NXOpen::Point3d* closePoint1 ,
220 NXOpen::Point3d* closePoint2
221 );
231 (
232 NXOpen::NXObject * object1 ,
233 NXOpen::NXObject * object2 ,
234 const NXOpen::Point3d & startPointForObject2 ,
235 NXOpen::Point3d* closePoint1 ,
236 NXOpen::Point3d* closePoint2
237 );
245 public: double GetMinimumDistance
246 (
247 NXOpen::NXObject * object1 ,
248 NXOpen::NXObject * object2 ,
249 NXOpen::Point3d* closePoint1 ,
250 NXOpen::Point3d* closePoint2 ,
251 double* accuracy
252 );
261 public: double GetMinimumDistance
262 (
263 NXOpen::NXObject * object1 ,
264 const NXOpen::Point3d & startPointForObject1 ,
265 NXOpen::NXObject * object2 ,
266 const NXOpen::Point3d & startPointForObject2 ,
267 NXOpen::Point3d* closePoint1 ,
268 NXOpen::Point3d* closePoint2 ,
269 double* accuracy
270 );
279 public: double GetMinimumDistance
280 (
281 NXOpen::NXObject * object1 ,
282 const NXOpen::Point3d & startPointForObject1 ,
283 NXOpen::NXObject * object2 ,
284 NXOpen::Point3d* closePoint1 ,
285 NXOpen::Point3d* closePoint2 ,
286 double* accuracy
287 );
296 public: double GetMinimumDistance
297 (
298 NXOpen::NXObject * object1 ,
299 NXOpen::NXObject * object2 ,
300 const NXOpen::Point3d & startPointForObject2 ,
301 NXOpen::Point3d* closePoint1 ,
302 NXOpen::Point3d* closePoint2 ,
303 double* accuracy
304 );
312 public: void DisplayAngle
313 (
314 NXOpen::NXObject * object1 ,
315 const NXOpen::Point3d & position1 ,
316 NXOpen::NXObject * object2 ,
317 const NXOpen::Point3d & position2
318 );
325 public: double GetAngle
326 (
327 NXOpen::NXObject * object1 ,
328 const NXOpen::Point3d & position1 ,
329 NXOpen::NXObject * object2 ,
330 const NXOpen::Point3d & position2
331 );
339 (
340 NXOpen::ICurve * curve1 ,
341 NXOpen::ICurve * curve2 ,
342 int numOfCheckPoints ,
343 double distanceTolerance ,
344 double angularTolerance ,
346 );
354 (
355 NXOpen::Curve * curve1 ,
356 NXOpen::Face * face2 ,
357 int numOfCheckPoints ,
358 double distanceTolerance ,
359 double angularTolerance ,
361 );
369 (
370 NXOpen::Face * face1 ,
371 NXOpen::Edge * edge1 ,
372 NXOpen::Face * face2 ,
373 int numOfCheckPoints ,
374 double distanceTolerance ,
375 double angularTolerance ,
377 );
385 (
386 NXOpen::Face * face1 ,
387 NXOpen::Face * face2 ,
388 int numOfCheckPointsU ,
389 int numOfCheckPointsV ,
390 double distanceTolerance ,
391 double angularTolerance ,
393 );
401 (
402 NXOpen::Face * face1 ,
403 NXOpen::Edge * edge1 ,
404 NXOpen::Face * face2 ,
405 NXOpen::Edge * edge2 ,
406 int numOfCheckPoints ,
407 double distanceTolerance ,
408 double angularTolerance ,
410 );
419 (
420 NXOpen::Point * point1 ,
421 NXOpen::Point * point2
422 );
429 (
430 NXOpen::Point * point1 ,
431 NXOpen::Point * point2 ,
432 double* length ,
433 std::vector<NXOpen::Curve *> & curves
434 );
443 (
444 const std::vector<NXOpen::Routing::ISegment *> & selectedObjects ,
445 std::vector<NXOpen::Routing::ISegment *> & usedObjects
446 );
453 public: double GetRoutingPathLength
454 (
455 const std::vector<NXOpen::NXObject *> & selectedObjects ,
456 std::vector<NXOpen::NXObject *> & usedObjects ,
457 std::vector<double> & individualLengths
458 );
465 (
466 NXOpen::DisplayableObject * object1 ,
467 NXOpen::DisplayableObject * object2 ,
468 NXOpen::Point3d* closestOrthogonalPoint
469 );
473 public: void GetAngleQualifier
474 (
476 bool requireExact ,
477 const std::vector<double> & seed ,
478 bool flip
479 );
486 public: double GetAngle
487 (
488 NXOpen::Measurement::AlternateAngle alternateSolution ,
489 bool requireExact ,
490 NXOpen::DisplayableObject * object1 ,
491 NXOpen::DisplayableObject * object2 ,
492 NXOpen::Point3d* pt1 ,
493 NXOpen::Point3d* pt2 ,
494 NXOpen::Point3d* pt3 ,
495 bool* isApproximate
496 );
502 public: double GetDistance
503 (
505 bool requireExact ,
506 const std::vector<NXOpen::DisplayableObject *> & objects1 ,
507 const std::vector<NXOpen::DisplayableObject *> & objects2 ,
508 NXOpen::Point3d* pt1 ,
509 NXOpen::Point3d* pt2 ,
510 bool* isApproximate
511 );
516 public: void GetFaceProperties
517 (
518 const std::vector<NXOpen::ISurface *> & faces ,
519 double accuracy ,
520 NXOpen::Measurement::AlternateFace alternateSolution ,
521 bool requireExact ,
522 double* area ,
523 double* perimeter ,
524 double* radiusDiameter ,
525 NXOpen::Point3d* cog ,
526 double* minRadiusOfCurvature ,
527 double* areaErrorEstimate ,
528 NXOpen::Point3d* anchorPoint ,
529 bool* isApproximate
530 );
535 public: void GetBodyProperties
536 (
537 const std::vector<NXOpen::IBody *> & bodys ,
538 double accuracy ,
539 bool useWCS ,
540 std::vector<double> & massProps ,
541 double* weight ,
542 NXOpen::Point3d* centroid ,
543 std::vector<double> & centroidUnit ,
544 double* density ,
545 std::vector<double> & axis
546 );
552 (
553 const std::vector<NXOpen::NXObject *> & selList1 ,
554 const std::vector<NXOpen::NXObject *> & selList2 ,
555 NXOpen::NXObject * vectorTag ,
556 NXOpen::NXObject * targetUnit ,
557 bool requireExact ,
558 int alternateSolution ,
560 double* distance ,
561 std::vector<NXOpen::Point3d> & points ,
562 bool* isApproximate
563 );
569 (
570 NXOpen::NXObject * csys1Tag ,
571 NXOpen::NXObject * csys2Tag ,
572 int alternateSolution ,
573 NXOpen::NXObject * targetUnit ,
574 double* theta1 ,
575 double* theta2 ,
576 double* theta3
577 );
583 (
584 const std::vector<NXOpen::NXObject *> & selList ,
585 NXOpen::NXObject * targetUnit ,
586 bool requireExact ,
587 bool* isApproximate ,
588 double* arcLength ,
589 double* radius ,
590 double* diameter ,
591 double* minRadiusOfCurvature ,
592 NXOpen::Point3d* startPoint ,
593 NXOpen::Point3d* endPoint ,
594 NXOpen::Point3d* arcCenter
595 );
601 (
602 NXOpen::ScCollector * collector ,
603 NXOpen::Point * center ,
604 NXOpen::IReferenceAxis * vector ,
605 bool minAngle ,
606 NXOpen::NXObject * targetUnit ,
607 double* angle ,
608 NXOpen::Point3d* p1 ,
609 NXOpen::Point3d* p2 ,
610 NXOpen::Point3d* p3 ,
611 NXOpen::Point3d* axis
612 );
619 (
620 NXOpen::ScCollector * collector ,
621 NXOpen::NXObject * targetUnit ,
622 NXOpen::Point3d* p1 ,
623 NXOpen::Point3d* p2 ,
624 NXOpen::Point3d* axis
625 );
631 (
632 NXOpen::ScCollector * collector ,
633 NXOpen::Point * center ,
634 bool minDist ,
635 NXOpen::NXObject * targetUnit ,
636 double* radius ,
637 NXOpen::Point3d* p1 ,
638 NXOpen::Point3d* p2 ,
639 std::vector<double> & axis
640 );
647 (
648 NXOpen::ScCollector * collector ,
649 const std::vector<NXOpen::Direction *> & vectors
650 );
656 (
657 NXOpen::Point * point ,
658 NXOpen::NXObject * csys ,
659 std::vector<NXOpen::Point3d> & coords
660 );
667 (
668 const std::vector<NXOpen::NXObject *> & selList ,
669 NXOpen::NXObject * targetUnit ,
670 std::vector<NXOpen::NXObject *> & pvUGCurves ,
671 NXOpen::Point3d* startPoint ,
672 NXOpen::Point3d* endPoint
673 );
679 (
680 const std::vector<NXOpen::NXObject *> & selList ,
681 int nAltSolution ,
682 const NXOpen::Point3d & ptAnchor ,
683 bool allowCache ,
684 std::vector<NXOpen::Point3d> & boxPoints ,
685 std::vector<NXOpen::Point3d> & dir ,
686 std::vector<double> & edgeLength ,
687 NXOpen::Point3d* ptOrigin ,
688 NXOpen::Point3d* ptExtreme ,
689 double* pdVolume
690 );
694 public: void GetSectionInertia
695 (
696 const std::vector<NXOpen::NXObject *> & curves ,
697 const std::vector<NXOpen::Unit *> & sectionUnits ,
699 bool solidFlag ,
700 double hollowThickness ,
701 bool useWCS ,
702 NXOpen::Point3d* centerGravity ,
703 double* maxPrinMOI ,
704 double* minPrinMOI ,
705 NXOpen::Vector3d* prinBAxis ,
706 NXOpen::Vector3d* prinCAxis ,
707 double* sectionLength ,
708 double* sectionArea ,
709 NXOpen::Point2d* rectangleLengths
710 );
715 public: void GetCircle3pts
716 (
717 const NXOpen::Point3d & point1 ,
718 const NXOpen::Point3d & point2 ,
719 const NXOpen::Point3d & point3 ,
720 NXOpen::NXObject * lengthUnit ,
721 NXOpen::NXObject * pointUnit ,
722 double* radius ,
723 double* diameter ,
724 NXOpen::Point3d* centroid ,
725 NXOpen::Vector3d* axis
726 );
732 public: void GetExtremeArea
733 (
734 const std::vector<NXOpen::NXObject *> & selList ,
736 NXOpen::NXObject * unit ,
737 double* radius ,
738 NXOpen::Point3d* centroid ,
739 NXOpen::Point3d* pointOnCircle ,
740 NXOpen::Vector3d* axis
741 );
742 }; //lint !e1712 default constructor not defined for class
743}
744#ifdef _MSC_VER
745#pragma warning(pop)
746#endif
747#ifdef __GNUC__
748#ifndef NX_NO_GCC_DEPRECATION_WARNINGS
749#pragma GCC diagnostic warning "-Wdeprecated-declarations"
750#endif
751#endif
752#undef EXPORTLIBRARY