Fesapi 2.10.1.0
This project provides C++ classes which allow an easy access in import and export to the Energistics standards.
Loading...
Searching...
No Matches
eml2::AbstractLocal3dCrs Class Referenceabstract

Proxy class for an abstract local 3D coordinate reference system (CRS). More...

#include <AbstractLocal3dCrs.h>

Inheritance diagram for eml2::AbstractLocal3dCrs:
common::AbstractObject eml2_3::LocalEngineeringCompoundCrs resqml2_0_1::LocalDepth3dCrs resqml2_0_1::LocalTime3dCrs

Public Member Functions

virtual ~AbstractLocal3dCrs ()=default
 
double getOriginOrdinal1 () const
 
double getOriginOrdinal2 () const
 
double getOriginDepthOrElevation () const
 
double getArealRotation () const
 
bool isDepthOriented () const
 
bool isProjectedCrsDefinedWithEpsg () const
 
virtual bool isProjectedCrsUnknown () const
 
std::string getProjectedCrsUnknownReason () const
 
uint64_t getProjectedCrsEpsgCode () const
 
bool isVerticalCrsDefinedWithEpsg () const
 
bool isVerticalCrsUnknown () const
 
std::string getVerticalCrsUnknownReason () const
 
uint64_t getVerticalCrsEpsgCode () const
 
gsoap_resqml2_0_1::eml20__PlaneAngleUom getArealRotationUom () const
 
gsoap_resqml2_0_1::eml20__LengthUom getProjectedCrsUnit () const
 
std::string getProjectedCrsUnitAsString () const
 
gsoap_resqml2_0_1::eml20__LengthUom getVerticalCrsUnit () const
 
std::string getVerticalCrsUnitAsString () const
 
virtual bool isATimeCrs () const =0
 
virtual gsoap_resqml2_0_1::eml20__TimeUom getTimeUom () const =0
 
std::string getTimeUomAsString () const
 
gsoap_eml2_3::eml23__AxisOrder2d getAxisOrder () const
 
void setAxisOrder (gsoap_eml2_3::eml23__AxisOrder2d axisOrder) const
 
void convertXyzPointsToGlobalCrs (double *xyzPoints, uint64_t xyzPointCount, bool withoutTranslation=false) const
 
- Public Member Functions inherited from common::AbstractObject
bool isPartial () const
 
virtual bool isTopLevelElement () const
 
std::string getUuid () const
 
std::string getTitle () const
 
std::string getEditor () const
 
time_t getCreation () const
 
tm getCreationAsTimeStructure () const
 
std::string getOriginator () const
 
std::string getDescription () const
 
time_t getLastUpdate () const
 
tm getLastUpdateAsTimeStructure () const
 
std::string getFormat () const
 
std::string getDescriptiveKeywords () const
 
std::string getVersion () const
 
void setTitle (const std::string &title)
 
void setEditor (const std::string &editor)
 
void setCreation (time_t creation)
 
void setCreation (const tm &creation)
 
void setOriginator (const std::string &originator)
 
void setDescription (const std::string &description)
 
void setLastUpdate (time_t lastUpdate)
 
void setLastUpdate (const tm &lastUpdate)
 
void setDescriptiveKeywords (const std::string &descriptiveKeywords)
 
void setVersion (const std::string &version)
 
void setMetadata (const std::string &title, const std::string &editor, time_t creation, const std::string &originator, const std::string &description, time_t lastUpdate, const std::string &descriptiveKeywords)
 
void serializeIntoStream (std::ostream *stream)
 
gsoap_resqml2_0_1::eml20__AbstractCitedDataObject * getEml20GsoapProxy () const
 
void setGsoapProxy (gsoap_resqml2_0_1::eml20__AbstractCitedDataObject *gsoapProxy)
 
gsoap_eml2_3::eml23__AbstractObject * getEml23GsoapProxy () const
 
void setGsoapProxy (gsoap_eml2_3::eml23__AbstractObject *gsoapProxy)
 
soap * getGsoapContext () const
 
int getGsoapType () const
 
gsoap_resqml2_0_1::eml20__DataObjectReference * newResqmlReference () const
 
gsoap_eml2_3::eml23__DataObjectReference * newEml23Reference () const
 
gsoap_resqml2_0_1::resqml20__ContactElementReference * newContactElementReference2_0_1 () const
 
gsoap_eml2_3::resqml22__ContactElement * newContactElementReference2_2 () const
 
common::DataObjectRepositorygetRepository () const
 
virtual std::string getXmlNamespace () const =0
 
virtual std::string getXmlTag () const =0
 
virtual std::string getXmlNamespaceVersion () const
 
virtual std::string getContentType () const
 
virtual std::string getQualifiedType () const
 
virtual std::string getPartNameInEpcDocument () const
 
std::string serializeIntoString ()
 
void addAlias (const std::string &authority, const std::string &title)
 
uint64_t getAliasCount () const
 
std::string getAliasAuthorityAtIndex (uint64_t index) const
 
std::string getAliasTitleAtIndex (uint64_t index) const
 
