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

Public Member Functions

 CubicBezierSurface (const CubicBezierSurface &)
 
 CubicBezierSurface (const RowCol &step=RowCol(1, 1))
 
 ~CubicBezierSurface ()
 
IntervalND< float > boundingBox (bool approx) const
 
CubicBezierSurfaceclone () const
 
Coord3 computeNormal (const Coord &) const
 
Coord3 computePosition (const Coord &) const
 
ParametricCurvecreateColCurve (float col, const Interval< int > *rowrange=0) const
 
ParametricCurvecreateRowCurve (float row, const Interval< int > *colrange=0) const
 
float directionInfluence () const
 
Coord3 getBezierVertex (const RowCol &knot, const RowCol &relpos) const
 
Coord3 getColDirection (const RowCol &, bool computeifudf) const
 
Coord3 getKnot (const RowCol &, bool estimateifundef) const
 
virtual Coord3 getKnot (const RowCol &rc) const
 
const CubicBezierSurfacePatchgetPatch (const RowCol &) const
 
Coord3 getRowDirection (const RowCol &, bool computeifudf) const
 
bool insertCol (int col, int nrnew=1)
 
bool insertRow (int row, int nrnew=1)
 
bool intersectWithLine (const Line3 &, Coord &) const
 
bool isEmpty () const
 
bool removeCol (int col, int stopcol=-1)
 stopcol will be ignored More...
 
bool removeRow (int row, int stoprow=-1)
 stoprow will be ignored More...
 
void setDirectionInfluence (float)
 
- Public Member Functions inherited from Geometry::ParametricSurface
 ParametricSurface (const RowCol &origin=RowCol(0, 0), const RowCol &step=RowCol(1, 1))
 
 ~ParametricSurface ()
 
bool checkSelfIntersection (bool yn)
 
bool checksSelfIntersection () const
 
bool checksSupport () const
 
bool checkSupport (bool yn)
 
virtual bool circularCols () const
 
virtual bool circularRows () const
 
virtual StepInterval< int > colRange () const
 
virtual StepInterval< int > colRange (int row) const
 
int getKnotIndex (const RowCol &rc) const
 
RowCol getKnotRowCol (int idx) const
 
Coord3 getPosition (GeomPosID pid) const
 
bool hasSupport (const RowCol &) const
 
bool isAtEdge (const RowCol &) const
 
bool isDefined (GeomPosID pid) const
 
virtual bool isKnotDefined (const RowCol &) const
 
int nrKnots () const
 
virtual StepInterval< int > rowRange () const
 
virtual StepInterval< int > rowRange (int col) const
 
virtual bool setKnot (const RowCol &, const Coord3 &)
 
bool setPosition (GeomPosID pid, const Coord3 &)
 
void trimUndefParts ()
 
virtual bool unsetKnot (const RowCol &)
 
- Public Member Functions inherited from Geometry::RowColSurface
IteratorcreateIterator () const
 
virtual 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 ()
 
- 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

void _setKnot (int idx, const Coord3 &)
 
IntervalND< float > boundingBox (const RowCol &, bool ownvertices) const
 
bool checkSelfIntersection (const RowCol &) const
 
Coord3 computeColDirection (const RowCol &) const
 
Coord3 computeRowDirection (const RowCol &) const
 
int nrCols () const
 
int nrRows () const
 
- Protected Member Functions inherited from Geometry::ParametricSurface
int colIndex (int col) const
 
bool isAtSameEdge (const RowCol &, const RowCol &, TypeSet< RowCol > *=0) const
 
int rowIndex (int row) 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

Array2D< Coord3 > * coldirections
 
float directioninfluence
 
Array2D< Coord3 > * positions
 
Array2D< Coord3 > * rowdirections
 
- Protected Attributes inherited from Geometry::ParametricSurface
bool checkselfintersection_
 
bool checksupport_
 
RowCol origin_
 
RowCol step_
 
- 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
 
- Static Protected Member Functions inherited from Geometry::ParametricSurface
static int colDim ()
 
static int rowDim ()
 

Detailed Description

<>

Constructor & Destructor Documentation

◆ CubicBezierSurface() [1/2]

Geometry::CubicBezierSurface::CubicBezierSurface ( const RowCol step = RowCol(1, 1))

◆ CubicBezierSurface() [2/2]

Geometry::CubicBezierSurface::CubicBezierSurface ( const CubicBezierSurface )

◆ ~CubicBezierSurface()

Geometry::CubicBezierSurface::~CubicBezierSurface ( )

