Maria GDK 5.0.0.737
Documentation of native code in develop branch
Loading...
Searching...
No Matches
Maria::DrawObjectDataFactory Class Reference

#include <MDrawObjectDataFactory.h>

Public Member Functions

std::shared_ptr< DrawObjectDatacreateGenericPolygon (const Maria::ItemId &itemId)
 Create an empty polygon object.
 
std::shared_ptr< DrawObjectDatacreatePolygon (const std::string &typeId, const Maria::ItemId &itemId)
 
std::shared_ptr< DrawObjectDatacreateGenericPolygon (const Maria::ItemId &itemId, const Maria::PolygonGeometry &poly)
 Create a polygon object.
 
std::shared_ptr< DrawObjectDatacreateGenericPolygon (const Maria::ItemId &itemId, const Maria::PolygonGeometry &poly, const std::map< std::string, std::string > &fields)
 Create a polygon object with data fields.
 
std::shared_ptr< DrawObjectDatacreateGenericPolygon (const Maria::ItemId &itemId, const std::vector< BasicGeoTypes::GeoPos > &points)
 Create a polygon object from a list of geographical points.
 
std::shared_ptr< DrawObjectDatacreateGenericPolygon (const Maria::ItemId &itemId, const std::vector< BasicGeoTypes::GeoPos > &points, const std::map< std::string, std::string > &fields)
 Create a polygon object from a list of geographical points and data fields.
 
std::shared_ptr< DrawObjectDatacreatePolyline (const std::string &typeId, const Maria::ItemId &itemId)
 Create an empty polyline object.
 
std::shared_ptr< DrawObjectDatacreateGenericPolyline (const Maria::ItemId &itemId)
 
std::shared_ptr< DrawObjectDatacreatePolyline (const std::string &typeId, const Maria::ItemId &itemId, const Maria::PolylineGeometry &polyLine)
 Create generic polyline from geometry.
 
std::shared_ptr< DrawObjectDatacreateGenericPolyline (const Maria::ItemId &itemId, const Maria::PolylineGeometry &polyLine)
 
std::shared_ptr< DrawObjectDatacreatePolyline (const std::string &typeId, const Maria::ItemId &itemId, const Maria::PolylineGeometry &polyLine, const std::map< std::string, std::string > &fields)
 Create generic polyline from geometry and data fields.
 
std::shared_ptr< DrawObjectDatacreateGenericPolyline (const Maria::ItemId &itemId, const Maria::PolylineGeometry &polyLine, const std::map< std::string, std::string > &fields)
 
std::shared_ptr< DrawObjectDatacreatePolyline (const std::string &typeId, const Maria::ItemId &itemId, const std::vector< BasicGeoTypes::GeoPos > &points)
 Create a polyline object from a list of geographical points.
 
std::shared_ptr< DrawObjectDatacreateGenericPolyline (const Maria::ItemId &itemId, const std::vector< BasicGeoTypes::GeoPos > &points)
 
std::shared_ptr< DrawObjectDatacreatePolyline (const std::string &typeId, const Maria::ItemId &itemId, const std::vector< BasicGeoTypes::GeoPos > &points, const std::map< std::string, std::string > &fields)
 Create a polyline object from a list of geographical points and data fields.
 
std::shared_ptr< DrawObjectDatacreateGenericPolyline (const Maria::ItemId &itemId, const std::vector< BasicGeoTypes::GeoPos > &points, const std::map< std::string, std::string > &fields)
 
std::shared_ptr< DrawObjectDatacreateGenericCorridorArea (const Maria::ItemId &itemId)
 Create an empty corridor area object.
 
std::shared_ptr< DrawObjectDatacreateGenericCorridorArea (const Maria::ItemId &itemId, const Maria::CorridorAreaGeometry &corridorArea)
 Create corridor area from geometry.
 
std::shared_ptr< DrawObjectDatacreateGenericCorridorArea (const Maria::ItemId &itemId, const Maria::CorridorAreaGeometry &corridorArea, const std::map< std::string, std::string > &fields)
 Create corridor area from geometry and data fields.
 
