OpendTect  7.0
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
Geometry::CubicBezierCurve Class Reference
Inheritance diagram for Geometry::CubicBezierCurve:
[legend]

Public Member Functions

 CubicBezierCurve (const Coord3 &, const Coord3 &, int firstparam=0, int step=1)
 
 ~CubicBezierCurve ()
 
IntervalND< float > boundingBox (bool) const override
 
CubicBezierCurveclone () const override
 
Coord3 computePosition (float) const override
 
Coord3 computeTangent (float) const override
 
float directionInfluence () const
 
Coord3 getBezierVertex (GeomPosID, bool before) const
 
Coord3 getPosition (GeomPosID) const override
 
Coord3 getTangent (GeomPosID, bool computeifudf) const
 
bool insertPosition (GeomPosID, const Coord3 &) override
 
bool isCircular () const override
 
bool isDefined (GeomPosID) const override
 
bool isTangentDefined (GeomPosID) const
 
StepInterval< int > parameterRange () const override
 
bool removePosition (GeomPosID)
 
bool setCircular (bool yn)
 
bool setPosition (GeomPosID, const Coord3 &) override
 
bool setTangent (GeomPosID, const Coord3 &)
 
void setTangentInfluence (float)
 
bool unsetPosition (GeomPosID)
 
bool unsetTangent (GeomPosID)
 
- Public Member Functions inherited from Geometry::ParametricCurve
 ~ParametricCurve ()
 
IteratorcreateIterator () const override
 
virtual bool findClosestIntersection (float &p, const Plane3 &, float eps=1e-2) const
 
virtual bool findClosestPosition (float &p, const Coord3 &, float eps=1e-2) const
 
void getPosIDs (TypeSet< GeomPosID > &, bool=true) const override
 
- Public Member Functions inherited from Geometry::Element
 Element ()
 
virtual ~Element ()
 
void blockCallBacks (bool yn, bool flush=true)
 
bool blocksCallBacks () const
 
virtual uiString errMsg () const
 
virtual bool isChanged () const
 
virtual void resetChangedFlag ()
 
virtual void trimUndefParts ()
 
- Public Member Functions inherited from CallBacker
 CallBacker ()
 
 CallBacker (const CallBacker &)
 
virtual ~CallBacker ()
 
bool attachCB (const NotifierAccess &, const CallBack &, bool onlyifnew=false) const
 
bool attachCB (const NotifierAccess *notif, const CallBack &cb, bool onlyifnew=false) const
 
void detachAllNotifiers () const
 Call from the destructor of your inherited object. More...
 
void detachCB (const NotifierAccess &, const CallBack &) const
 
void detachCB (const NotifierAccess *notif, const CallBack &cb) const
 
virtual bool isCapsule () const
 
bool isNotifierAttached (const NotifierAccess *) const
 Only for debugging purposes, don't use. More...
 
void stopReceivingNotifications () const
 
virtual CallBackertrueCaller ()
 

Protected Member Functions

Coord3 computeTangent (GeomPosID) const
 
int getIndex (GeomPosID param) const
 
- Protected Member Functions inherited from Geometry::ParametricCurve
 ParametricCurve ()
 
- Protected Member Functions inherited from Geometry::Element
uiStringerrmsg ()
 
void triggerMovement ()
 
void triggerMovement (const GeomPosID &)
 
void triggerMovement (const TypeSet< GeomPosID > &)
 
void triggerNrPosCh ()
 
void triggerNrPosCh (const GeomPosID &)
 
void triggerNrPosCh (const TypeSet< GeomPosID > &)
 

Protected Attributes

float directioninfluence
 
TypeSet< Coord3directions
 
int firstparam
 
bool iscircular
 
int paramstep
 
TypeSet< Coord3positions
 
- Protected Attributes inherited from Geometry::Element
bool blockcbs_
 
bool ischanged_
 
TypeSet< GeomPosID > movementbuffer_
 
TypeSet< GeomPosID > nrposchbuffer_
 

Additional Inherited Members

- Static Public Member Functions inherited from CallBacker
static void createReceiverForCurrentThread ()
 
static void removeReceiverForCurrentThread ()
 
- Public Attributes inherited from Geometry::Element
CNotifier< Element, const TypeSet< GeomPosID > * > movementnotifier
 
CNotifier< Element, const TypeSet< GeomPosID > * > nrpositionnotifier
 