Member Function Documentation

◆ _setKnot()

void Geometry::CubicBezierSurface::_setKnot ( int  idx,
const Coord3  
)
protectedvirtual

◆ boundingBox() [1/2]

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

Reimplemented from Geometry::Element.

◆ boundingBox() [2/2]

IntervalND<float> Geometry::CubicBezierSurface::boundingBox ( const RowCol ,
bool  ownvertices 
) const
protected

◆ checkSelfIntersection()

bool Geometry::CubicBezierSurface::checkSelfIntersection ( const RowCol ) const
protectedvirtual

Reimplemented from Geometry::ParametricSurface.

◆ clone()

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

◆ computeColDirection()

Coord3 Geometry::CubicBezierSurface::computeColDirection ( const RowCol ) const
protected

◆ computeNormal()

Coord3 Geometry::CubicBezierSurface::computeNormal ( const Coord ) const
virtual

Reimplemented from Geometry::ParametricSurface.

◆ computePosition()

Coord3 Geometry::CubicBezierSurface::computePosition ( const Coord ) const
virtual

Reimplemented from Geometry::ParametricSurface.

◆ computeRowDirection()

Coord3 Geometry::CubicBezierSurface::computeRowDirection ( const RowCol ) const
protected

◆ createColCurve()

ParametricCurve* Geometry::CubicBezierSurface::createColCurve ( float  col,
const Interval< int > *  rowrange = 0 
) const
virtual

Reimplemented from Geometry::ParametricSurface.

◆ createRowCurve()

ParametricCurve* Geometry::CubicBezierSurface::createRowCurve ( float  row,
const Interval< int > *  colrange = 0 
) const
virtual

Reimplemented from Geometry::ParametricSurface.

◆ directionInfluence()

float Geometry::CubicBezierSurface::directionInfluence ( ) const

◆ getBezierVertex()

Coord3 Geometry::CubicBezierSurface::getBezierVertex ( const RowCol knot,
const RowCol relpos 
) const

◆ getColDirection()

Coord3 Geometry::CubicBezierSurface::getColDirection ( const RowCol ,
bool  computeifudf 
) const

◆ getKnot() [1/2]

Coord3 Geometry::CubicBezierSurface::getKnot ( const RowCol ,
bool  estimateifundef 
) const
virtual

◆ getKnot() [2/2]

virtual Coord3 Geometry::CubicBezierSurface::getKnot ( const RowCol rc) const
inlinevirtual

Reimplemented from Geometry::ParametricSurface.

◆ getPatch()

const CubicBezierSurfacePatch* Geometry::CubicBezierSurface::getPatch ( const RowCol ) const

◆ getRowDirection()

Coord3 Geometry::CubicBezierSurface::getRowDirection ( const RowCol ,
bool  computeifudf 
) const

◆ insertCol()

bool Geometry::CubicBezierSurface::insertCol ( int  col,
int  nrnew = 1 
)
virtual

◆ insertRow()

bool Geometry::CubicBezierSurface::insertRow ( int  row,
int  nrnew = 1 
)
virtual

◆ intersectWithLine()

bool Geometry::CubicBezierSurface::intersectWithLine ( const Line3 ,
Coord  
) const

◆ isEmpty()

bool Geometry::CubicBezierSurface::isEmpty ( ) const
inlinevirtual

◆ nrCols()

int Geometry::CubicBezierSurface::nrCols ( ) const
protectedvirtual

◆ nrRows()

int Geometry::CubicBezierSurface::nrRows ( ) const
protectedvirtual

◆ removeCol()

bool Geometry::CubicBezierSurface::removeCol ( int  col,
int  stopcol = -1 
)
virtual

stopcol will be ignored

Reimplemented from Geometry::ParametricSurface.

◆ removeRow()

bool Geometry::CubicBezierSurface::removeRow ( int  row,
int  stoprow = -1 
)
virtual

stoprow will be ignored

Reimplemented from Geometry::ParametricSurface.

◆ setDirectionInfluence()

void Geometry::CubicBezierSurface::setDirectionInfluence ( float  )

Member Data Documentation

◆ coldirections

Array2D<Coord3>* Geometry::CubicBezierSurface::coldirections
protected

◆ directioninfluence

float Geometry::CubicBezierSurface::directioninfluence
protected

◆ positions

Array2D<Coord3>* Geometry::CubicBezierSurface::positions
protected

◆ rowdirections

Array2D<Coord3>* Geometry::CubicBezierSurface::rowdirections
protected

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