rwlogo
Rogue Wave Views 5.6

Rogue Wave Views
Maps Package API Reference Guide

Product Documentation:

Rogue Wave Views
Documentation Home

IlvMapSegment Class Reference

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

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

List of all members.

Public Member Functions

virtual IlvMapGeometrycopy () const =0
 Returns a copy of the object.
virtual const IlvCoordinategetEndPoint () const =0
 Returns the end point of the segment.
virtual IlUInt getHorizontalIntersectionCount (const IlvCoordinate &point) const =0
virtual const IlvCoordinategetStartPoint () const =0
 Returns the start point of the segment.
virtual void setEndPoint (const IlvCoordinate &end)=0
 Sets the end point of the segment.
virtual void setStartPoint (const IlvCoordinate &start)=0
 Sets the start point of the segment.

Protected Member Functions

 IlvMapSegment ()
 Constructor.

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.

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


Constructor & Destructor Documentation

IlvMapSegment::IlvMapSegment (  )  [protected]

Constructor.

The constructor of this abstract class is protected.


Member Function Documentation

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 IlvMapArcSegment, IlvMapArcString, IlvMapCurveString, IlvMapLinearSegment, IlvMapLineString, and IlvMapSegmentString.

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

Returns the end point of the segment.

Returns:
The end point.

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

virtual IlUInt IlvMapSegment::getHorizontalIntersectionCount ( const IlvCoordinate point  )  const [pure virtual]

Returns the number of intersections between an horizontal half line defined by its right extremity point and the segment. This function is used for point inclusion tests of IlvMapRing.

Parameters:
point The point at the right extremity of the horizontal half line.
Returns:
The number of intersections between the point and the 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 IlvMapArcSegment, IlvMapArcString, IlvMapCurveString, IlvMapLinearSegment, and IlvMapLineString.

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

Returns the start point of the segment.

Returns:
The start point.

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

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

Sets the end point of the segment.

Parameters:
end The end point.

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

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

Sets the start point of the segment.

Parameters:
start The start point.

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

 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

© Copyright 2012, Rogue Wave Software, Inc. All Rights Reserved.
Rogue Wave is a registered trademark of Rogue Wave Software, Inc. in the United States and other countries. All other trademarks are the property of their respective owners.