Views
Maps Package API Reference Guide
Product Documentation:
Views Documentation Home
List of all members | Public Member Functions
IlvMapArcSegment Class Reference

This class defines a circular arc segment. More...

#include <ilviews/maps/geometry/geoarcseg.h>

Inheritance diagram for IlvMapArcSegment:
IlvMapSegment IlvMapCurve IlvMapGeometry

Public Member Functions

 IlvMapArcSegment ()
 Initializes a new arc segment.
 
 IlvMapArcSegment (const IlvCoordinate &start, const IlvCoordinate &intermediate, const IlvCoordinate &end)
 Initializes a new arc segment that goes through three points. More...
 
 IlvMapArcSegment (const IlvMapArcSegment &source)
 Initializes a new arc segment by copying an existing one. More...
 
virtual IlvMapGeometrycopy () const
 Returns a copy of the object. More...
 
virtual IlvClassInfogetClassInfo () const
 Returns the IlvClassInfo of the instance. More...
 
virtual const IlvCoordinategetEndPoint () const
 Returns the end point of the segment. More...
 
virtual IlUInt getHorizontalIntersectionCount (const IlvCoordinate &) const
 Returns the number of intersections between this segment and an horizontal half line. More...
 
const IlvCoordinategetIntermediatePoint () const
 Returns the intermediate point of the arc. More...
 
virtual const IlvCoordinategetStartPoint () const
 Returns the start point of the segment. More...
 
virtual const IlvMapGeometrygetSubElement (IlUInt) const
 Returns a sub element of a collection geometry. More...
 
virtual IlUInt getSubElementCount () const
 Returns the number of elements contained in the geometry if the geometry is a collection. More...
 
virtual IlBoolean isCollection () const
 Checks if this geometry is a collection of other geometries. More...
 
virtual void setEndPoint (const IlvCoordinate &)
 Sets the end point of the segment. More...
 
void setIntermediatePoint (const IlvCoordinate &intermediate)
 Sets the intermediate point of the arc. More...
 
virtual void setStartPoint (const IlvCoordinate &)
 Sets the start point of the segment. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from IlvMapGeometry
static IlvClassInfoClassInfo ()
 Returns the class info. More...
 
- Protected Member Functions inherited from IlvMapSegment
 IlvMapSegment ()
 Initializes a new IlvMapSegment instance.
 
- Protected Member Functions inherited from IlvMapCurve
 IlvMapCurve ()
 Initializes a new, empty, curve.
 
- Protected Member Functions inherited from IlvMapGeometry
 IlvMapGeometry ()
 Constructor. More...
 

Detailed Description

This class defines a circular arc segment.

Library: ilvmaps

An IlvMapArcSegment is a circular arc defined by three control points called the start point, the intermediate point and the end point.

The instances of this class can be rendered by an IlvDefaultFeatureRenderer or by an IlvDefaultCurveRenderer.

Constructor & Destructor Documentation

◆ IlvMapArcSegment() [1/2]

IlvMapArcSegment::IlvMapArcSegment ( const IlvMapArcSegment source)

Initializes a new arc segment by copying an existing one.

Parameters
sourceThe source arc segment.

◆ IlvMapArcSegment() [2/2]

IlvMapArcSegment::IlvMapArcSegment ( const IlvCoordinate start,
const IlvCoordinate intermediate,
const IlvCoordinate end 
)

Initializes a new arc segment that goes through three points.

Parameters
startThe first point.
intermediateThe middle point.
endThe end point.

Member Function Documentation

◆ copy()

virtual IlvMapGeometry* IlvMapArcSegment::copy ( ) const
virtual

Returns a copy of the object.

Returns
An IlvMapGeometry that must be deleted by the user.

Implements IlvMapSegment.

◆ getClassInfo()

virtual IlvClassInfo* IlvMapArcSegment::getClassInfo ( ) const
virtual

Returns the IlvClassInfo of the instance.

Returns
An IlvClassInfo that should not be modified nor deleted.

Implements IlvMapCurve.

◆ getEndPoint()

virtual const IlvCoordinate& IlvMapArcSegment::getEndPoint ( ) const
virtual

Returns the end point of the segment.

Returns
The end point.

Implements IlvMapSegment.

◆ getHorizontalIntersectionCount()

virtual IlUInt IlvMapArcSegment::getHorizontalIntersectionCount ( const IlvCoordinate point) const
virtual

Returns the number of intersections between this segment and an horizontal half line.

This function is used for point inclusion tests of IlvMapRing.

Parameters
pointThe point at the right end of the horizontal half line.
Returns
The number of intersections between the point and this segment. Tangent intersections should be counted as: 1 if the point is on the segment, 2 if the point is not on the segment. If the point is on the segment where the tangent is not horizontal, the intersection should not be counted.

Implements IlvMapSegment.

◆ getIntermediatePoint()

const IlvCoordinate& IlvMapArcSegment::getIntermediatePoint ( ) const

Returns the intermediate point of the arc.

Returns
The intermediate control point.

◆ getStartPoint()

virtual const IlvCoordinate& IlvMapArcSegment::getStartPoint ( ) const
virtual

Returns the start point of the segment.

Returns
The start point.

Implements IlvMapSegment.

◆ getSubElement()

virtual const IlvMapGeometry* IlvMapArcSegment::getSubElement ( IlUInt  index) const
virtual

Returns a sub element of a collection geometry.

Parameters
indexThe index of the sub-geometry to be retrieved.
Returns
The sub element of index index if the geometry is a collection or 0 if it is not.

Implements IlvMapGeometry.

◆ getSubElementCount()

virtual IlUInt IlvMapArcSegment::getSubElementCount ( ) const
virtual

Returns the number of elements contained in the geometry if the geometry is a collection.

Returns
The number of elements contained in the geometry if the geometry is a collection. If it is not, this method returns 0.

Implements IlvMapGeometry.

◆ isCollection()

virtual IlBoolean IlvMapArcSegment::isCollection ( ) const
virtual

Checks if this geometry is a collection of other geometries.

The composite geometries predefined in Rogue Wave Views Maps are: IlvMapGeometryCollection, IlvMapMultiPoint, IlvMapSegmentString and its subclasses, IlvMapMultiCurve and IlvMapMultiArea.

Returns
IlTrue if the geometry is a collection of other geometries.

Implements IlvMapGeometry.

◆ setEndPoint()

virtual void IlvMapArcSegment::setEndPoint ( const IlvCoordinate end)
virtual

Sets the end point of the segment.

Parameters
endThe end point.

Implements IlvMapSegment.

◆ setIntermediatePoint()

void IlvMapArcSegment::setIntermediatePoint ( const IlvCoordinate intermediate)

Sets the intermediate point of the arc.

Parameters
intermediateThe intermediate point.

◆ setStartPoint()

virtual void IlvMapArcSegment::setStartPoint ( const IlvCoordinate start)
virtual

Sets the start point of the segment.

Parameters
startThe start point.

Implements IlvMapSegment.