std::shared_ptr< DrawObjectDatacreateGenericCorridorArea (const Maria::ItemId &itemId, const std::vector< BasicGeoTypes::GeoPos > &points, double width)
 Create a corridor area from a center line and width, with data fields.
 
std::shared_ptr< DrawObjectDatacreateGenericCorridorArea (const Maria::ItemId &itemId, const std::vector< BasicGeoTypes::GeoPos > &points, double width, const std::map< std::string, std::string > &fields)
 Create a corridor area from a center line and width, with data fields.
 
std::shared_ptr< DrawObjectDatacreateGenericEllipse (const Maria::ItemId &itemId)
 Create an empty ellipse object.
 
std::shared_ptr< DrawObjectDatacreateGenericEllipse (const Maria::ItemId &itemId, const BasicGeoTypes::GeoPos &center, const BasicGeoTypes::GeoPos &firstConjugatePoint, const BasicGeoTypes::GeoPos &secondConjugatePoint)
 Create an ellipse object from three points. This method can be used to create a rotated ellipse object defined by a center point and the two points intersecting the two semi axis and the perimeter. The semi-axis defined by the center and conjugate points should be perpendicular to each other.
 
std::shared_ptr< DrawObjectDatacreateGenericEllipse (const Maria::ItemId &itemId, const BasicGeoTypes::GeoPos &center, const BasicGeoTypes::GeoPos &firstConjugatePoint, const BasicGeoTypes::GeoPos &secondConjugatePoint, const std::map< std::string, std::string > &fields)
 Create an ellipse object with data fields from three points. This method can be used to create a rotated ellipse object defined by a center point and the two points intersecting the two semi axis and the perimeter. The semi-axis defined by the center and conjugate points should be perpendicular to each other.
 
std::shared_ptr< DrawObjectDatacreateGenericEllipse (const Maria::ItemId &itemId, const BasicGeoTypes::GeoPos &center, double rx, double ry)
 Create and ellipse object defined by a center point and two semi-axis lengths' This convenience method will create an ellipse oriented along the north-south and east-west axis.
 
std::shared_ptr< DrawObjectDatacreateGenericEllipse (const Maria::ItemId &itemId, const BasicGeoTypes::GeoPos &center, double rx, double ry, const std::map< std::string, std::string > &fields)
 Create and ellipse object defined by a center point and two semi-axis lengths with data fields.
 
std::shared_ptr< DrawObjectDatacreateGenericFanArea (const Maria::ItemId &itemId)
 Create an empty fan area object.
 
std::shared_ptr< DrawObjectDatacreateGenericFanArea (const Maria::ItemId &itemId, const Maria::FanAreaGeometry &fanArea)
 Create a fan area with geometry.
 
std::shared_ptr< DrawObjectDatacreateGenericFanArea (const Maria::ItemId &itemId, const Maria::FanAreaGeometry &fanArea, const std::map< std::string, std::string > &fields)
 Create a fan area with geometry and data fields.
 
std::shared_ptr< DrawObjectDatacreateGenericOrbitArea (const Maria::ItemId &itemId)
 Create an empty orbit area object.
 
std::shared_ptr< DrawObjectDatacreateGenericOrbitArea (const Maria::ItemId &itemId, const Maria::OrbitAreaGeometry &orbitArea)
 Create an orbit area with geometry and data fields.
 
std::shared_ptr< DrawObjectDatacreateGenericOrbitArea (const Maria::ItemId &itemId, const Maria::OrbitAreaGeometry &orbitArea, const std::map< std::string, std::string > &fields)
 Create an orbit area with geometry and data fields.
 
std::shared_ptr< DrawObjectDatacreateSymbolPoint (const Maria::ItemId &itemId) const
 
std::shared_ptr< DrawObjectDatacreateSymbolPoint (const std::string &typeId, const Maria::ItemId &itemId) const
 
std::shared_ptr< DrawObjectDatacreateSymbolPoint (const Maria::ItemId &itemId, const BasicGeoTypes::GeoPos &pos, const std::map< std::string, std::string > &fields)
 
std::shared_ptr< DrawObjectDatacreateGenericRouteArea (const Maria::ItemId &itemId)
 Create an empty route area object.
 
