LuciadCPillar 2024.0.08
All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Modules Pages
luciad::EllipticalArc Class Referencefinal

Represents an elliptical arc. More...

#include <luciad/geometries/EllipticalArc.h>

Inheritance diagram for luciad::EllipticalArc:
luciad::Curve luciad::Geometry

Public Member Functions

 ~EllipticalArc () override
 
luciad::Coordinate computePoint (double parameter) const override
 Computes a point of the curve, defined by the given parameter. More...
 
double getA () const
 Returns the length of the semi-major axis of the elliptical arc. More...
 
Angle::Direction getAngleDirection () const
 Returns the orientation of the arc. More...
 
double getB () const
 Returns the length of the semi-minor axis of the elliptical arc. More...
 
Bounds getBounds () const override
 Returns the bounds for the geometry object. More...
 
luciad::Coordinate getCenter () const
 Returns the center of the elliptical arc. More...
 
Angle getEndAngle () const
 Returns the end angle of the elliptical arc. More...
 
double getLength2D () const override
 Returns the length of the curve. More...
 
std::shared_ptr< luciad::CoordinateReferencegetReference () const override
 Returns the coordinate reference of the geometry. More...
 
Angle getRotationAngle () const
 Returns the rotation angle of the elliptical arc. More...
 
Angle getStartAngle () const
 Returns the start angle of the elliptical arc. More...
 
virtual Coordinate computePoint (double parameter) const =0
 Computes a point of the curve, defined by the given parameter. More...
 
virtual double getLength2D () const =0
 Returns the length of the curve. More...
 
- Public Member Functions inherited from luciad::Geometry
virtual ~Geometry ()=default
 
virtual Bounds getBounds () const =0
 Returns the bounds for the geometry object. More...
 
virtual std::shared_ptr< CoordinateReferencegetReference () const =0
 Returns the coordinate reference of the geometry. More...
 

Protected Member Functions

size_t getHash () const override
 Returns the hash value for this geometry. More...
 
virtual size_t getHash () const =0
 Returns the hash value for this geometry. More...
 

Detailed Description

Represents an elliptical arc.

See also
GeometryFactory::createEllipticalArc

Constructor & Destructor Documentation

◆ ~EllipticalArc()

luciad::EllipticalArc::~EllipticalArc ( )
override

Member Function Documentation

◆ computePoint()

luciad::Coordinate luciad::EllipticalArc::computePoint ( double  parameter) const
overridevirtual

Computes a point of the curve, defined by the given parameter.

  1. At parameter 0, the point is the start point of the curve.
  2. At parameter 1, the point is the end point of the curve.
Parameters
parameterthe parameter value, within [0,1], to compute the point location for.
Returns
the computed point location.
Exceptions
luciad::InvalidArgumentExceptionif parameter is not within [0,1], or if the point could not be computed. For example, when the curve is defined by invalid points.

Implements luciad::Curve.

◆ getA()

double luciad::EllipticalArc::getA ( ) const

Returns the length of the semi-major axis of the elliptical arc.

If the coordinate reference is a geodetic reference, this is expressed in meters. Otherwise the unit of the reference is used.

Returns
the length of the semi-major axis of the elliptical arc.

◆ getAngleDirection()

Angle::Direction luciad::EllipticalArc::getAngleDirection ( ) const

Returns the orientation of the arc.

This property determines in which direction the arc extends form the start to the end angle

Returns
the orientation of the arc.

◆ getB()

double luciad::EllipticalArc::getB ( ) const

Returns the length of the semi-minor axis of the elliptical arc.

If the coordinate reference is a geodetic reference, this is expressed in meters. Otherwise the unit of the reference is used.

Returns
the length of the semi-minor axis of the elliptical arc.

◆ getBounds()

Bounds luciad::EllipticalArc::getBounds ( ) const
overridevirtual

Returns the bounds for the geometry object.

Returns
the bounds for the geometry object.
Exceptions
luciad::InvalidArgumentExceptionif the bounds could not be computed. For example, when the geometry is defined by invalid points.

Implements luciad::Geometry.

◆ getCenter()

luciad::Coordinate luciad::EllipticalArc::getCenter ( ) const

Returns the center of the elliptical arc.

Returns
the center of the elliptical arc.

◆ getEndAngle()

Angle luciad::EllipticalArc::getEndAngle ( ) const

Returns the end angle of the elliptical arc.

Returns
the end angle of the elliptical arc.

◆ getHash()

size_t luciad::EllipticalArc::getHash ( ) const
overrideprotectedvirtual

Returns the hash value for this geometry.

Returns
the hash value for this geometry.

Implements luciad::Geometry.

◆ getLength2D()

double luciad::EllipticalArc::getLength2D ( ) const
overridevirtual

Returns the length of the curve.

Returns
the length of the curve.
Exceptions
luciad::InvalidArgumentExceptionif the length could not be computed. For example, when the curve is defined by invalid points.

Implements luciad::Curve.

◆ getReference()

std::shared_ptr< luciad::CoordinateReference > luciad::EllipticalArc::getReference ( ) const
overridevirtual

Returns the coordinate reference of the geometry.

Returns
the coordinate reference of the geometry.

Implements luciad::Geometry.

◆ getRotationAngle()

Angle luciad::EllipticalArc::getRotationAngle ( ) const

Returns the rotation angle of the elliptical arc.

This property determines the rotation of the axes of the ellipse in which the arc is defined

Returns
the rotation angle of the elliptical arc.

◆ getStartAngle()

Angle luciad::EllipticalArc::getStartAngle ( ) const

Returns the start angle of the elliptical arc.

Returns
the start angle of the elliptical arc.