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

This abstract class is the base class for the geometries that describe a connected curve that has a start point and an end point. More...

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

Inheritance diagram for IlvMapSegment:
IlvMapCurve IlvMapGeometry IlvMapArcSegment IlvMapLinearSegment IlvMapSegmentString IlvMapArcString IlvMapCurveString IlvMapLineString

Public Member Functions

virtual IlvMapGeometrycopy () const =0
 Returns a copy of the object. More...
 
virtual const IlvCoordinategetEndPoint () const =0
 Returns the end point of the segment. More...
 
virtual IlUInt getHorizontalIntersectionCount (const IlvCoordinate &point) const =0
 Returns the number of intersections between this segment and an horizontal half line. More...
 
virtual const IlvCoordinategetStartPoint () const =0
 Returns the start point of the segment. More...
 
virtual void setEndPoint (const IlvCoordinate &end)=0
 Sets the end point of the segment. More...
 
virtual void setStartPoint (const IlvCoordinate &start)=0
 Sets the start point of the segment. More...
 
- Public Member Functions inherited from IlvMapCurve
virtual IlvClassInfogetClassInfo () const =0
 Returns the IlvClassInfo of the instance. More...
 
- Public Member Functions inherited from IlvMapGeometry
virtual const IlvMapGeometrygetSubElement (IlUInt index) const =0
 Returns a sub element of a collection geometry. More...
 
virtual IlUInt getSubElementCount () const =0
 Returns the number of elements contained in the geometry if the geometry is a collection. More...
 
virtual IlBoolean isCollection () const =0
 Checks if this geometry is a collection of other geometries. More...
 

Protected Member Functions

 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...
 

Additional Inherited Members

- Static Public Member Functions inherited from IlvMapGeometry
static IlvClassInfoClassInfo ()
 Returns the class info. More...
 

Detailed Description

This abstract class is the base class for the geometries that describe a connected curve that has a start point and an end point.

Library: ilvmaps

The instances of the predefined subclasses IlvMapSegment can be rendered by an IlvDefaultFeatureRenderer or by an IlvDefaultCurveRenderer.

Member Function Documentation

◆ copy()

virtual IlvMapGeometry* IlvMapSegment::copy ( ) const
pure virtual

Returns a copy of the object.

Returns
An IlvMapGeometry that must be deleted by the user.

Implements IlvMapCurve.

Implemented in IlvMapSegmentString, IlvMapLineString, IlvMapLinearSegment, IlvMapCurveString, IlvMapArcString, and IlvMapArcSegment.

◆ getEndPoint()

virtual const IlvCoordinate& IlvMapSegment::getEndPoint ( ) const
pure virtual

Returns the end point of the segment.

Returns
The end point.

Implemented in IlvMapSegmentString, IlvMapLineString, IlvMapLinearSegment, IlvMapCurveString, IlvMapArcString, and IlvMapArcSegment.

◆ getHorizontalIntersectionCount()

virtual IlUInt IlvMapSegment::getHorizontalIntersectionCount ( const IlvCoordinate point) const
pure 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.

Implemented in IlvMapLineString, IlvMapLinearSegment, IlvMapCurveString, IlvMapArcString, and IlvMapArcSegment.

◆ getStartPoint()

virtual const IlvCoordinate& IlvMapSegment::getStartPoint ( ) const
pure virtual

Returns the start point of the segment.

Returns
The start point.

Implemented in IlvMapSegmentString, IlvMapLineString, IlvMapLinearSegment, IlvMapCurveString, IlvMapArcString, and IlvMapArcSegment.

◆ setEndPoint()

virtual void IlvMapSegment::setEndPoint ( const IlvCoordinate end)
pure virtual

Sets the end point of the segment.

Parameters
endThe end point.

Implemented in IlvMapSegmentString, IlvMapLineString, IlvMapLinearSegment, IlvMapCurveString, IlvMapArcString, and IlvMapArcSegment.

◆ setStartPoint()

virtual void IlvMapSegment::setStartPoint ( const IlvCoordinate start)
pure virtual

Sets the start point of the segment.

Parameters
startThe start point.

Implemented in IlvMapSegmentString, IlvMapLineString, IlvMapLinearSegment, IlvMapCurveString, IlvMapArcString, and IlvMapArcSegment.