std::shared_ptr< DrawObjectDatacreateGenericRouteArea (const Maria::ItemId &itemId, const Maria::RouteAreaGeometry &routeArea)
 Create route area from geometry.
 
std::shared_ptr< DrawObjectDatacreateGenericRouteArea (const Maria::ItemId &itemId, const Maria::RouteAreaGeometry &routeArea, const std::map< std::string, std::string > &fields)
 Create route area from geometry and data fields.
 
std::shared_ptr< DrawObjectDatacreateGenericRouteArea (const Maria::ItemId &itemId, const std::vector< BasicGeoTypes::GeoPos > &points, const std::vector< double > &leftWidths, const std::vector< double > &rightWidths)
 Create a route area from a center line, left and right widths, with data fields.
 
std::shared_ptr< DrawObjectDatacreateGenericRouteArea (const Maria::ItemId &itemId, const std::vector< BasicGeoTypes::GeoPos > &points, const std::vector< double > &leftWidths, const std::vector< double > &rightWidths, const std::map< std::string, std::string > &fields)
 Create a route area from a center line and width, with data fields.
 

Detailed Description

DrawObjectDataFactory - Factory methods for creating draw object data.

Member Function Documentation

◆ createGenericCorridorArea() [1/5]

std::shared_ptr< DrawObjectData > Maria::DrawObjectDataFactory::createGenericCorridorArea ( const Maria::ItemId itemId)

Create an empty corridor area object.

Parameters
itemIdUnique ID for this draw object
Returns
A draw object as defined above

◆ createGenericCorridorArea() [2/5]

std::shared_ptr< DrawObjectData > Maria::DrawObjectDataFactory::createGenericCorridorArea ( const Maria::ItemId itemId,
const Maria::CorridorAreaGeometry corridorArea 
)

Create corridor area from geometry.

Parameters
itemIdUnique ID for this draw object
corridorAreageometry for the corridor area.
Returns
A draw object as defined above

◆ createGenericCorridorArea() [3/5]

std::shared_ptr< DrawObjectData > Maria::DrawObjectDataFactory::createGenericCorridorArea ( const Maria::ItemId itemId,
const Maria::CorridorAreaGeometry corridorArea,
const std::map< std::string, std::string > &  fields 
)

Create corridor area from geometry and data fields.

Parameters
itemIdUnique ID for this draw object
corridorAreageometry for the corridor area.
fieldskey/value map for the data fields.
Returns
A draw object as defined above

◆ createGenericCorridorArea() [4/5]

std::shared_ptr< DrawObjectData > Maria::DrawObjectDataFactory::createGenericCorridorArea ( const Maria::ItemId itemId,
const std::vector< BasicGeoTypes::GeoPos > &  points,
double  width 
)

Create a corridor area from a center line and width, with data fields.

Parameters
itemIdUnique ID for this draw object
pointsA list of geographical points defining the center line of the corridor.
widththe width of the corridor area in meters.
Returns
A draw object as defined above

◆ createGenericCorridorArea() [5/5]

std::shared_ptr< DrawObjectData > Maria::DrawObjectDataFactory::createGenericCorridorArea ( const Maria::ItemId itemId,
const std::vector< BasicGeoTypes::GeoPos > &  points,
double  width,
const std::map< std::string, std::string > &  fields 
)

Create a corridor area from a center line and width, with data fields.

Parameters
itemId
pointsA list of geographical points defining the center line of the corridor.
widththe width of the corridor area in meters.
fieldskey/value map for the data fields.
Returns
A draw object as defined above

◆ createGenericEllipse() [1/5]

std::shared_ptr< DrawObjectData > Maria::DrawObjectDataFactory::createGenericEllipse ( const Maria::ItemId itemId)

Create an empty ellipse object.

Parameters
itemIdUnique ID for this draw object
Returns
A draw object as defined above

◆ createGenericEllipse() [2/5]

std::shared_ptr< DrawObjectData > Maria::DrawObjectDataFactory::createGenericEllipse ( const Maria::ItemId itemId,
const BasicGeoTypes::GeoPos center,
const BasicGeoTypes::GeoPos firstConjugatePoint,
const BasicGeoTypes::GeoPos secondConjugatePoint 
)

