FRX SDK Documentation 2025 SP0
Loading...
Searching...
No Matches
AcGeImpExternalCurve3d.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"
20
21class AcGeImpCurve3d;
22class AcGeImpEntity3d;
23class AcGeImpInterval;
25class AcGeImpObject;
27class AcGeMatrix3d;
28class AcGePoint3d;
30class AcGeTol;
31class AcGeVector3d;
32
34{
35public:
43 int isCircArc( AcGeImpCurve3d * &)const ;
44 int isCircArc(void)const ;
45 int isDefined(void)const ;
46 int isEllipArc( AcGeImpCurve3d * &)const ;
47 int isEllipArc(void)const ;
48 int isLine( AcGeImpCurve3d * &)const ;
49 int isLine(void)const ;
50 int isLineSeg( AcGeImpCurve3d * &)const ;
51 int isLineSeg(void)const ;
53 int isNurbCurve( AcGeImpCurve3d * &)const ;
54 int isNurbCurve(void)const ;
55 int isOwnerOfCurve(void)const ;
56 int isRay( AcGeImpCurve3d * &)const ;
57 int isRay(void)const ;
61 virtual AcGeImpCurve3d & setInterval(void);
63 virtual AcGeImpEntity3d * project( AcGeImpPlanarEnt const &, AcGeVector3d const &, AcGeTol const & = AcGeContext::gTol)const ;
64 virtual AcGeImpObject * copy(void)const ;
65 virtual double length(double,double,double)const ;
66 virtual double paramAtLength(double,double,int,double)const ;
67 virtual double paramOf( AcGePoint3d const &, AcGeTol const & = AcGeContext::gTol)const ;
68 virtual AcGe::EntityId type(int)const ;
69 virtual int isClosed( AcGeTol const & = AcGeContext::gTol)const ;
70 virtual int isDegenerate( AcGeImpEntity3d * &, AcGeTol const & = AcGeContext::gTol)const ;
71 virtual int isDegenerate( AcGe::EntityId &, AcGeTol const & = AcGeContext::gTol)const ;
72 virtual int isEqualTo( AcGeImpEntity3d const &, AcGeTol const & = AcGeContext::gTol)const ;
73 virtual int isLinear( AcGeImpLinearEnt3d &, AcGeTol const & = AcGeContext::gTol)const ;
74 virtual int isOn( AcGePoint3d const &,double &, AcGeTol const & = AcGeContext::gTol)const ;
75 virtual int isPeriodic(double &,int)const ;
76 virtual int isPlanar( AcGeImpPlanarEnt &, AcGeTol const & = AcGeContext::gTol)const ;
77 virtual void getInterval( AcGeImpInterval &,int,int)const ;
78 virtual void getSplitCurves(double, AcGeImpCurve3d * &, AcGeImpCurve3d * &)const ;
79 void getExternalCurve(void * &)const ;
80
81private:
82 virtual void evaluate(int, AcGePointOnCurve3dData &,int)const ;
83
84};
virtual void getSplitCurves(double, AcGeImpCurve3d *&, AcGeImpCurve3d *&) const
int isRay(void) const
virtual int isEqualTo(AcGeImpEntity3d const &, AcGeTol const &=AcGeContext::gTol) const
int isRay(AcGeImpCurve3d *&) const
virtual int isDegenerate(AcGeImpEntity3d *&, AcGeTol const &=AcGeContext::gTol) const
AcGe::ExternalEntityKind externalCurveKind(void) const
int isEllipArc(AcGeImpCurve3d *&) const
int isLineSeg(AcGeImpCurve3d *&) const
virtual int isPeriodic(double &, int) const
virtual ~AcGeImpExternalCurve3d(void)
virtual int isPlanar(AcGeImpPlanarEnt &, AcGeTol const &=AcGeContext::gTol) const
virtual AcGeImpEntity3d & transformBy(AcGeMatrix3d const &)
void getExternalCurve(void *&) const
AcGeImpExternalCurve3d & setToOwnCurve(void)
int isCircArc(void) const
virtual int isLinear(AcGeImpLinearEnt3d &, AcGeTol const &=AcGeContext::gTol) const
int isNurbCurve(AcGeImpCurve3d *&) const
int isLine(AcGeImpCurve3d *&) const
AcGeImpExternalCurve3d(AcGeImpExternalCurve3d const &)
int isOwnerOfCurve(void) const
int isCircArc(AcGeImpCurve3d *&) const
virtual double length(double, double, double) const
virtual AcGeImpCurve3d & setInterval(AcGeImpInterval const &, int)
AcGeImpExternalCurve3d(void *, AcGe::ExternalEntityKind, int)
AcGeImpExternalCurve3d & set(void *, AcGe::ExternalEntityKind, int)
int isLineSeg(void) const
virtual int isOn(AcGePoint3d const &, double &, AcGeTol const &=AcGeContext::gTol) const
virtual AcGeImpCurve3d & setInterval(void)
int isLine(void) const
int isNativeCurve(AcGeImpCurve3d *&) const
int isEllipArc(void) const
virtual AcGe::EntityId type(int) const
virtual AcGeImpCurve3d & reverseParam(void)
virtual double paramAtLength(double, double, int, double) const
virtual void getInterval(AcGeImpInterval &, int, int) const
virtual double paramOf(AcGePoint3d const &, AcGeTol const &=AcGeContext::gTol) const
int isDefined(void) const
virtual int isDegenerate(AcGe::EntityId &, AcGeTol const &=AcGeContext::gTol) const
virtual AcGeImpObject * copy(void) const
AcGeImpExternalCurve3d & operator=(AcGeImpExternalCurve3d const &)
virtual AcGeImpEntity3d * project(AcGeImpPlanarEnt const &, AcGeVector3d const &, AcGeTol const &=AcGeContext::gTol) const
virtual int isClosed(AcGeTol const &=AcGeContext::gTol) const
int isNurbCurve(void) const
static ARX_API_STATIC AcGeTol gTol
Definition AcGeContext.h:24
ExternalEntityKind
Definition AcGe.h:183
EntityId
Definition AcGe.h:84