13 class OGRGeometryCollection;
15 namespace MAKVRinTerra
23 typedef std::shared_ptr<DtOgrGeometry>
Ptr;
24 typedef std::shared_ptr<const DtOgrGeometry>
CPtr;
51 const std::shared_ptr<const DtOgrGeometry>& owner,
52 const OGRGeometry& geometry);
54 Ptr shared_from_this();
55 CPtr shared_from_this()
const;
57 virtual const OGRGeometry& ogrGeometry()
const = 0;
77 virtual double length()
const override;
79 virtual double area()
const override;
91 virtual DtFeatureGeometry bufferWithFlatCap(
double width,
unsigned segments)
const override;
104 typedef OGRGeometryCollection
type;
125 template <DtFeatureGeometry::Type T>
129 typedef std::shared_ptr<DtOgrGeometryImpl>
Ptr;
133 virtual Type type()
const override;
137 virtual unsigned numberOfPoints()
const override;
138 virtual std::unique_ptr<PointVector> points()
const override;
139 virtual unsigned numberOfSubGeometries()
const override;
140 virtual std::unique_ptr<GeometryVector> subGeometries()
const override;
#define DT_DLL_features
stop complaining about multiple independent base classes for boost::noncopyable this should probably ...
Definition: featuresDefines.h:41
Definition: ogrGeometry.h:30
Definition: featureGeometry.h:61
OGRGeometryCollection type
Definition: ogrGeometry.h:104
OGRGeometry type
Definition: ogrGeometry.h:32
DtFeatureGeometry::Implementation Implementation
Definition: ogrGeometry.h:26
Definition: ogrGeometry.h:20
std::shared_ptr< const DtOgrGeometry > CPtr
Definition: ogrGeometry.h:24
Handle< PointType > Point
Definition: featureGeometry.h:70
Represents some coordinate system. The terms "coordinate system", "projection", "spatial reference"...
Definition: proj.h:52
DtOgrGeometryImpl< DtFeatureGeometry::PointType > DtOgrPoint
Definition: ogrGeometry.h:144
DtOgrGeometryImpl< DtFeatureGeometry::PathType > DtOgrPath
Definition: ogrGeometry.h:145
DtFeatureGeometry::Type Type
Definition: ogrGeometry.h:27
OGRLineString type
Definition: ogrGeometry.h:116
DT_DLL_VRVCORE double length(const makVrv::DtCoordinateSystem &, const std::vector< DtVector > &vertices)
Returns the total distance of a segmented line defined by the provided vector of vertices. Coordinates are in local database coordinates. The coordinate system is used to convert between the local database coordinates and geocentric. All distance is in 2D – the Z value is ignored.
std::shared_ptr< DtOgrGeometryImpl > Ptr
Definition: ogrGeometry.h:129
OGRPolygon type
Definition: ogrGeometry.h:122
DtOgrGeometryImpl< DtFeatureGeometry::AreaType > DtOgrArea
Definition: ogrGeometry.h:146
DtOgrGeometryImpl< DtFeatureGeometry::UnknownType > DtOgrUnknown
Definition: ogrGeometry.h:143
Definition: ogrGeometry.h:126
OGRPoint type
Definition: ogrGeometry.h:110
Represents a feature geometry.
Definition: featureGeometry.h:40
std::shared_ptr< DtOgrGeometry > Ptr
Definition: ogrGeometry.h:23