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

Public Types

enum  ChangeTag { PolygonChange =__mUndefIntVal+1 , PolygonInsert , PolygonRemove }
 

Public Member Functions

 PolygonSurface ()
 
 ~PolygonSurface ()
 
void addEditPlaneNormal (const Coord3 &normal)
 
void addUdfPolygon (int polygnr, int firstknotnr, int nrknots)
 
char bodyDimension () const
 
Elementclone () const override
 
virtual StepInterval< int > colRange () const override
 
StepInterval< int > colRange (int polygon) const override
 
void getAllKnots (TypeSet< Coord3 > &) const
 
int getBezierCurveSmoothness () const
 
void getCubicBezierCurve (int plg, TypeSet< Coord3 > &pts, const float zscale) const
 
void getExceptionEdges (int plg, TypeSet< int > &edges) const
 
Coord3 getKnot (const RowCol &) const override
 
const Coord3getPolygonConcaveDir (int polygonnr) const
 
void getPolygonConcaveTriangles (int plg, TypeSet< int > &) const
 
const Coord3getPolygonNormal (int polygonnr) const
 
bool insertKnot (const RowCol &, const Coord3 &)
 
bool insertPolygon (const Coord3 &firstpos, const Coord3 &normal, int polygon=0, int firstknot=0)
 
bool isEmpty () const override
 
bool isKnotDefined (const RowCol &) const override
 
int nrPolygons () const
 
bool removeKnot (const RowCol &)
 
bool removePolygon (int polygon)
 
StepInterval< int > rowRange () const override
 
void setBezierCurveSmoothness (int nrpoints_on_segment)
 
bool setKnot (const RowCol &, const Coord3 &) override
 
- Public Member Functions inherited from Geometry::RowColSurface
 ~RowColSurface ()
 
IteratorcreateIterator () const override
 
void getPosIDs (TypeSet< GeomPosID > &, bool=true) const override
 
Coord3 getPosition (GeomPosID pid) const override
 
bool isDefined (GeomPosID pid) const override
 
bool setPosition (GeomPosID pid, const Coord3 &) override
 
- Public Member Functions inherited from Geometry::Element
 Element ()
 
virtual ~Element ()
 
void blockCallBacks (bool yn, bool flush=true)
 
bool blocksCallBacks () const
 
virtual IntervalND< float > boundingBox (bool approx) 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

bool includesEdge (const TypeSet< int > edges, int v0, int v1) const
 
bool linesegmentsIntersecting (const Coord3 &v0, const Coord3 &v1, const Coord3 &p0, const Coord3 &p1) const
 
- Protected Member Functions inherited from Geometry::RowColSurface
 RowColSurface ()
 
- 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

int beziernrpts_
 
TypeSet< Coord3concavedirs_
 
TypeSet< int > firstknots_
 
int firstpolygon_
 
TypeSet< Coord3polygonnormals_
 
ObjectSet< TypeSet< Coord3 > > polygons_
 
- 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

<>

Member Enumeration Documentation

◆ ChangeTag

Enumerator
PolygonChange 
PolygonInsert 
PolygonRemove 

Constructor & Destructor Documentation

◆ PolygonSurface()

Geometry::PolygonSurface::PolygonSurface ( )

◆ ~PolygonSurface()

Geometry::PolygonSurface::~PolygonSurface ( )

Member Function Documentation

◆ addEditPlaneNormal()

void Geometry::PolygonSurface::addEditPlaneNormal ( const Coord3 normal)

◆ addUdfPolygon()

void Geometry::PolygonSurface::addUdfPolygon ( int  polygnr,
int  firstknotnr,
int  nrknots 
)

◆ bodyDimension()

char Geometry::PolygonSurface::bodyDimension ( ) const

◆ clone()

Element* Geometry::PolygonSurface::clone ( ) const
overridevirtual

Implements Geometry::Element.

◆ colRange() [1/2]

virtual StepInterval<int> Geometry::PolygonSurface::colRange ( ) const
inlineoverridevirtual

Reimplemented from Geometry::RowColSurface.

◆ colRange() [2/2]

StepInterval<int> Geometry::PolygonSurface::colRange ( int  polygon) const
overridevirtual

◆ getAllKnots()

void Geometry::PolygonSurface::getAllKnots ( TypeSet< Coord3 > &  ) const

◆ getBezierCurveSmoothness()

int Geometry::PolygonSurface::getBezierCurveSmoothness ( ) const
inline

◆ getCubicBezierCurve()

void Geometry::PolygonSurface::getCubicBezierCurve ( int  plg,
TypeSet< Coord3 > &  pts,
const float  zscale 
) const

◆ getExceptionEdges()

void Geometry::PolygonSurface::getExceptionEdges ( int  plg,
TypeSet< int > &  edges 
) const

◆ getKnot()

Coord3 Geometry::PolygonSurface::getKnot ( const RowCol ) const
overridevirtual

◆ getPolygonConcaveDir()

const Coord3& Geometry::PolygonSurface::getPolygonConcaveDir ( int  polygonnr) const

◆ getPolygonConcaveTriangles()

void Geometry::PolygonSurface::getPolygonConcaveTriangles ( int  plg,
TypeSet< int > &   
) const

◆ getPolygonNormal()

const Coord3& Geometry::PolygonSurface::getPolygonNormal ( int  polygonnr) const

◆ includesEdge()

bool Geometry::PolygonSurface::includesEdge ( const TypeSet< int >  edges,
int  v0,
int  v1 
) const
protected

◆ insertKnot()

bool Geometry::PolygonSurface::insertKnot ( const RowCol ,
const Coord3  
)

◆ insertPolygon()

bool Geometry::PolygonSurface::insertPolygon ( const Coord3 firstpos,
const Coord3 normal,
int  polygon = 0,
int  firstknot = 0 
)

◆ isEmpty()

bool Geometry::PolygonSurface::isEmpty ( ) const
inlineoverridevirtual

◆ isKnotDefined()

bool Geometry::PolygonSurface::isKnotDefined ( const RowCol ) const
overridevirtual

◆ linesegmentsIntersecting()

bool Geometry::PolygonSurface::linesegmentsIntersecting ( const Coord3 v0,
const Coord3 v1,
const Coord3 p0,
const Coord3 p1 
) const
protected

◆ nrPolygons()

int Geometry::PolygonSurface::nrPolygons ( ) const
inline

◆ removeKnot()

bool Geometry::PolygonSurface::removeKnot ( const RowCol )

◆ removePolygon()

bool Geometry::PolygonSurface::removePolygon ( int  polygon)

◆ rowRange()

StepInterval<int> Geometry::PolygonSurface::rowRange ( ) const
overridevirtual

◆ setBezierCurveSmoothness()

void Geometry::PolygonSurface::setBezierCurveSmoothness ( int  nrpoints_on_segment)

◆ setKnot()

bool Geometry::PolygonSurface::setKnot ( const RowCol ,
const Coord3  
)
overridevirtual

Member Data Documentation

◆ beziernrpts_

int Geometry::PolygonSurface::beziernrpts_
protected

◆ concavedirs_

TypeSet<Coord3> Geometry::PolygonSurface::concavedirs_
protected

◆ firstknots_

TypeSet<int> Geometry::PolygonSurface::firstknots_
protected

◆ firstpolygon_

int Geometry::PolygonSurface::firstpolygon_
protected

◆ polygonnormals_

TypeSet<Coord3> Geometry::PolygonSurface::polygonnormals_
protected

◆ polygons_

ObjectSet<TypeSet<Coord3> > Geometry::PolygonSurface::polygons_
protected

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