std::vector< eml2::Activity * > getActivitySet () const
 
uint64_t getActivityCount () const
 
eml2::ActivitygetActivity (uint64_t index) const
 
void pushBackExtraMetadata (const std::string &key, const std::string &value)
 
std::unordered_map< std::string, std::string > getExtraMetadataSet () const
 
std::vector< std::string > getExtraMetadata (const std::string &key) const
 
unsigned int getExtraMetadataCount () const
 
std::string getExtraMetadataKeyAtIndex (unsigned int index) const
 
std::string getExtraMetadataStringValueAtIndex (unsigned int index) const
 
std::string buildEtp12Uri () const
 
void setUriSource (const std::string &uriSource)
 
const std::string & getUriSource () const
 
std::string getEpcSourceFolder () const
 
void changeToPartialObject ()
 
virtual void loadTargetRelationships ()=0
 

Additional Inherited Members

- Public Types inherited from common::AbstractObject
enum class  numericalDatatypeEnum {
  UNKNOWN = 0 , DOUBLE = 1 , FLOAT = 2 , INT64 = 3 ,
  UINT64 = 4 , INT32 = 5 , UINT32 = 6 , INT16 = 7 ,
  UINT16 = 8 , INT8 = 9 , UINT8 = 10
}
 
- Static Public Member Functions inherited from common::AbstractObject
static void setFormat (const std::string &vendor, const std::string &applicationName, const std::string &applicationVersionNumber)
 

Detailed Description

Proxy class for an abstract local 3D coordinate reference system (CRS).

Constructor & Destructor Documentation

◆ ~AbstractLocal3dCrs()

virtual eml2::AbstractLocal3dCrs::~AbstractLocal3dCrs ( )
virtualdefault

Destructor does nothing since the memory is manged by the gsoap context.

Member Function Documentation

◆ convertXyzPointsToGlobalCrs()

void eml2::AbstractLocal3dCrs::convertXyzPointsToGlobalCrs ( double * xyzPoints,
uint64_t xyzPointCount,
bool withoutTranslation = false ) const

Convert some xyz points from local to global CRS.

Parameters
[in,out]xyzPointsAn array of xyz points. The i-th point is defined by (x, y, z) = (xyzPoints[i], xyzPoints[i+1], xyzPoints[i+2]).
xyzPointCountThe number of xyz points. Must be equal to the size of xyzPoints divided by 3.
withoutTranslation(Optional) True to only compute the rotation (no translation is computed). Default value if false.

◆ getArealRotation()

double eml2::AbstractLocal3dCrs::getArealRotation ( ) const

Get the rotation in radians of the local Y axis relative to the global projected Y axis which is 90 degrees counter-clockwise from the other global axis. A positive value indicates a clockwise rotation from the global axis. A negative value indicates a counterclockwise rotation form the global axis.

Returns
The areal rotation.

◆ getArealRotationUom()

gsoap_resqml2_0_1::eml20__PlaneAngleUom eml2::AbstractLocal3dCrs::getArealRotationUom ( ) const

Gets the areal rotation unit of measure.

Returns
The areal rotation unit of measure.

◆ getAxisOrder()

gsoap_eml2_3::eml23__AxisOrder2d eml2::AbstractLocal3dCrs::getAxisOrder ( ) const

Gets the axis order of the projected CRS.

Returns
The axis order of the projected CRS.

◆ getOriginDepthOrElevation()

double eml2::AbstractLocal3dCrs::getOriginDepthOrElevation ( ) const

Get the depth or elevation origin of this local CRS. This is Z offset of the origin of the local vertical axis relative to the vertical CRS origin. According to CRS type (depth or time) it corresponds to the depth or time datum. If this local CRS is a time CRS, this value defines the seismic reference datum. The unit of measure is defined by the unit of measure for the vertical CRS

Returns
The origin depth or elevation.

◆ getOriginOrdinal1()

double eml2::AbstractLocal3dCrs::getOriginOrdinal1 ( ) const

Gets the first origin ordinal of this local CRS. This is the X location of the origin of the local areal axes relative to the projected CRS origin. The unit of measure is defined by the unit of measure for the projected 2d CRS.

Returns
The first origin ordinal of this local CRS.

◆ getOriginOrdinal2()

double eml2::AbstractLocal3dCrs::getOriginOrdinal2 ( ) const

Gets the second origin ordinal of this local CRS. This is the Y location of the origin of the local areal axes relative to the projected CRS origin. The unit of measure is defined by the unit of measure for the projected 2d CRS.

Returns
The second origin ordinal of this local CRS.

◆ getProjectedCrsEpsgCode()

uint64_t eml2::AbstractLocal3dCrs::getProjectedCrsEpsgCode ( ) const

Gets the EPSG code of the projected CRS

Exceptions
std::invalid_argumentIf the associated projected CRS is not an EPSG one.
Returns
The projected CRS EPSG code.

◆ getProjectedCrsUnit()

gsoap_resqml2_0_1::eml20__LengthUom eml2::AbstractLocal3dCrs::getProjectedCrsUnit ( ) const

