45 enum RelationType { UnRelated=0, Related, SubSet, SuperSet, Identical };
49 virtual bool is2D()
const = 0;
51 static const Geometry& default3D();
53 ID
getID()
const {
return id_; }
54 void setID( ID
id ) { id_ = id; }
55 virtual const char* getName()
const = 0;
62 bool includes(
const TrcKey&)
const;
70 virtual TrcKey nearestTrace(
const Coord&,
float* distance=0)
const = 0;
74 virtual float averageTrcDist()
const = 0;
107 const Geometry* getGeometry(
const char*)
const;
112 int nrGeometries()
const;
140 void ensureSIPresent()
const;
144 bool hasDuplicateLineNames();
164 const char* linenm)
const;
167 bool fetchFrom2DGeom(
uiString& errmsg);
202 const
char* crfromstr=0)
const {
return true; }
211 #define mUdfGeomID Survey::GeometryManager::cUndefGeomID() 212 #define mIsUdfGeomID(geomid) (geomid == mUdfGeomID) GeometryManager & GMAdmin()
Definition: survgeom.h:174
virtual Geometry3D * as3D()
Definition: survgeom.h:82
#define mRefCountImpl(ClassName)
Macro to setup a class with destructor for reference counting.
Definition: refcount.h:163
#define mExpClass(module)
Definition: commondefs.h:160
Coord toCoord(const BinID &b) const
Definition: survgeom.h:58
const GeometryManager & GM()
Index_Type LineID
Definition: commontypes.h:50
virtual ~GeometryWriter()
Definition: survgeom.h:198
virtual Geometry2D * as2D()
Definition: survgeom.h:79
A lock of a type that (hopefully) suits your needs. To use it, you need the Locker class...
Definition: threadlock.h:53
static Geometry::ID cUndefGeomID()
Definition: survgeom.h:136
const TrcKeyZSampling & sampling() const
Definition: survgeom.h:72
ID id_
Definition: survgeom.h:92
#define mODTextTranslationClass(clss)
Definition: uistring.h:38
Index_Type TraceID
Definition: commontypes.h:51
#define mGlobal(module)
Definition: commondefs.h:163
static const TrcKey::SurvID surv2did_
Definition: survgeom.h:148
Geometry of a 2D Line.
Definition: survgeom2d.h:27
bool includes(const BinID &b) const
Definition: survgeom.h:63
Pos::SurvID SurvID
Definition: trckey.h:32
Definition: uistring.h:89
virtual Geometry::ID createNewGeomID(const char *) const
Definition: survgeom.h:204
A cartesian coordinate in 2D space.
Definition: coord.h:25
Set of BufferString objects.
Definition: bufstringset.h:28
ObjectSet< T >::size_type indexOf(const ObjectSet< T > &os, const S &val)
Locate object in set.
Definition: objectset.h:169
IdxType & trcNr()
Definition: posidxpair.h:49
virtual bool updateGeometries(ObjectSet< Geometry > &, TaskRunner *) const
Definition: survgeom.h:188
Set of pointers to objects.
Definition: commontypes.h:32
Threads::Lock lock_
Definition: survgeom.h:146
RelationType
Definition: survgeom.h:45
Set of (small) copyable elements.
Definition: commontypes.h:30
Index_Type SurvID
Definition: commontypes.h:49
Class that can execute a task.
Definition: task.h:169
Definition: survgeom.h:194
#define mUdf(type)
Use this macro to get the undefined for simple types.
Definition: undefval.h:272
Hor+Vert sampling in 3D surveys.
Definition: trckeyzsampling.h:35
bool hasduplnms_
Definition: survgeom.h:150
virtual bool removeEntry(const char *) const
Definition: survgeom.h:205
#define mDefineFactoryInClass(T, funcname)
Definition: factory.h:426
ObjectSet< Geometry > geometries_
Definition: survgeom.h:147
Index_Type GeomID
Definition: commontypes.h:52
bool getSurvID(const PicksType &picks)
Definition: pickset.h:148
virtual IOObj * createEntry(const char *) const
Definition: survgeom.h:203
virtual RelationType compare(const Geometry &, bool usezrg) const
Definition: survgeom.h:75
void setID(ID id)
Definition: survgeom.h:54
IdxType & lineNr()
Definition: posidxpair.h:44
Scaled down survey geometry for an inl/crl geometry.
Definition: survgeom3d.h:28
Positioning in a seismic survey: inline/crossline or lineNr/trcNr.
Definition: binid.h:30
ID getID() const
Definition: survgeom.h:53
bool is2D(const PicksType &picks)
Definition: pickset.h:142
Pos::GeomID ID
Definition: survgeom.h:44
virtual ~GeometryReader()
Definition: survgeom.h:183
Makes geometries accessible from a geometry ID, or a MultiID.
Definition: survgeom.h:99
static TrcKey::SurvID get2DSurvID()
Definition: survgeom.h:134
Definition: survgeom.h:25
Definition: survgeom.h:179
Represents a unique trace position in one of the surveys that OpendTect is managing.
Definition: trckey.h:28
TrcKeyZSampling sampling_
Definition: survgeom.h:89
bool exists(const char *)
Definition: arraytesselator.h:21
const SeisTrc * getTrace(EM::SubID) const
Compound key consisting of ints.
Definition: multiid.h:25
FixedString Geometry()
Definition: keystrs.h:69