Create an ellipse object from three points. This method can be used to create a rotated ellipse object defined by a center point and the two points intersecting the two semi axis and the perimeter. The semi-axis defined by the center and conjugate points should be perpendicular to each other.

Parameters
itemIdUnique ID for this draw object
centerCenter point of the ellipse
firstConjugatePointThe intersection point of the ellipse perimeter and the first semi-axis of the ellipse.
secondConjugatePointThe intersection point of the ellipse perimeter and the second semi-axis of the ellipse.
Returns
A draw object as defined above

◆ createGenericEllipse() [3/5]

std::shared_ptr< DrawObjectData > Maria::DrawObjectDataFactory::createGenericEllipse ( const Maria::ItemId itemId,
const BasicGeoTypes::GeoPos center,
const BasicGeoTypes::GeoPos firstConjugatePoint,
const BasicGeoTypes::GeoPos secondConjugatePoint,
const std::map< std::string, std::string > &  fields 
)

Create an ellipse object with data fields from three points. This method can be used to create a rotated ellipse object defined by a center point and the two points intersecting the two semi axis and the perimeter. The semi-axis defined by the center and conjugate points should be perpendicular to each other.

Parameters
itemIdUnique ID for this draw object
centerCenter point of the ellipse
firstConjugatePoint
secondConjugatePoint
fieldskey/value map for the data fields.
Returns
A draw object as defined above

◆ createGenericEllipse() [4/5]

std::shared_ptr< DrawObjectData > Maria::DrawObjectDataFactory::createGenericEllipse ( const Maria::ItemId itemId,
const BasicGeoTypes::GeoPos center,
double  rx,
double  ry 
)

Create and ellipse object defined by a center point and two semi-axis lengths' This convenience method will create an ellipse oriented along the north-south and east-west axis.

Parameters
itemIdUnique ID for this draw object
centerCenter point of the ellipse
rxLength (in meters) of the horizontal (east-west) semi-axis
ryLength (in meters) of the vertical (north-south) semi-axis
Returns
A draw object as defined above

◆ createGenericEllipse() [5/5]

std::shared_ptr< DrawObjectData > Maria::DrawObjectDataFactory::createGenericEllipse ( const Maria::ItemId itemId,
const BasicGeoTypes::GeoPos center,
double  rx,
double  ry,
const std::map< std::string, std::string > &  fields 
)

Create and ellipse object defined by a center point and two semi-axis lengths with data fields.

Parameters
itemIdUnique ID for this draw object
centerCenter point of the ellipse
rxLength (in meters) of the horizontal (east-west) semi-axis
ryLength (in meters) of the vertical (north-south) semi-axis
fieldskey/value map for the data fields.
Returns
A draw object as defined above

◆ createGenericFanArea() [1/3]

std::shared_ptr< DrawObjectData > Maria::DrawObjectDataFactory::createGenericFanArea ( const Maria::ItemId itemId)

Create an empty fan area object.

Parameters
itemIdUnique ID for this draw object
Returns
A draw object as defined above

◆ createGenericFanArea() [2/3]

std::shared_ptr< DrawObjectData > Maria::DrawObjectDataFactory::createGenericFanArea ( const Maria::ItemId itemId,
const Maria::FanAreaGeometry fanArea 
)

Create a fan area with geometry.

Parameters
itemIdUnique ID for this draw object
fanAreaGeometry for the object
Returns
A draw object as defined above

◆ createGenericFanArea() [3/3]

std::shared_ptr< DrawObjectData > Maria::DrawObjectDataFactory::createGenericFanArea ( const Maria::ItemId itemId,
const Maria::FanAreaGeometry fanArea,
const std::map< std::string, std::string > &  fields 
)

Create a fan area with geometry and data fields.

Parameters
itemIdUnique ID for this draw object
fanAreaGeometry for the object
fieldskey/value map for the data fields.
Returns
A draw object as defined above

◆ createGenericOrbitArea() [1/3]

std::shared_ptr< DrawObjectData > Maria::DrawObjectDataFactory::createGenericOrbitArea ( const Maria::ItemId itemId)

