Fesapi 2.13.0.0
This project provides C++ classes which allow an easy access in import and export to the Energistics standards.
Loading...
Searching...
No Matches
AbstractLocal3dCrs.h
1/*-----------------------------------------------------------------------
2Licensed to the Apache Software Foundation (ASF) under one
3or more contributor license agreements. See the NOTICE file
4distributed with this work for additional information
5regarding copyright ownership. The ASF licenses this file
6to you under the Apache License, Version 2.0 (the
7"License"; you may not use this file except in compliance
8with the License. You may obtain a copy of the License at
9
10 http://www.apache.org/licenses/LICENSE-2.0
11
12Unless required by applicable law or agreed to in writing,
13software distributed under the License is distributed on an
14"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15KIND, either express or implied. See the License for the
16specific language governing permissions and limitations
17under the License.
18-----------------------------------------------------------------------*/
19#pragma once
20
21#include "../common/AbstractObject.h"
22
23namespace EML2_NS
24{
26 class AbstractLocal3dCrs : public COMMON_NS::AbstractObject
27 {
28 public:
29
31 virtual ~AbstractLocal3dCrs() = default;
32
40 DLL_IMPORT_OR_EXPORT double getOriginOrdinal1() const;
41
49 DLL_IMPORT_OR_EXPORT double getOriginOrdinal2() const;
50
60 DLL_IMPORT_OR_EXPORT double getOriginDepthOrElevation() const;
61
70 DLL_IMPORT_OR_EXPORT double getArealRotation() const;
71
79 DLL_IMPORT_OR_EXPORT bool isDepthOriented() const;
80
86 DLL_IMPORT_OR_EXPORT bool isProjectedCrsDefinedWithEpsg() const;
87
93 DLL_IMPORT_OR_EXPORT bool isProjectedCrsDefinedWithWkt() const;
94
100 DLL_IMPORT_OR_EXPORT virtual bool isProjectedCrsUnknown() const;
101
109 DLL_IMPORT_OR_EXPORT std::string getProjectedCrsUnknownReason() const;
110
118 DLL_IMPORT_OR_EXPORT std::string getProjectedCrsWkt() const;
119
127 DLL_IMPORT_OR_EXPORT uint64_t getProjectedCrsEpsgCode() const;
128
134 DLL_IMPORT_OR_EXPORT bool isVerticalCrsDefinedWithEpsg() const;
135
141 DLL_IMPORT_OR_EXPORT bool isVerticalCrsDefinedWithWkt() const;
142
148 DLL_IMPORT_OR_EXPORT bool isVerticalCrsUnknown() const;
149
157 DLL_IMPORT_OR_EXPORT std::string getVerticalCrsUnknownReason() const;
158
166 DLL_IMPORT_OR_EXPORT std::string getVerticalCrsWkt() const;
167
175 DLL_IMPORT_OR_EXPORT uint64_t getVerticalCrsEpsgCode() const;
176
182 DLL_IMPORT_OR_EXPORT gsoap_resqml2_0_1::eml20__PlaneAngleUom getArealRotationUom() const;
183
189 DLL_IMPORT_OR_EXPORT gsoap_resqml2_0_1::eml20__LengthUom getProjectedCrsUnit() const;
190
196 DLL_IMPORT_OR_EXPORT std::string getProjectedCrsUnitAsString() const;
197
203 DLL_IMPORT_OR_EXPORT gsoap_resqml2_0_1::eml20__LengthUom getVerticalCrsUnit() const;
204
210 DLL_IMPORT_OR_EXPORT std::string getVerticalCrsUnitAsString() const;
211
217 DLL_IMPORT_OR_EXPORT virtual bool isATimeCrs() const = 0;
218
225 DLL_IMPORT_OR_EXPORT virtual gsoap_resqml2_0_1::eml20__TimeUom getTimeUom() const = 0;
226
233 DLL_IMPORT_OR_EXPORT std::string getTimeUomAsString() const;
234
240 DLL_IMPORT_OR_EXPORT gsoap_eml2_3::eml23__AxisOrder2d getAxisOrder() const;
241
249 DLL_IMPORT_OR_EXPORT void setAxisOrder(gsoap_eml2_3::eml23__AxisOrder2d axisOrder) const;
250
262 DLL_IMPORT_OR_EXPORT void convertXyzPointsToGlobalCrs(double * xyzPoints, uint64_t xyzPointCount, bool withoutTranslation = false) const;
263
264 protected:
265
273 AbstractLocal3dCrs(gsoap_resqml2_0_1::eml20__DataObjectReference* partialObject) : COMMON_NS::AbstractObject(partialObject) {}
274
277
283 AbstractLocal3dCrs(gsoap_resqml2_0_1::resqml20__AbstractLocal3dCrs* fromGsoap) :
284 COMMON_NS::AbstractObject(fromGsoap) {}
285
291 AbstractLocal3dCrs(gsoap_eml2_3::eml23__LocalEngineeringCompoundCrs* fromGsoap) :
292 COMMON_NS::AbstractObject(fromGsoap) {}
293
300 virtual double getZOffset() const = 0;
301 };
302}
Proxy class for an abstract local 3D coordinate reference system (CRS).
Definition AbstractLocal3dCrs.h:27
std::string getVerticalCrsUnitAsString() const
virtual bool isProjectedCrsUnknown() const
std::string getProjectedCrsUnknownReason() const
gsoap_eml2_3::eml23__AxisOrder2d getAxisOrder() const
double getOriginDepthOrElevation() const
double getOriginOrdinal1() const
uint64_t getProjectedCrsEpsgCode() const
bool isVerticalCrsDefinedWithEpsg() const
virtual ~AbstractLocal3dCrs()=default
double getArealRotation() const
virtual bool isATimeCrs() const =0
std::string getVerticalCrsWkt() const
gsoap_resqml2_0_1::eml20__LengthUom getProjectedCrsUnit() const
uint64_t getVerticalCrsEpsgCode() const
bool isProjectedCrsDefinedWithWkt() const
gsoap_resqml2_0_1::eml20__LengthUom getVerticalCrsUnit() const
double getOriginOrdinal2() const
bool isProjectedCrsDefinedWithEpsg() const
std::string getProjectedCrsUnitAsString() const
std::string getVerticalCrsUnknownReason() const
bool isDepthOriented() const
std::string getProjectedCrsWkt() const
bool isVerticalCrsDefinedWithWkt() const
virtual gsoap_resqml2_0_1::eml20__TimeUom getTimeUom() const =0
std::string getTimeUomAsString() const
bool isVerticalCrsUnknown() const
gsoap_resqml2_0_1::eml20__PlaneAngleUom getArealRotationUom() const
void convertXyzPointsToGlobalCrs(double *xyzPoints, uint64_t xyzPointCount, bool withoutTranslation=false) const
void setAxisOrder(gsoap_eml2_3::eml23__AxisOrder2d axisOrder) const