OpendTect  6.6
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)
 
IntervalND< float > boundingBox (bool) const
 
CubicBezierCurveclone () const
 
Coord3 computePosition (float) const
 
Coord3 computeTangent (float) const
 
float directionInfluence () const
 
Coord3 getBezierVertex (GeomPosID, bool before) const
 
Coord3 getPosition (GeomPosID) const
 
Coord3 getTangent (GeomPosID, bool computeifudf) const
 
bool insertPosition (GeomPosID, const Coord3 &)
 
bool isCircular () const
 
bool isDefined (GeomPosID) const
 
bool isTangentDefined (GeomPosID) const
 
StepInterval< int > parameterRange () const
 
bool removePosition (GeomPosID)
 
bool setCircular (bool yn)
 
bool setPosition (GeomPosID, const Coord3 &)
 
bool setTangent (GeomPosID, const Coord3 &)
 
void setTangentInfluence (float)
 
bool unsetPosition (GeomPosID)
 
bool unsetTangent (GeomPosID)
 
- Public Member Functions inherited from Geometry::ParametricCurve
IteratorcreateIterator () const
 
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
 
- 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
 

Protected Member Functions

Coord3 computeTangent (GeomPosID) const
 
int getIndex (GeomPosID param) const
 
- 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 
)

Member Function Documentation

◆ boundingBox()

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

Reimplemented from Geometry::Element.

◆ clone()

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

Implements Geometry::Element.

◆ computePosition()

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

Computes the position between two samples

Implements Geometry::ParametricCurve.

◆ computeTangent() [1/2]

Coord3 Geometry::CubicBezierCurve::computeTangent ( float  ) const
virtual
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
virtual

Implements Geometry::Element.

◆ getTangent()

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

◆ insertPosition()

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

◆ isCircular()

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

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

Reimplemented from Geometry::ParametricCurve.

◆ isDefined()

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

Implements Geometry::Element.

◆ isTangentDefined()

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

◆ parameterRange()

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

◆ 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  
)
virtual

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-2022