Gets the projected CRS unit of measure.

Returns
The projected CRS unit unit of measure.

◆ getProjectedCrsUnitAsString()

std::string eml2::AbstractLocal3dCrs::getProjectedCrsUnitAsString ( ) const

Gets the projected CRS unit of measure as a string

Returns
The projected CRS unit of measure as string.

◆ getProjectedCrsUnknownReason()

std::string eml2::AbstractLocal3dCrs::getProjectedCrsUnknownReason ( ) const

Gets the reason why the projected CRS is unknown.

Exceptions
std::invalid_argumentIf the associated projected CRS is not unknown.
Returns
The projected CRS unknown reason.

◆ getTimeUom()

virtual gsoap_resqml2_0_1::eml20__TimeUom eml2::AbstractLocal3dCrs::getTimeUom ( ) const
pure virtual

Gets the unit of measure of the third axis of this local CRS if it is a time CRS. Otherwise throw an exception (if isATimeCrs() returns false)

Returns
The time unit of measure of the third axis.

Implemented in eml2_3::LocalEngineeringCompoundCrs, resqml2_0_1::LocalDepth3dCrs, and resqml2_0_1::LocalTime3dCrs.

◆ getTimeUomAsString()

std::string eml2::AbstractLocal3dCrs::getTimeUomAsString ( ) const

Gets the unit of measure as a sting of the third axis of this local CRS if it is a time CRS. Otherwise throw an exception (if isATimeCrs() returns false)

Returns
The time unit of measure of the third axis.

◆ getVerticalCrsEpsgCode()

uint64_t eml2::AbstractLocal3dCrs::getVerticalCrsEpsgCode ( ) const

Gets the EPSG code of the vertical CRS

Exceptions
std::invalid_argumentIf the associated projected CRS is not an EPSG one.
Returns
The vertical CRS EPSG code.

◆ getVerticalCrsUnit()

gsoap_resqml2_0_1::eml20__LengthUom eml2::AbstractLocal3dCrs::getVerticalCrsUnit ( ) const

Gets the vertical CRS unit of measure.

Returns
The vertical CRS unit of measure.

◆ getVerticalCrsUnitAsString()

std::string eml2::AbstractLocal3dCrs::getVerticalCrsUnitAsString ( ) const

Gets the vertical CRS unit of measure as a string

Returns
The vertical CRS unit of measure as string.

◆ getVerticalCrsUnknownReason()

std::string eml2::AbstractLocal3dCrs::getVerticalCrsUnknownReason ( ) const

Gets the reason why the vertical CRS is unknown.

Exceptions
std::invalid_argumentIf the associated vertical CRS is not unknown.
Returns
The vertical CRS unknown reason.

◆ isATimeCrs()

virtual bool eml2::AbstractLocal3dCrs::isATimeCrs ( ) const
pure virtual

Check if the third axis of this local 3d CRS is in timeor not.

Returns
True if this local 3d CRS is a time one. False if it is a depth/elevation one.

Implemented in eml2_3::LocalEngineeringCompoundCrs, resqml2_0_1::LocalDepth3dCrs, and resqml2_0_1::LocalTime3dCrs.

◆ isDepthOriented()

bool eml2::AbstractLocal3dCrs::isDepthOriented ( ) const

Indicates that Z values correspond to depth values and are increasing downward, as opposite to elevation values increasing upward. When the vertical CRS is known, it must correspond to the axis orientation of the vertical CRS.

Returns
True if Z values are depth oriented, false if not.

◆ isProjectedCrsDefinedWithEpsg()

bool eml2::AbstractLocal3dCrs::isProjectedCrsDefinedWithEpsg ( ) const

Indicates either the associated projected CRS is identified by means of an EPSG code or not.

Returns
True if the projected CRS is defined with an EPSG code, false if not.

◆ isProjectedCrsUnknown()

virtual bool eml2::AbstractLocal3dCrs::isProjectedCrsUnknown ( ) const
virtual

Indicates either the associated projected CRS is unknown or not.

Returns
True if projected CRS is unknown, false if not.

◆ isVerticalCrsDefinedWithEpsg()

bool eml2::AbstractLocal3dCrs::isVerticalCrsDefinedWithEpsg ( ) const

Indicates either the associated vertical CRS is identified by means of EPSG or not.

Returns
True if the vertical CRS is defined with an EPSG code, false if not.

◆ isVerticalCrsUnknown()

bool eml2::AbstractLocal3dCrs::isVerticalCrsUnknown ( ) const

Indicates either the associated vertical CRS is unknown or not.

Returns
True if vertical CRS is unknown, false if not.

◆ setAxisOrder()

void eml2::AbstractLocal3dCrs::setAxisOrder ( gsoap_eml2_3::eml23__AxisOrder2d axisOrder) const

Sets the axis order of the projected CRS. It defines the coordinate system axis order of the global projected CRS when the projected CRS is an unknown CRS, else it must correspond to the axis order of the projected CRS.

Parameters
axisOrderThe axis order to set.

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