FRX SDK Documentation 2025 SP0
Loading...
Searching...
No Matches
AcGeImpSplineEnt3d.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
21template < typename Param1 > class AcArrayMemCopyReallocator;
23class AcGeImpCurve3d;
24class AcGeImpEntity3d;
25class AcGeImpInterval;
29class AcGeKnotVector;
30class AcGeMatrix3d;
31class AcGePoint2d;
32class AcGePoint3d;
33class AcGeTol;
34class AcGeVector2d;
35class AcGeVector3d;
36
38{
39 friend class DefValueProducer;
40
41public:
46 AcGeKnotVector const & knots(void)const ;
47 double knotAt(int)const ;
48 int isRational(void)const ;
49 int numControlPoints(void)const ;
50 int numKnots(void)const ;
53 virtual ~AcGeImpSplineEnt3d(void);
54 virtual AcGeImpBoundBlock3d boundBlock(int, AcGeImpInterval const &,int)const ;
57 virtual AcGeImpCurve3d & setInterval(void);
62 virtual AcGePoint3d controlPointAt(int)const ;
63 virtual AcGePoint3d endPoint(void)const ;
64 virtual AcGePoint3d startPoint(void)const ;
65 virtual double endDomain(void)const ;
66 virtual double endParam(void)const ;
67 virtual double startDomain(void)const ;
68 virtual double startParam(void)const ;
69 virtual int continuityAtKnot(int, AcGeTol const & = AcGeContext::gTol)const ;
70 virtual int isClosed( AcGeTol const & = AcGeContext::gTol)const ;
71 virtual int isDegenerate( AcGeImpEntity3d * &, AcGeTol const & = AcGeContext::gTol)const ;
72 virtual int isDegenerate( AcGe::EntityId &, AcGeTol const & = AcGeContext::gTol)const ;
73 virtual int isEqualTo( AcGeImpEntity3d const &, AcGeTol const & = AcGeContext::gTol)const ;
74 virtual int isLinear( AcGeImpLinearEnt3d &, AcGeTol const & = AcGeContext::gTol)const ;
75 virtual int isPeriodic(double &,int)const ;
76 virtual int isPlanar( AcGeImpPlanarEnt &, AcGeTol const & = AcGeContext::gTol)const ;
77 virtual int order(void)const ;
78 virtual void getInterval( AcGeImpInterval &, AcGePoint3d &, AcGePoint3d &)const ;
79 virtual void getInterval( AcGeImpInterval &,int,int)const ;
81 void resetLinFlags(void);
82
83protected:
88
89};
virtual AcGeImpBoundBlock3d boundBlock(int, AcGeImpInterval const &, int) const
AcGeKnotVector const & knots(void) const
AcGeImpSplineEnt3d(AcArray< AcGePoint3d, AcArrayMemCopyReallocator< AcGePoint3d > > const &)
virtual double endParam(void) const
virtual AcGeImpCurve3d & setInterval(void)
virtual int continuityAtKnot(int, AcGeTol const &=AcGeContext::gTol) const
virtual AcGePoint3d controlPointAt(int) const
virtual AcGeImpCurve3d & reverseParam(void)
AcGeImpSplineEnt3d & makePeriodic(void)
static void __cdecl convertVecArr(AcArray< AcGeVector2d, AcArrayMemCopyReallocator< AcGeVector2d > > const &, AcArray< AcGeVector3d, AcArrayMemCopyReallocator< AcGeVector3d > > &)
AcGeImpSplineEnt3d & operator=(AcGeImpSplineEnt3d const &)
AcGeImpSplineEnt3d(AcGeImpSplineEnt3d const &)
virtual AcGeImpSplineEnt3d & setControlPointAt(int, AcGePoint3d)
virtual AcGePoint3d endPoint(void) const
double knotAt(int) const
virtual ~AcGeImpSplineEnt3d(void)
virtual void getInterval(AcGeImpInterval &, AcGePoint3d &, AcGePoint3d &) const
AcGeImpSplineEnt3d & setKnotAt(int, double)
AcGeImpSplineEnt3d & makeNonPeriodic(void)
virtual int order(void) const
virtual AcGeImpCurve3d & setInterval(AcGeImpInterval const &, int)
virtual int isClosed(AcGeTol const &=AcGeContext::gTol) const
virtual int isPeriodic(double &, int) const
virtual int isPlanar(AcGeImpPlanarEnt &, AcGeTol const &=AcGeContext::gTol) const
virtual int isEqualTo(AcGeImpEntity3d const &, AcGeTol const &=AcGeContext::gTol) const
int isRational(void) const
virtual int isDegenerate(AcGe::EntityId &, AcGeTol const &=AcGeContext::gTol) const
virtual double startParam(void) const
virtual AcGeImpCurve3d & setNaturalInterval(void)
virtual AcGePoint3d startPoint(void) const
virtual AcGeImpEntity3d & translateBy(AcGeVector3d const &)
virtual double startDomain(void) const
int numControlPoints(void) const
void resetLinFlags(void)
static void __cdecl convertPntArr(AcGePoint2dArray const &, AcArray< AcGePoint3d, AcArrayMemCopyReallocator< AcGePoint3d > > &)
AcGeImpSplineEnt3d(AcGeKnotVector const &, AcArray< AcGePoint3d, AcArrayMemCopyReallocator< AcGePoint3d > > const &, int)
virtual int isDegenerate(AcGeImpEntity3d *&, AcGeTol const &=AcGeContext::gTol) const
virtual double endDomain(void) const
int numKnots(void) const
virtual AcGeImpEntity3d & transformBy(AcGeMatrix3d const &)
virtual void getSamplePoints(double, double, double, AcGeImpPointOnCurve3d &, AcArray< AcGePoint3d, AcArrayMemCopyReallocator< AcGePoint3d > > &, AcGeDoubleArray &, AcArray< AcGeVector3d, AcArrayMemCopyReallocator< AcGeVector3d > > *, AcArray< AcGeVector3d, AcArrayMemCopyReallocator< AcGeVector3d > > *) const
virtual int isLinear(AcGeImpLinearEnt3d &, AcGeTol const &=AcGeContext::gTol) const
virtual void getInterval(AcGeImpInterval &, int, int) const
static ARX_API_STATIC AcGeTol gTol
Definition AcGeContext.h:24
EntityId
Definition AcGe.h:84