1 #ifndef trckeysampling_h 2 #define trckeysampling_h 32 TrcKeySampling(
const TrcKeySampling&);
43 TrcKeySampling getLineChunk(
int totalchunks,
int chunknr)
const;
48 float lineDistance()
const;
51 float trcDistance()
const;
57 bool includes(
const TrcKeySampling&,
58 bool ignoresteps=
false)
const;
59 bool includes(
const TrcKey&)
const;
60 bool includes(
const TrcKey&,
bool ignoresteps)
const;
67 void include(
const TrcKey&);
70 void include(
const TrcKeySampling&,
bool ignoresteps=
false );
71 bool isDefined()
const;
72 void limitTo(
const TrcKeySampling&,
bool ignoresteps=
false);
73 void limitToWithUdf(
const TrcKeySampling&);
76 void expand(
int nrlines,
int nrtrcs);
85 BinID atIndex(
int i0,
int i1)
const;
87 TrcKey trcKeyAt(
int i0,
int i1)
const;
89 TrcKey toTrcKey(
const Coord&,
float* distance=0)
const;
99 void init(
bool settoSI=
true);
109 bool getInterSection(
const TrcKeySampling&,
110 TrcKeySampling&)
const;
123 TrcKeySampling& operator=(
const TrcKeySampling&);
127 static void removeInfo(
IOPar&);
136 TrcKeySampling(
bool settoSI);
142 int nrInl()
const {
return nrLines(); }
143 int nrCrl()
const {
return nrTrcs(); }
148 { includeLine(bid.
inl()); includeTrc(bid.
crl()); }
152 {
return lineOK(bid.
inl()) && trcOK(bid.
crl()); }
153 inline bool inlOK(
int inl )
const {
return lineOK(inl); }
154 inline bool crlOK(
int crl )
const {
return trcOK(crl); }
157 {
return lineOK(bid.
inl(), ignoresteps ) &&
158 trcOK(bid.
crl(), ignoresteps ); }
164 void shrinkTo(
const TrcKeySampling& innertks);
165 void growTo(
const TrcKeySampling& outertks);
168 const bool ignoresteps,
169 const bool nostephandling);
194 { setSampling( hs ); }
201 bool next(
BinID&)
const;
#define mExpClass(module)
Definition: commondefs.h:160
Index_Type LineID
Definition: commontypes.h:50
int64_t totalnr_
Definition: trckeysampling.h:209
bool operator==(const ArrayNDInfo &a1, const ArrayNDInfo &a2)
Definition: arrayndinfo.h:53
TrcKeySampling HorSampling
Definition: trckeysampling.h:216
bool includes(const BinID &bid) const
Definition: trckeysampling.h:151
void setCrlRange(const Interval< int > &rg)
Definition: trckeysampling.h:140
Pos::LineID lineID(int) const
Definition: trckeysampling.h:236
Index_Type TraceID
Definition: commontypes.h:51
int inlIdx(Pos::LineID lid) const
Definition: trckeysampling.h:145
void setNextPos(const TrcKey &trk)
Definition: trckeysampling.h:199
bool crlOK(int crl) const
Definition: trckeysampling.h:154
void usePar(const IOPar &iop, ODPolygon< T > &poly, const char *inpkey)
Definition: polygon.h:188
#define od_int64
Definition: plftypes.h:36
TrcKeySamplingIterator HorSamplingIterator
Definition: trckeysampling.h:217
Pos::SurvID survid_
Definition: trckeysampling.h:130
IdxType & inl()
Definition: posidxpair.h:43
bool inlOK(int inl) const
Definition: trckeysampling.h:153
int64_t curIdx() const
Definition: trckeysampling.h:203
int nrInl() const
Definition: trckeysampling.h:142
TypeSet< TrcKey > TrcKeyPath
Definition: trckeysampling.h:21
Finds next BinID in TrcKeySampling; initializes to first position.
Definition: trckeysampling.h:189
BinID & step
Definition: trckeysampling.h:162
Pos::TraceID traceID(int) const
Definition: trckeysampling.h:242
A cartesian coordinate in 2D space.
Definition: coord.h:25
IdxType & trcNr()
Definition: posidxpair.h:49
void includeCrl(int crl)
Definition: trckeysampling.h:150
int lineIdx(Pos::LineID) const
Definition: trckeysampling.h:220
BinID step_
Definition: trckeysampling.h:133
Threads::Atomic< int64_t > curpos_
Definition: trckeysampling.h:210
BinID & stop
Definition: trckeysampling.h:161
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:47
Index_Type SurvID
Definition: commontypes.h:49
Horizontal sampling (inline and crossline range and steps).
Definition: trckeysampling.h:27
int trcIdx(Pos::TraceID) const
Definition: trckeysampling.h:228
int crlIdx(Pos::TraceID tid) const
Definition: trckeysampling.h:146
bool operator!=(const ArrayNDInfo &a1, const ArrayNDInfo &a2)
Definition: arrayndinfo.h:62
void fillPar(IOPar &iop, const ODPolygon< T > &poly, const char *inpkey)
Definition: polygon.h:175
void include(const BinID &bid)
Definition: trckeysampling.h:147
StepInterval< int > crlRange() const
Definition: trckeysampling.h:138
Index_Type GeomID
Definition: commontypes.h:52
IdxType & crl()
Definition: posidxpair.h:48
BinID & start
Definition: trckeysampling.h:160
#define mDeprecated
Definition: plfdefs.h:233
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size...
Definition: bufstring.h:40
IdxType & lineNr()
Definition: posidxpair.h:44
BinID stop_
Definition: trckeysampling.h:132
Positioning in a seismic survey: inline/crossline or lineNr/trcNr.
Definition: binid.h:30
bool includes(const BinID &bid, bool ignoresteps) const
Definition: trckeysampling.h:156
TrcKeySamplingIterator()
Definition: trckeysampling.h:192
TrcKeySamplingIterator(const TrcKeySampling &hs)
Definition: trckeysampling.h:193
bool is2D() const
Definition: trckey.h:44
Represents a unique trace position in one of the surveys that OpendTect is managing.
Definition: trckey.h:28
bool is2D() const
Definition: trckeysampling.h:35
int nrCrl() const
Definition: trckeysampling.h:143
void includeInl(int inl)
Definition: trckeysampling.h:149
bool isEmpty(const NLAModel *mdl)
TrcKeySampling tks_
Definition: trckeysampling.h:208
StepInterval< int > inlRange() const
Definition: trckeysampling.h:137
TrcKey curTrcKey() const
Definition: trckeysampling.h:204
Export_Basic const char * toString(ViewStyle)
Definition: trckeysampling.h:173
void setInlRange(const Interval< int > &rg)
Definition: trckeysampling.h:139
BinID start_
Definition: trckeysampling.h:131