QgsPoint Class Reference
[QGIS core library]

A class to represent a point geometry. More...

#include <qgspoint.h>

List of all members.

Public Member Functions

 QgsPoint ()
 Default constructor.
 QgsPoint (const QgsPoint &p)
 QgsPoint (double x, double y)
 ~QgsPoint ()
void setX (double x)
void setY (double y)
void set (double x, double y)
double x () const
double y () const
QString toString () const
 String representation of the point (x,y).
QString toString (int thePrecision) const
 As above but with precision for string representation of a point.
QString toDegreesMinutesSeconds (int thePrecision) const
 Return a string representation as degrees minutes seconds.
QString wellKnownText () const
double sqrDist (double x, double y) const
 Returns the squared distance between this point and x,y.
double sqrDist (const QgsPoint &other) const
 Returns the squared distance between this and other point.
double sqrDistToSegment (double x1, double y1, double x2, double y2, QgsPoint &minDistPoint) const
 Returns the minimum distance between this point and a segment.
bool operator== (const QgsPoint &other)
 equality operator
bool operator!= (const QgsPoint &other) const
 Inequality operator.
QgsPointoperator= (const QgsPoint &other)
 Assignment.
void multiply (const double &scalar)
 Multiply x and y by the given value.
int onSegment (const QgsPoint &a, const QgsPoint &b) const
 Test if this point is on the segment defined by points a, b.
QgsVector operator- (QgsPoint p) const
QgsPointoperator+= (const QgsVector &v)
QgsPointoperator-= (const QgsVector &v)
QgsPoint operator+ (const QgsVector &v) const
QgsPoint operator- (const QgsVector &v) const

Private Attributes

double m_x
 x coordinate
double m_y
 y coordinate


Detailed Description

A class to represent a point geometry.

Currently no Z axis / 2.5D support is implemented.

Definition at line 61 of file qgspoint.h.


Constructor & Destructor Documentation

QgsPoint::QgsPoint (  )  [inline]

Default constructor.

Definition at line 65 of file qgspoint.h.

QgsPoint::QgsPoint ( const QgsPoint p  ) 

Create a point from another point

Definition at line 115 of file qgspoint.cpp.

References m_x, m_y, x(), and y().

QgsPoint::QgsPoint ( double  x,
double  y 
) [inline]

Create a point from x,y coordinates

Parameters:
x x coordinate
y y coordinate

Definition at line 75 of file qgspoint.h.

QgsPoint::~QgsPoint (  )  [inline]

Definition at line 79 of file qgspoint.h.


Member Function Documentation

void QgsPoint::setX ( double  x  )  [inline]

Sets the x value of the point

Parameters:
x x coordinate

Definition at line 85 of file qgspoint.h.

Referenced by QgsAnnotationItem::_readXML(), QgsCentralPointPositionManager::findObjectPosition(), QgsLabel::renderLabel(), QgsVectorLayer::snapPoint(), and sqrDistToSegment().

void QgsPoint::setY ( double  y  )  [inline]

Sets the y value of the point

Parameters:
y y coordinate

Definition at line 93 of file qgspoint.h.

Referenced by QgsAnnotationItem::_readXML(), QgsCentralPointPositionManager::findObjectPosition(), QgsLabel::renderLabel(), QgsVectorLayer::snapPoint(), and sqrDistToSegment().

void QgsPoint::set ( double  x,
double  y 
) [inline]

Sets the x and y value of the point

Definition at line 99 of file qgspoint.h.

Referenced by QgsClipper::intersect(), QgsLabel::labelPoint(), and QgsMapToPixel::transform().

double QgsPoint::x (  )  const [inline]

Get the x value of the point

Returns:
x coordinate

Definition at line 108 of file qgspoint.h.

Referenced by QgsAnnotationItem::_writeXML(), QgsRubberBand::addGeometry(), QgsDistanceArea::bearing(), QgsPalLayerSettings::calculateLabelSize(), QgsMapToolZoom::canvasReleaseEvent(), QgsDistanceArea::computeDistanceBearing(), QgsRectangle::contains(), createGeosPoint(), QgsRasterImageBuffer::createNextPartImage(), distLine2Point(), QgsPalLabeling::drawLabel(), QgsPalLabeling::drawLabelCandidateRect(), QgsRasterImageBuffer::drawPixelRectangle(), QgsRectangle::expand(), QgsMapTip::fetchFeature(), QgsRasterLayer::identify(), QgsPalGeometry::info(), QgsVectorLayer::insertSegmentVerticesForSnap(), intersectLines(), QgsComposerMap::mapPolygon(), QgsComposerMap::mapToItemCoords(), QgsDistanceArea::measureLine(), QgsMapOverviewCanvas::mouseReleaseEvent(), onSegment(), operator!=(), operator=(), operator==(), operator==(), QgsComposerMap::paint(), QgsRasterLayer::paintImageToCanvas(), QgsMapCanvas::panActionEnd(), pointInRing(), QgsPoint(), QgsPalLayerSettings::registerFeature(), QgsLabel::renderLabel(), QgsRectangle::scale(), QgsRectangle::set(), QgsMapCanvas::setExtent(), QgsFormAnnotationItem::setFeatureForMapPosition(), QgsGeometryAnalyzer::simpleMeasure(), QgsVectorLayer::snapWithContext(), QgsMapRenderer::splitLayersExtent(), sqrDist(), QgsMapTool::toCanvasCoordinates(), QgsMapCanvasItem::toCanvasCoordinates(), QgsMapToPixel::transform(), QgsCoordinateTransform::transform(), QgsClipper::trimFeatureToBoundary(), and QgsAnnotationItem::updateBalloon().

double QgsPoint::y (  )  const [inline]

Get the y value of the point

Returns:
y coordinate

Definition at line 116 of file qgspoint.h.

Referenced by QgsAnnotationItem::_writeXML(), QgsRubberBand::addGeometry(), QgsDistanceArea::bearing(), QgsPalLayerSettings::calculateLabelSize(), QgsMapToolZoom::canvasReleaseEvent(), QgsDistanceArea::computeDistanceBearing(), QgsRectangle::contains(), createGeosPoint(), QgsRasterImageBuffer::createNextPartImage(), distLine2Point(), QgsPalLabeling::drawLabel(), QgsPalLabeling::drawLabelCandidateRect(), QgsRasterImageBuffer::drawPixelRectangle(), QgsRectangle::expand(), QgsMapTip::fetchFeature(), QgsRasterLayer::identify(), QgsPalGeometry::info(), QgsVectorLayer::insertSegmentVerticesForSnap(), intersectLines(), QgsComposerMap::mapPolygon(), QgsComposerMap::mapToItemCoords(), QgsDistanceArea::measureLine(), QgsMapOverviewCanvas::mouseReleaseEvent(), onSegment(), operator!=(), operator=(), operator==(), operator==(), QgsComposerMap::paint(), QgsRasterLayer::paintImageToCanvas(), QgsMapCanvas::panActionEnd(), pointInRing(), QgsPoint(), QgsLabel::renderLabel(), QgsRectangle::scale(), QgsRectangle::set(), QgsMapCanvas::setExtent(), QgsFormAnnotationItem::setFeatureForMapPosition(), QgsGeometryAnalyzer::simpleMeasure(), QgsVectorLayer::snapWithContext(), QgsMapRenderer::splitLayersExtent(), sqrDist(), QgsMapTool::toCanvasCoordinates(), QgsMapCanvasItem::toCanvasCoordinates(), QgsMapToPixel::transform(), QgsCoordinateTransform::transform(), QgsClipper::trimFeatureToBoundary(), and QgsAnnotationItem::updateBalloon().

QString QgsPoint::toString (  )  const

QString QgsPoint::toString ( int  thePrecision  )  const

As above but with precision for string representation of a point.

Definition at line 130 of file qgspoint.cpp.

References m_x, and m_y.

QString QgsPoint::toDegreesMinutesSeconds ( int  thePrecision  )  const

Return a string representation as degrees minutes seconds.

Its up to the calling function to ensure that this point can be meaningfully represented in this form.

Note:
added in QGIS 1.4

Definition at line 137 of file qgspoint.cpp.

References m_x, and m_y.

QString QgsPoint::wellKnownText (  )  const

Return the well known text representation for the point. The wkt is created without an SRID.

Returns:
Well known text in the form POINT(x y)

Definition at line 163 of file qgspoint.cpp.

References m_x, and m_y.

double QgsPoint::sqrDist ( double  x,
double  y 
) const

double QgsPoint::sqrDist ( const QgsPoint other  )  const

Returns the squared distance between this and other point.

Definition at line 173 of file qgspoint.cpp.

References sqrDist(), x(), and y().

double QgsPoint::sqrDistToSegment ( double  x1,
double  y1,
double  x2,
double  y2,
QgsPoint minDistPoint 
) const

Returns the minimum distance between this point and a segment.

Note:
added in QGIS 1.5

Definition at line 242 of file qgspoint.cpp.

References m_x, m_y, setX(), setY(), and sqrDist().

Referenced by QgsGeometry::closestSegmentWithContext(), and QgsAnnotationItem::updateBalloon().

bool QgsPoint::operator== ( const QgsPoint other  ) 

equality operator

Definition at line 179 of file qgspoint.cpp.

References m_x, m_y, x(), and y().

bool QgsPoint::operator!= ( const QgsPoint other  )  const

Inequality operator.

Definition at line 187 of file qgspoint.cpp.

References m_x, m_y, x(), and y().

QgsPoint & QgsPoint::operator= ( const QgsPoint other  ) 

Assignment.

Definition at line 195 of file qgspoint.cpp.

References m_x, m_y, x(), and y().

void QgsPoint::multiply ( const double &  scalar  ) 

Multiply x and y by the given value.

Definition at line 206 of file qgspoint.cpp.

References m_x, and m_y.

int QgsPoint::onSegment ( const QgsPoint a,
const QgsPoint b 
) const

Test if this point is on the segment defined by points a, b.

Returns:
0 if this point is not on the open ray through a and b, 1 if point is on open ray a, 2 if point is within line segment, 3 if point is on open ray b.

Definition at line 212 of file qgspoint.cpp.

References m_x, m_y, x(), and y().

QgsVector QgsPoint::operator- ( QgsPoint  p  )  const [inline]

Definition at line 169 of file qgspoint.h.

References m_x, and m_y.

QgsPoint& QgsPoint::operator+= ( const QgsVector v  )  [inline]

Definition at line 170 of file qgspoint.h.

QgsPoint& QgsPoint::operator-= ( const QgsVector v  )  [inline]

Definition at line 171 of file qgspoint.h.

QgsPoint QgsPoint::operator+ ( const QgsVector v  )  const [inline]

Definition at line 172 of file qgspoint.h.

References QgsVector::x(), and QgsVector::y().

QgsPoint QgsPoint::operator- ( const QgsVector v  )  const [inline]

Definition at line 173 of file qgspoint.h.

References QgsVector::x(), and QgsVector::y().


Member Data Documentation

double QgsPoint::m_x [private]

double QgsPoint::m_y [private]


The documentation for this class was generated from the following files:

Generated on Sat Feb 4 19:17:44 2012 for Quantum GIS API Documentation by  doxygen 1.5.6