Create an empty orbit area object.

Parameters
itemIdUnique ID for this draw object
Returns
A draw object as defined above

◆ createGenericOrbitArea() [2/3]

std::shared_ptr< DrawObjectData > Maria::DrawObjectDataFactory::createGenericOrbitArea ( const Maria::ItemId itemId,
const Maria::OrbitAreaGeometry orbitArea 
)

Create an orbit area with geometry and data fields.

Parameters
itemIdUnique ID for this draw object
orbitAreaGeometry for the object
Returns
A draw object as defined above

◆ createGenericOrbitArea() [3/3]

std::shared_ptr< DrawObjectData > Maria::DrawObjectDataFactory::createGenericOrbitArea ( const Maria::ItemId itemId,
const Maria::OrbitAreaGeometry orbitArea,
const std::map< std::string, std::string > &  fields 
)

Create an orbit area with geometry and data fields.

Parameters
itemIdUnique ID for this draw object
orbitAreaGeometry for the object
fieldskey/value map for the data fields.
Returns
A draw object as defined above

◆ createGenericPolygon() [1/5]

std::shared_ptr< DrawObjectData > Maria::DrawObjectDataFactory::createGenericPolygon ( const Maria::ItemId itemId)

Create an empty polygon object.

Parameters
itemIdUnique ID for this draw object
Returns
A draw object as defined above

◆ createGenericPolygon() [2/5]

std::shared_ptr< DrawObjectData > Maria::DrawObjectDataFactory::createGenericPolygon ( const Maria::ItemId itemId,
const Maria::PolygonGeometry poly 
)

Create a polygon object.

Parameters
itemIdUnique ID for this draw object
polyInput polygon defined in geographical coordinates with longitude along the x-axis and latitude in the y-axis. This polygon can contain multiple rings and holes.
Returns
A draw object as defined above

◆ createGenericPolygon() [3/5]

std::shared_ptr< DrawObjectData > Maria::DrawObjectDataFactory::createGenericPolygon ( const Maria::ItemId itemId,
const Maria::PolygonGeometry poly,
const std::map< std::string, std::string > &  fields 
)

Create a polygon object with data fields.

Parameters
itemIdUnique ID for this draw object
polyInput polygon defined in geographical coordinates with longitude along the x-axis and latitude in the y-axis. This polygon can contain multiple rings and holes.
fieldskey/value map for the data fields.
Returns
A draw object as defined above

◆ createGenericPolygon() [4/5]

std::shared_ptr< DrawObjectData > Maria::DrawObjectDataFactory::createGenericPolygon ( const Maria::ItemId itemId,
const std::vector< BasicGeoTypes::GeoPos > &  points 
)

Create a polygon object from a list of geographical points.

Parameters
itemIdUnique ID for this draw object
pointsAt least 3 geographical points defining the outer perimeter of the polygon.
Returns
A draw object as defined above

◆ createGenericPolygon() [5/5]

std::shared_ptr< DrawObjectData > Maria::DrawObjectDataFactory::createGenericPolygon ( const Maria::ItemId itemId,
const std::vector< BasicGeoTypes::GeoPos > &  points,
const std::map< std::string, std::string > &  fields 
)

Create a polygon object from a list of geographical points and data fields.

Parameters
itemIdUnique ID for this draw object
pointsAt least 3 geographical points defining the outer perimeter of the polygon.
fieldskey/value map for the data fields.
Returns
A draw object as defined above

◆ createGenericRouteArea() [1/5]

std::shared_ptr< DrawObjectData > Maria::DrawObjectDataFactory::createGenericRouteArea ( const Maria::ItemId itemId)

Create an empty route area object.

Parameters
itemIdUnique ID for this draw object
Returns
A draw object as defined above

◆ createGenericRouteArea() [2/5]

std::shared_ptr< DrawObjectData > Maria::DrawObjectDataFactory::createGenericRouteArea ( const Maria::ItemId itemId,
const Maria::RouteAreaGeometry routeArea 
)

Create route area from geometry.

Parameters
itemIdUnique ID for this draw object
routeAreageometry for the route area.
Returns
A draw object as defined above

◆ createGenericRouteArea() [3/5]

std::shared_ptr< DrawObjectData > Maria::DrawObjectDataFactory::createGenericRouteArea ( const Maria::ItemId itemId,
const Maria::RouteAreaGeometry routeArea,
const std::map< std::string, std::string > &  fields 
)

Create route area from geometry and data fields.

Parameters
itemIdUnique ID for this draw object
routeAreageometry for the route area.
fieldskey/value map for the data fields.
Returns
A draw object as defined above

◆ createGenericRouteArea() [4/5]

std::shared_ptr< DrawObjectData > Maria::DrawObjectDataFactory::createGenericRouteArea ( const Maria::ItemId itemId,
const std::vector< BasicGeoTypes::GeoPos > &  points,
const std::vector< double > &  leftWidths,
const std::vector< double > &  rightWidths 
)

Create a route area from a center line, left and right widths, with data fields.

Parameters
itemIdUnique ID for this draw object
pointsA list of geographical points defining the center line of the corridor.
leftWidthsArray of left widths of the route area (in meters)
rightWidthsArray of right widths of the route area (in meters)
Returns
A draw object as defined above

◆ createGenericRouteArea() [5/5]

std::shared_ptr< DrawObjectData > Maria::DrawObjectDataFactory::createGenericRouteArea ( const Maria::ItemId itemId,
const std::vector< BasicGeoTypes::GeoPos > &  points,
const std::vector< double > &  leftWidths,
const std::vector< double > &  rightWidths,
const std::map< std::string, std::string > &  fields 
)

Create a route area from a center line and width, with data fields.

Parameters
itemId
pointsA list of geographical points defining the center line of the corridor.
leftWidthsArray of left widths of the route area (in meters)
rightWidthsArray of right widths of the route area (in meters)
fieldskey/value map for the data fields.
Returns
A draw object as defined above

◆ createPolyline() [1/5]

std::shared_ptr< DrawObjectData > Maria::DrawObjectDataFactory::createPolyline ( const std::string &  typeId,
const Maria::ItemId itemId 
)

Create an empty polyline object.

Parameters
itemIdUnique ID for this draw object
Returns
A draw object as defined above

◆ createPolyline() [2/5]

std::shared_ptr< DrawObjectData > Maria::DrawObjectDataFactory::createPolyline ( const std::string &  typeId,
const Maria::ItemId itemId,
const Maria::PolylineGeometry polyLine 
)

Create generic polyline from geometry.

Parameters
itemIdUnique ID for this draw object
polyLinegeometry for this object.
Returns
A draw object as defined above

◆ createPolyline() [3/5]

std::shared_ptr< DrawObjectData > Maria::DrawObjectDataFactory::createPolyline ( const std::string &  typeId,
const Maria::ItemId itemId,
const Maria::PolylineGeometry polyLine,
const std::map< std::string, std::string > &  fields 
)

Create generic polyline from geometry and data fields.

Parameters
itemIdUnique ID for this draw object
polyLinegeometry for this object.
fieldskey/value map for the data fields.
Returns
A draw object as defined above

◆ createPolyline() [4/5]

std::shared_ptr< DrawObjectData > Maria::DrawObjectDataFactory::createPolyline ( const std::string &  typeId,
const Maria::ItemId itemId,
const std::vector< BasicGeoTypes::GeoPos > &  points 
)

Create a polyline object from a list of geographical points.

Parameters
itemIdUnique ID for this draw object
pointsA list of geographical points defining the polyline.
Returns
A draw object as defined above

◆ createPolyline() [5/5]

std::shared_ptr< DrawObjectData > Maria::DrawObjectDataFactory::createPolyline ( const std::string &  typeId,
const Maria::ItemId itemId,
const std::vector< BasicGeoTypes::GeoPos > &  points,
const std::map< std::string, std::string > &  fields 
)

Create a polyline object from a list of geographical points and data fields.

Parameters
itemIdUnique ID for this draw object
pointsA list of geographical points defining the polyline.
fieldskey/value map for the data fields.
Returns
A draw object as defined above

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