FRX SDK Documentation 2025 SP0
Loading...
Searching...
No Matches
AcGeCurve2d.h
Go to the documentation of this file.
1#pragma once
2
3//
4// (C) Copyright 2005-2024 by Graebert GmbH.
5//
6// Permission to use, copy, modify, and distribute this software in
7// object code form for any purpose and without fee is hereby granted,
8// provided that the above copyright notice appears in all copies and
9// that both that copyright notice and the limited warranty and
10// restricted rights notice below appear in all supporting
11// documentation.
12//
13// GRAEBERT PROVIDES THIS PROGRAM "AS IS" AND WITH ALL FAULTS.
14// GRAEBERT SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTY OF
15// MERCHANTABILITY OR FITNESS FOR A PARTICULAR USE. GRAEBERT GMBH
16// DOES NOT WARRANT THAT THE OPERATION OF THE PROGRAM WILL BE
17// UNINTERRUPTED OR ERROR FREE.
18
19#include "..\acge17\AcGe.h"
22
23template < typename Param1 > class AcArrayMemCopyReallocator;
25class AcGeEntity2d;
26class AcGeInterval;
27class AcGeLine2d;
28class AcGePoint2d;
30class AcGeTol;
31class AcGeVector2d;
32
34{
35 friend class DefValueProducer;
36
37public:
48 AcGePoint2d evalPoint(double)const ;
50 double distanceTo( AcGeCurve2d const &, AcGeTol const & = AcGeContext::gTol)const ;
51 double distanceTo( AcGePoint2d const &, AcGeTol const & = AcGeContext::gTol)const ;
52 double length(double,double,double = AcGeContext::gTol.equalPoint())const ;
53 double paramAtLength(double,double,Frx::Boolean = Frx::kTrue,double = AcGeContext::gTol.equalPoint())const ;
54 double paramOf( AcGePoint2d const &, AcGeTol const & = AcGeContext::gTol)const ;
55 Adesk::Boolean area(double,double,double &, AcGeTol const & = AcGeContext::gTol)const ;
65 Adesk::Boolean isOn( AcGePoint2d const &,double &, AcGeTol const & = AcGeContext::gTol)const ;
66 Adesk::Boolean isOn(double, AcGeTol const & = AcGeContext::gTol)const ;
67 Adesk::Boolean isPeriodic(double &)const ;
71 void getInterval( AcGeInterval &)const ;
75 void getSamplePoints(double,double,double, AcGePoint2dArray &, AcGeDoubleArray &)const ;
77 void getSplitCurves(double, AcGeCurve2d * &, AcGeCurve2d * &)const ;
79
80protected:
83
84};
AcGeCurve2d & setInterval(void)
double paramAtLength(double, double, Frx::Boolean=Frx::kTrue, double=AcGeContext::gTol.equalPoint()) const
Adesk::Boolean isClosed(AcGeTol const &=AcGeContext::gTol) const
Adesk::Boolean isPeriodic(double &) const
void getClosestPointTo(AcGeCurve2d const &, AcGePointOnCurve2d &, AcGePointOnCurve2d &, AcGeTol const &=AcGeContext::gTol) const
AcGePoint2d closestPointTo(AcGeCurve2d const &, AcGePoint2d &, AcGeTol const &=AcGeContext::gTol) const
AcGePoint2d evalPoint(double) const
Adesk::Boolean isOn(AcGePoint2d const &, AcGeTol const &=AcGeContext::gTol) const
void getSplitCurves(double, AcGeCurve2d *&, AcGeCurve2d *&) const
void getInterval(AcGeInterval &, AcGePoint2d &, AcGePoint2d &) const
Adesk::Boolean isLinear(AcGeLine2d &, AcGeTol const &=AcGeContext::gTol) const
Adesk::Boolean isDegenerate(AcGeEntity2d *&, AcGeTol const &=AcGeContext::gTol) const
void getSamplePoints(int, AcGePoint2dArray &) const
void getClosestPointTo(AcGePoint2d const &, AcGePointOnCurve2d &, AcGeTol const &=AcGeContext::gTol) const
double paramOf(AcGePoint2d const &, AcGeTol const &=AcGeContext::gTol) const
AcGeCurve2d(AcGeCurve2d const &)
~AcGeCurve2d(void)
void getLocalClosestPoints(AcGePoint2d const &, AcGePointOnCurve2d &, AcGeInterval const *, AcGeTol const &=AcGeContext::gTol) const
Adesk::Boolean hasEndPoint(AcGePoint2d &) const
void getInterval(AcGeInterval &) const
double distanceTo(AcGeCurve2d const &, AcGeTol const &=AcGeContext::gTol) const
double length(double, double, double=AcGeContext::gTol.equalPoint()) const
Adesk::Boolean setInterval(AcGeInterval const &)
AcGeBoundBlock2d orthoBoundBlock(void) const
Adesk::Boolean hasStartPoint(AcGePoint2d &) const
AcGeBoundBlock2d orthoBoundBlock(AcGeInterval const &) const
AcGeBoundBlock2d boundBlock(AcGeInterval const &) const
Adesk::Boolean area(double, double, double &, AcGeTol const &=AcGeContext::gTol) const
Adesk::Boolean isDegenerate(AcGe::EntityId &, AcGeTol const &=AcGeContext::gTol) const
AcGePoint2d evalPoint(double, int, AcArray< AcGeVector2d, AcArrayMemCopyReallocator< AcGeVector2d > > &) const
AcGeCurve2d(void)
void getLocalClosestPoints(AcGeCurve2d const &, AcGePointOnCurve2d &, AcGePointOnCurve2d &, AcGeInterval const *, AcGeInterval const *, AcGeTol const &=AcGeContext::gTol) const
void getSamplePoints(double, double, double, AcGePoint2dArray &, AcGeDoubleArray &) const
Adesk::Boolean explode(AcDbVoidPtrArray &, AcGeIntArray &, AcGeInterval const *) const
AcGePoint2d closestPointTo(AcGePoint2d const &, AcGeTol const &=AcGeContext::gTol) const
double distanceTo(AcGePoint2d const &, AcGeTol const &=AcGeContext::gTol) const
AcGeBoundBlock2d boundBlock(void) const
AcGeCurve2d & operator=(AcGeCurve2d const &)
Adesk::Boolean isOn(AcGePoint2d const &, double &, AcGeTol const &=AcGeContext::gTol) const
Adesk::Boolean getNormalPoint(AcGePoint2d const &, AcGePointOnCurve2d &, AcGeTol const &=AcGeContext::gTol) const
AcGeCurve2d & reverseParam(void)
void getTrimmedOffset(double, AcDbVoidPtrArray &, AcGe::OffsetCrvExtType, AcGeTol const &=AcGeContext::gTol) const
Adesk::Boolean isOn(double, AcGeTol const &=AcGeContext::gTol) const
static ARX_API_STATIC AcGeTol gTol
Definition AcGeContext.h:24
OffsetCrvExtType
Definition AcGe.h:188
EntityId
Definition AcGe.h:84
@ kTrue
Definition frx.h:31