13 #include "earthmodelmod.h" 25 namespace Geometry {
class ExplFaultStickSurface; }
26 namespace PosInfo {
class Line2DData; }
37 int nextID(
int)
const;
42 float getTrcNr(
int)
const;
43 void set(int,
const Coord3&);
44 void set(int,
const Coord3&,float);
48 bool isDefined(
int)
const;
49 int size()
const {
return coords_.size(); }
52 bool isInl()
const {
return isinl_; }
61 bool isCrossing(
const BinID&,
float,
const BinID&,
float)
const;
62 bool getIntersection(
const BinID&,
float,
const BinID&,
float,
65 bool snappositive=
true)
const;
71 bool getCoordsBetween(
int trc0,
float z0,
int trc1,
float z1,
74 bool getIntersectionTraces(
float zval,
76 bool getFaultTraceIntersection(
const FaultTrace&,
77 int& trace,
float& zval)
const;
79 bool getHorizonIntersectionInfo(
const EM::Horizon& hor,
84 bool findfirstonly=
true,
85 bool allowextention=
false)
const;
86 bool getImage(
const BinID& srcbid,
float srcz,
90 float& imgz,
bool forward)
const;
92 float getZValFor(
const BinID&)
const;
93 bool isOnPosSide(
const BinID&,
float)
const;
98 bool isOnFault(
const BinID&,
float z,
float threshold)
const;
112 void computeTraceSegments();
114 const BinID&,
float)
const;
142 const FaultTrace* getTrc(
int linenr,
bool isinl)
const;
143 int indexOf(
int linenr,
bool isinl)
const;
145 bool isEditedOnCrl()
const;
170 virtual bool extractFaultTrace(
int) = 0;
171 virtual od_int64 nrIterations()
const;
172 virtual bool doPrepare(
int);
191 bool extractFaultTrace(
int);
193 virtual bool doPrepare(
int);
209 bool extractFaultTrace(
int);
210 virtual bool doPrepare(
int);
211 virtual bool doFinish(
bool);
224 FaultTrcDataProvider();
226 ~FaultTrcDataProvider();
231 bool is2D()
const {
return is2d_; }
232 int nrFaults()
const;
234 int nrSticks(
int fltidx)
const;
235 bool isEditedOnCrl(
int fltidx)
const;
237 bool hasFaults(
const BinID&)
const;
238 const FaultTrace* getFaultTrace(
int fltidx,
int trcnr,
bool isinl)
const;
239 const FaultTrace* getFaultTrace2D(
int fltidx,
int stickidx)
const;
240 bool isCrossingFault(
const BinID& b1,
float z1,
241 const BinID& b2,
float z2)
const;
243 bool isOnFault(
const BinID&,
float z,
float threshold)
const;
#define mExpClass(module)
Definition: commondefs.h:157
bool isinl_
Definition: faulttrace.h:118
Interface for a list of Coord3 with automatically maintained IDs.
Definition: positionlist.h:70
A lock of a type that (hopefully) suits your needs. To use it, you need the Locker class...
Definition: threadlock.h:51
Fault Surface base class.
Definition: emfault.h:82
Threads::Lock lock_
Definition: faulttrace.h:128
TrcKeySampling hs_
Definition: faulttrace.h:152
#define mODTextTranslationClass(clss)
Definition: uistring.h:37
const Interval< int > & trcRange() const
Definition: faulttrace.h:55
bool is2d_
Definition: faulttrace.h:258
#define od_int64
Definition: plftypes.h:34
Definition: faulttrace.h:103
bool isEditedOnCrl() const
Definition: faulttrace.h:53
TypeSet< Line2 > tracesegs_
Definition: faulttrace.h:126
Interval< float > zrange_
Definition: faulttrace.h:125
bool includes(const IdxPair &ip) const
Definition: posidxpairvalset.h:99
void setEditedOnCrl(bool yn)
Definition: faulttrace.h:58
int nr_
Definition: faulttrace.h:120
int lineNr() const
Definition: faulttrace.h:54
uiString errmsg_
Definition: faulttrace.h:257
static const char * sKeyFaultAct()
Definition: faulttrace.h:106
Definition: uistring.h:88
Set of BufferString objects.
Definition: bufstringset.h:25
ObjectSet< T >::size_type indexOf(const ObjectSet< T > &os, const S &val)
Locate object in set.
Definition: objectset.h:173
Definition: faulttrace.h:104
FaultTrace holder.
Definition: faulttrace.h:136
Generalization of a task that can be run in parallel.
Definition: paralleltask.h:64
SPos add(const IdxPair &, const float *vs=0)
Either pass sufficient data or pass null.
Definition: faulttrace.h:102
TypeSet< Coord3 > coords_
Definition: faulttrace.h:121
void message(const char *)
default: to stderr
3D point or vector
Definition: commontypes.h:57
Definition: faulttrace.h:101
void addValue(int id, const Coord3 &)
Adds value to existing value at id.
Definition: faulttrace.h:94
Class that can execute a task.
Definition: task.h:193
const Interval< float > & zRange() const
Definition: faulttrace.h:56
Horizontal sampling (inline and crossline range and steps).
Definition: trckeysampling.h:25
bool isInl() const
Definition: faulttrace.h:52
ObjectSet< FaultTrace > traces_
Definition: faulttrace.h:147
FixedString Horizon()
Definition: keystrs.h:70
void setLineNr(int nr)
Definition: faulttrace.h:59
int size() const
Definition: faulttrace.h:49
void setIsInl(bool yn)
Definition: faulttrace.h:57
TypeSet< float > trcnrs_
Definition: faulttrace.h:123
Index_Type GeomID
Definition: commontypes.h:48
FixedString Fault()
Definition: keystrs.h:64
Position info, often segmented.
Definition: posinfo.h:38
bool isEmpty(const char *)
Interval< int > trcrange_
Definition: faulttrace.h:124
Positioning in a seismic survey: inline/crossline or lineNr/trcNr.
Definition: binid.h:28
Definition: explfaultsticksurface.h:35
FaultTrace data provider.
Definition: faulttrace.h:221
Earth Model objects like horizons, faults, fault-sticks and bodies.
Definition: embody.h:23
A Pos::IdxPairValueSet with BinIDs.
Definition: binidvalset.h:21
bool editedoncrl_
Definition: faulttrace.h:119
const char * errMsg() const
Definition: horizontracker.h:59
TypeSet< int > coordindices_
Definition: faulttrace.h:122
Act
Definition: faulttrace.h:101
2D point or vector class.
Definition: commontypes.h:58
~FaultTrace()
Definition: faulttrace.h:110
ObjectSet< FaultTrcHolder > holders_
Definition: faulttrace.h:254
Definition: arraytesselator.h:19
bool is2D() const
Definition: faulttrace.h:231
Horizon Surface.
Definition: emhorizon.h:46
Subclass of Coord3List that represents a fault trace.
Definition: faulttrace.h:33
Pos::GeomID geomid_
Definition: faulttrace.h:256