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

This subclass of IlvMapSegmentString is optimized to handle strings that contain only IlvMapArcSegment instances. More...

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

Inheritance diagram for IlvMapArcString:
IlvMapSegmentString IlvMapSegment IlvMapCurve IlvMapGeometry

Public Member Functions

 IlvMapArcString ()
 Initializes a new arc. More...
 
 IlvMapArcString (const IlvCoordinate &start)
 Initializes a new arc specifying its start point. More...
 
 IlvMapArcString (const IlvMapArcString &source)
 Initializes a new arc by copying an existing one. More...
 
void arcTo (const IlvCoordinate &intermediate, const IlvCoordinate &end)
 Adds an arc at the end of the string. More...
 
virtual IlvMapGeometrycopy () const
 Returns a copy of the object. More...
 
const IlvMapArcSegmentgetArcSegment (IlUInt index) const
 Returns the arc segment at a given index. More...
 
virtual IlvClassInfogetClassInfo () const
 Returns the IlvClassInfo of the instance. More...
 
virtual const IlvCoordinategetEndPoint () const
 Returns the end point of the last segment. More...
 
virtual IlUInt getHorizontalIntersectionCount (const IlvCoordinate &) const
 Returns the number of intersections between this segment and an horizontal half line. More...
 
virtual const IlvMapSegmentgetSegment (IlUInt index) const
 Returns the segment at a given index. More...
 
virtual IlUInt getSegmentCount () const
 Returns the number of segments contained in the string. More...
 
virtual const IlvCoordinategetStartPoint () const
 Returns the start point of the first segment, if it exists, otherwise, it returns an IlvCoordinate set to (0,0). More...
 
virtual void removeAll ()
 Removes all the segments in the string and sets the start point to (0,0).
 
virtual void setEndPoint (const IlvCoordinate &)
 Sets the end point of the last segment if it exists. More...
 
virtual void setStartPoint (const IlvCoordinate &)
 Sets the start point of the first segment. More...
 
- Public Member Functions inherited from IlvMapSegmentString
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...
 

Additional Inherited Members

- Static Public Member Functions inherited from IlvMapGeometry
static IlvClassInfoClassInfo ()
 Returns the class info. More...
 
- Protected Member Functions inherited from IlvMapSegmentString
 IlvMapSegmentString ()
 Initializes a new IlvMapSegmentString instance.
 
- 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 subclass of IlvMapSegmentString is optimized to handle strings that contain only IlvMapArcSegment instances.

Library: ilvmaps

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

See also
IlvMapCurveString.

Constructor & Destructor Documentation

◆ IlvMapArcString() [1/3]

IlvMapArcString::IlvMapArcString ( )

Initializes a new arc.

The start point is set to (0, 0).

◆ IlvMapArcString() [2/3]

IlvMapArcString::IlvMapArcString ( const IlvCoordinate start)

Initializes a new arc specifying its start point.

Parameters
startThe start point.

◆ IlvMapArcString() [3/3]

IlvMapArcString::IlvMapArcString ( const IlvMapArcString source)

Initializes a new arc by copying an existing one.

Parameters
sourceThe source arc.

Member Function Documentation

◆ arcTo()

void IlvMapArcString::arcTo ( const IlvCoordinate intermediate,
const IlvCoordinate end 
)

Adds an arc at the end of the string.

Parameters
intermediateThe intermediate point.
endThe end point.

◆ copy()

virtual IlvMapGeometry* IlvMapArcString::copy ( ) const
virtual

Returns a copy of the object.

Returns
An IlvMapGeometry that must be deleted by the user.

Implements IlvMapSegmentString.

◆ getArcSegment()

const IlvMapArcSegment* IlvMapArcString::getArcSegment ( IlUInt  index) const

Returns the arc segment at a given index.

Parameters
indexThe index of the segment to be retrieved. index must have a value between 0 and getSegmentCount() -1.
Returns
IlvMapArcSegment that should not be modified nor deleted by the user. The returned IlvMapSegment is volatile. This means that it may be modified or deleted by the IlvMapSegmentString istelf after another call to this function, or after any modification.

◆ getClassInfo()

virtual IlvClassInfo* IlvMapArcString::getClassInfo ( ) const
virtual

Returns the IlvClassInfo of the instance.

Returns
An IlvClassInfo that should not be modified nor deleted.

Implements IlvMapSegmentString.

◆ getEndPoint()

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

Returns the end point of the last segment.

Returns
The end point. If there is no end point, the point (0, 0) is returned.

Implements IlvMapSegmentString.

◆ getHorizontalIntersectionCount()

virtual IlUInt IlvMapArcString::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.

◆ getSegment()

virtual const IlvMapSegment* IlvMapArcString::getSegment ( IlUInt  index) const
virtual

Returns the segment at a given index.

Parameters
indexThe index of the segment to be retrieved. index must have a value between 0 and getSegmentCount()-1.
Returns
An IlvMapSegment object that should not be modified nor deleted by the user. The returned IlvMapSegment is volatile: it may be modified or deleted by the IlvMapSegmentString itself after an other call to this function, or after any modification.

Implements IlvMapSegmentString.

◆ getSegmentCount()

virtual IlUInt IlvMapArcString::getSegmentCount ( ) const
virtual

Returns the number of segments contained in the string.

Returns
The number of segments.

Implements IlvMapSegmentString.

◆ getStartPoint()

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

Returns the start point of the first segment, if it exists, otherwise, it returns an IlvCoordinate set to (0,0).

Returns
The start point.

Implements IlvMapSegmentString.

◆ setEndPoint()

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

Sets the end point of the last segment if it exists.

If the end point of the last segment does not exists, this method does nothing.

Parameters
endThe end point.

Implements IlvMapSegmentString.

◆ setStartPoint()

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

Sets the start point of the first segment.

Parameters
startThe start point.

Implements IlvMapSegmentString.