Detailed Description

<>

Constructor & Destructor Documentation

◆ CubicBezierCurve()

Geometry::CubicBezierCurve::CubicBezierCurve ( const Coord3 ,
const Coord3 ,
int  firstparam = 0,
int  step = 1 
)

◆ ~CubicBezierCurve()

Geometry::CubicBezierCurve::~CubicBezierCurve ( )

Member Function Documentation

◆ boundingBox()

IntervalND<float> Geometry::CubicBezierCurve::boundingBox ( bool  ) const
overridevirtual

Reimplemented from Geometry::Element.

◆ clone()

CubicBezierCurve* Geometry::CubicBezierCurve::clone ( ) const
overridevirtual

Implements Geometry::Element.

◆ computePosition()

Coord3 Geometry::CubicBezierCurve::computePosition ( float  ) const
overridevirtual

Computes the position between two samples

Implements Geometry::ParametricCurve.

◆ computeTangent() [1/2]

Coord3 Geometry::CubicBezierCurve::computeTangent ( float  ) const
overridevirtual
Note
the tangent is scaled so the components (x, y, z) forms the derivatives: (dx/du, dy/du, dz/du ).

Implements Geometry::ParametricCurve.

◆ computeTangent() [2/2]

Coord3 Geometry::CubicBezierCurve::computeTangent ( GeomPosID  ) const
protected

◆ directionInfluence()

float Geometry::CubicBezierCurve::directionInfluence ( ) const

◆ getBezierVertex()

Coord3 Geometry::CubicBezierCurve::getBezierVertex ( GeomPosID  ,
bool  before 
) const

◆ getIndex()

int Geometry::CubicBezierCurve::getIndex ( GeomPosID  param) const
inlineprotected

◆ getPosition()

Coord3 Geometry::CubicBezierCurve::getPosition ( GeomPosID  ) const
overridevirtual

Implements Geometry::Element.

◆ getTangent()

Coord3 Geometry::CubicBezierCurve::getTangent ( GeomPosID  ,
bool  computeifudf 
) const

◆ insertPosition()

bool Geometry::CubicBezierCurve::insertPosition ( GeomPosID  ,
const Coord3  
)
overridevirtual

◆ isCircular()

bool Geometry::CubicBezierCurve::isCircular ( ) const
overridevirtual

If true, the curve is connected between parameterRange().stop and parameterRange().start.

Reimplemented from Geometry::ParametricCurve.

◆ isDefined()

bool Geometry::CubicBezierCurve::isDefined ( GeomPosID  ) const
overridevirtual

Implements Geometry::Element.

◆ isTangentDefined()

bool Geometry::CubicBezierCurve::isTangentDefined ( GeomPosID  ) const

◆ parameterRange()

StepInterval<int> Geometry::CubicBezierCurve::parameterRange ( ) const
overridevirtual

◆ removePosition()

bool Geometry::CubicBezierCurve::removePosition ( GeomPosID  )

The opposite of insertPosition

◆ setCircular()

bool Geometry::CubicBezierCurve::setCircular ( bool  yn)

◆ setPosition()

bool Geometry::CubicBezierCurve::setPosition ( GeomPosID  ,
const Coord3  
)
overridevirtual

Implements Geometry::Element.

◆ setTangent()

bool Geometry::CubicBezierCurve::setTangent ( GeomPosID  ,
const Coord3  
)

◆ setTangentInfluence()

void Geometry::CubicBezierCurve::setTangentInfluence ( float  )

◆ unsetPosition()

bool Geometry::CubicBezierCurve::unsetPosition ( GeomPosID  )

Sets position to undefined

◆ unsetTangent()

bool Geometry::CubicBezierCurve::unsetTangent ( GeomPosID  )

Member Data Documentation

◆ directioninfluence

float Geometry::CubicBezierCurve::directioninfluence
protected

◆ directions

TypeSet<Coord3> Geometry::CubicBezierCurve::directions
protected

◆ firstparam

int Geometry::CubicBezierCurve::firstparam
protected

◆ iscircular

bool Geometry::CubicBezierCurve::iscircular
protected

◆ paramstep

int Geometry::CubicBezierCurve::paramstep
protected

◆ positions

TypeSet<Coord3> Geometry::CubicBezierCurve::positions
protected

Generated at for the OpendTect seismic interpretation project. Copyright (C): dGB Beheer B.V. 1995-2024