Public Member Functions | Public Attributes | Protected Member Functions | Static Protected Member Functions | Protected Attributes

EM::EdgeLine Class Reference

Inheritance diagram for EM::EdgeLine:
CallBacker

List of all members.

Public Member Functions

 EdgeLine (EM::Horizon3D &, const EM::SectionID &)
virtual ~EdgeLine ()
virtual void setTime2Depth (const FloatMathFunction *)
EdgeLineclone () const
void setSection (const EM::SectionID &)
int getSegment (const EM::PosID &, int *segpos=0) const
int getSegment (const RowCol &, int *segpos=0, const EdgeLineSegment *ignoreseg=0) const
bool isClosed () const
bool isInside (const EM::PosID &, bool undefval) const
bool isInside (const RowCol &, bool undefval) const
bool isHole () const
int computeArea () const
bool setRemoveZeroSegments (bool yn)
bool getRemoveZeroSegments () const
int nrSegments () const
void insertSegment (EdgeLineSegment *, int idx, bool cutexisting)
void insertSegments (ObjectSet< EdgeLineSegment > &, int idx, bool cutexisting)
const EdgeLineSegmentgetSegment (int idx) const
EdgeLineSegmentgetSegment (int idx)
bool reTrackLine ()
bool repairLine ()
const EM::Horizon3DgetHorizon () const
EM::SectionID getSection () const
void getBoundingBox (RowCol &start, RowCol &stop) const
int cutLineBy (const RowCol &start, const RowCol &stop, const EdgeLineSegment *dontremove=0)
void fillPar (IOPar &) const
bool usePar (const IOPar &)

Public Attributes

Notifier< EdgeLinechangenotifier

Protected Member Functions

void sectionChangeCB (CallBacker *)
int findNeighborTo (const RowCol &rc, int startseg, int startpos, bool forward, int *segpos) const
void reduceSegments ()

Static Protected Member Functions

static const char * segmentprefixstr ()
static const char * nrsegmentsstr ()

Protected Attributes

EM::Horizon3Dhorizon_
EM::SectionID section
ObjectSet< EdgeLineSegmentsegments
bool removezerosegs
const FloatMathFunction * t2d

Constructor & Destructor Documentation

EM::EdgeLine::EdgeLine ( EM::Horizon3D ,
const EM::SectionID  
)
virtual EM::EdgeLine::~EdgeLine (  )  [inline, virtual]

Member Function Documentation

EdgeLine* EM::EdgeLine::clone (  )  const
int EM::EdgeLine::computeArea (  )  const
int EM::EdgeLine::cutLineBy ( const RowCol start,
const RowCol stop,
const EdgeLineSegment dontremove = 0 
)
Returns:
the index of the segment just after the cuts begins
void EM::EdgeLine::fillPar ( IOPar  )  const
int EM::EdgeLine::findNeighborTo ( const RowCol rc,
int  startseg,
int  startpos,
bool  forward,
int *  segpos 
) const [protected]
void EM::EdgeLine::getBoundingBox ( RowCol start,
RowCol stop 
) const
const EM::Horizon3D& EM::EdgeLine::getHorizon (  )  const [inline]
bool EM::EdgeLine::getRemoveZeroSegments (  )  const [inline]
EM::SectionID EM::EdgeLine::getSection (  )  const [inline]
const EdgeLineSegment* EM::EdgeLine::getSegment ( int  idx  )  const [inline]
EdgeLineSegment* EM::EdgeLine::getSegment ( int  idx  )  [inline]
int EM::EdgeLine::getSegment ( const RowCol ,
int *  segpos = 0,
const EdgeLineSegment ignoreseg = 0 
) const
int EM::EdgeLine::getSegment ( const EM::PosID ,
int *  segpos = 0 
) const
void EM::EdgeLine::insertSegment ( EdgeLineSegment ,
int  idx,
bool  cutexisting 
)
void EM::EdgeLine::insertSegments ( ObjectSet< EdgeLineSegment > &  ,
int  idx,
bool  cutexisting 
)
bool EM::EdgeLine::isClosed (  )  const
bool EM::EdgeLine::isHole (  )  const
bool EM::EdgeLine::isInside ( const RowCol ,
bool  undefval 
) const
bool EM::EdgeLine::isInside ( const EM::PosID ,
bool  undefval 
) const
int EM::EdgeLine::nrSegments (  )  const [inline]
static const char* EM::EdgeLine::nrsegmentsstr (  )  [static, protected]
void EM::EdgeLine::reduceSegments (  )  [protected]

Removes zero-length segments and joins neighbor segments with identical settings

bool EM::EdgeLine::repairLine (  ) 
bool EM::EdgeLine::reTrackLine (  ) 
void EM::EdgeLine::sectionChangeCB ( CallBacker  )  [protected]
static const char* EM::EdgeLine::segmentprefixstr (  )  [static, protected]
bool EM::EdgeLine::setRemoveZeroSegments ( bool  yn  ) 
void EM::EdgeLine::setSection ( const EM::SectionID  ) 
virtual void EM::EdgeLine::setTime2Depth ( const FloatMathFunction *   )  [virtual]
bool EM::EdgeLine::usePar ( const IOPar  ) 

Member Data Documentation

bool EM::EdgeLine::removezerosegs [protected]
const FloatMathFunction* EM::EdgeLine::t2d [protected]