OpenZGY/C++ API and Internals (ALPHA)
Access seismic data stored in ZGY format.
Public Member Functions | List of all members
OpenZGY::Impl::ZgyMetaAndTools Class Reference

Add coordinate conversion to the concrete ZgyMeta class. More...

Inheritance diagram for OpenZGY::Impl::ZgyMetaAndTools:
OpenZGY::Impl::ZgyMeta OpenZGY::IZgyTools OpenZGY::IZgyMeta OpenZGY::IZgyMeta OpenZGY::Impl::ZgyReader OpenZGY::Impl::ZgyWriter

Public Member Functions

virtual void transform (const corners_t &A, const corners_t &B, std::vector< std::array< float64_t, 2 >> &data) const override
 General coordinate conversion of an array of points. (NOT IMPLEMENTED YET) More...
 
virtual std::array< float64_t, 2 > transform1 (const corners_t &A, const corners_t &B, const std::array< float64_t, 2 > &point) const override
 General coordinate conversion of a single coordinate pair. More...
 
virtual std::array< float64_t, 2 > annotToIndex (const std::array< float64_t, 2 > &point) const override
 Convert a single coordinate pair.
 
virtual std::array< float64_t, 2 > annotToWorld (const std::array< float64_t, 2 > &point) const override
 Convert a single coordinate pair.
 
virtual std::array< float64_t, 2 > indexToAnnot (const std::array< float64_t, 2 > &point) const override
 Convert a single coordinate pair.
 
virtual std::array< float64_t, 2 > indexToWorld (const std::array< float64_t, 2 > &point) const override
 Convert a single coordinate pair.
 
virtual std::array< float64_t, 2 > worldToAnnot (const std::array< float64_t, 2 > &point) const override
 Convert a single coordinate pair.
 
virtual std::array< float64_t, 2 > worldToIndex (const std::array< float64_t, 2 > &point) const override
 Convert a single coordinate pair.
 
- Public Member Functions inherited from OpenZGY::Impl::ZgyMeta
virtual std::array< int64_t, 3 > size () const override
 Size in inline, crossline, vertical directions.
 
virtual SampleDataType datatype () const override
 Type of samples in each brick.
 
virtual std::array< float32_t, 2 > datarange () const override
 Used for float to int scaling.
 
virtual UnitDimension zunitdim () const override
 Vertical dimension.
 
virtual UnitDimension hunitdim () const override
 Horizontal dimension.
 
virtual std::string zunitname () const override
 For annotation only. Use hunitfactor, not the name, to convert to or from SI.
 
virtual std::string hunitname () const override
 For annotation only. Use hunitfactor, not the name, to convert to or from SI.
 
virtual float64_t zunitfactor () const override
 Multiply by this factor to convert from storage units to SI units.
 
virtual float64_t hunitfactor () const override
 Multiply by this factor to convert from storage units to SI units.
 
virtual float32_t zstart () const override
 First time/depth.
 
virtual float32_t zinc () const override
 Increment in vertical direction.
 
virtual std::array< float32_t, 2 > annotstart () const override
 First inline, crossline.
 
virtual std::array< float32_t, 2 > annotinc () const override
 Increment in inline, crossline directions.
 
virtual const corners_t & corners () const
 Survey corner points in world coordinates.
 
virtual const corners_t & indexcorners () const
 Survey corner points in ordinal (i,j) coordinates.
 
virtual const corners_t & annotcorners () const
 Survey corner points in inline, crossline coordinates.
 
virtual std::array< int64_t, 3 > bricksize () const override
 Size of one brick. Almost always (64,64,64), change at your own peril.
 
virtual std::vector< std::array< int64_t, 3 > > brickcount () const override
 Number of bricks at each resolution (LOD) level.
 
virtual int32_t nlods () const override
 Number of resolution (LOD) levels.
 
virtual void meta () const override
 Dictionary of meta data. NOT IMPLEMENTED.
 
virtual int32_t numthreads () const override
 Number of threads to use. NOT IMPLEMENTED.
 
virtual void set_numthreads (int32_t) override
 Number of threads to use. NOT IMPLEMENTED.
 
virtual void dump (std::ostream &os) const override
 Output in human readable form for debugging.
 
virtual SampleStatistics statistics () const override
 Statistics of all sample values on the file.
 
virtual SampleHistogram histogram () const override
 Histogram of all sample values on the file.
 

Additional Inherited Members

- Public Types inherited from OpenZGY::IZgyMeta
typedef std::int8_t int8_t
 
typedef std::int16_t int16_t
 
typedef std::int32_t int32_t
 
typedef std::int64_t int64_t
 
typedef float float32_t
 
typedef double float64_t
 
typedef std::array< int64_t, 3 > size3i_t
 
typedef std::array< std::array< float64_t, 2 >, 4 > corners_t
 
typedef std::pair< std::shared_ptr< const void >, std::int64_t > rawdata_t
 
typedef std::function< rawdata_t(const rawdata_t &, const std::array< int64_t, 3 > &)> compressor_t
 
- Protected Attributes inherited from OpenZGY::Impl::ZgyMeta
std::shared_ptr< InternalZGY::ZgyInternalMeta_meta
 Handle to the internal metadata layer which this class wraps.
 

Detailed Description

Add coordinate conversion to the concrete ZgyMeta class.

Member Function Documentation

◆ transform()

virtual void OpenZGY::Impl::ZgyMetaAndTools::transform ( const corners_t &  from,
const corners_t &  to,
std::vector< std::array< float64_t, 2 >> &   
) const
overridevirtual

General coordinate conversion of an array of points. (NOT IMPLEMENTED YET)

Parameters
fromcontrol points in the current coordinate system.
tocontrol points in the desired coordinate system.

Convert coordinates in place, with the conversion defined by giving the values of 3 arbitrary control points in both the "from" and "to" coordinate system. A common choice of arbitrary points is to use three of the lattice corners. As a convenience the "from" and "to" parameters are declared as corners_t so the caller can pass corners(), annotcorners(), or indexcorners() directly.

Implements OpenZGY::IZgyTools.

◆ transform1()

virtual std::array<float64_t,2> OpenZGY::Impl::ZgyMetaAndTools::transform1 ( const corners_t &  from,
const corners_t &  to,
const std::array< float64_t, 2 > &   
) const
overridevirtual

General coordinate conversion of a single coordinate pair.

Parameters
fromcontrol points in the current coordinate system.
tocontrol points in the desired coordinate system.

Convert coordinates in place, with the conversion defined by giving the values of 3 arbitrary control points in both the "from" and "to" coordinate system. A common choice of arbitrary points is to use three of the lattice corners. As a convenience the "from" and "to" parameters are declared as corners_t so the caller can pass corners(), annotcorners(), or indexcorners() directly.

Implements OpenZGY::IZgyTools.


The documentation for this class was generated from the following file: