Quantum GIS API Documentation  1.7.5-Wroclaw
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Private Attributes | List of all members
QgsOverlayObject Class Reference

An object that holds information about the position and bounding box size of an overlay object. More...

#include <qgsoverlayobject.h>

Collaboration diagram for QgsOverlayObject:
Collaboration graph
[legend]

Public Member Functions

 QgsOverlayObject (int width=0, int height=0, double rotation=0, QgsGeometry *geometry=0)
 
virtual ~QgsOverlayObject ()
 
 QgsOverlayObject (const QgsOverlayObject &other)
 
QgsOverlayObjectoperator= (const QgsOverlayObject &other)
 
Q_DECL_DEPRECATED GEOSGeometry * getGeosGeometry ()
 Returns the feature geometry in geos format. More...
 
Q_DECL_DEPRECATED void releaseGeosGeometry (GEOSGeometry *the_geom)
 Feature geometry is released when object is destructed so this function is empty. More...
 
int width () const
 
int height () const
 
double rotation () const
 
QgsGeometrygeometry ()
 
const QgsGeometrygeometry () const
 
QgsPoint position () const
 
QList< QgsPointpositions () const
 
void setHeight (int height)
 
void setWidth (int width)
 
void setRotation (double rotation)
 
void setGeometry (QgsGeometry *g)
 Set geometry. More...
 
void addPosition (const QgsPoint &position)
 Adds a position in map coordinates. More...
 

Private Attributes

int mWidth
 Width of the bounding box in pixels. More...
 
int mHeight
 Height of the bounding box in pixels. More...
 
QList< QgsPointmPositions
 Position of the object in map coordinates. More...
 
double mRotation
 Rotation of the object. More...
 
QgsGeometrymGeometry
 Copy of the feature geometry. More...
 

Detailed Description

An object that holds information about the position and bounding box size of an overlay object.

It stores a copy of the feature geometry as this information is commonly used to calculate object placement

Note
This class has been added in version 1.1

Definition at line 32 of file qgsoverlayobject.h.

Constructor & Destructor Documentation

QgsOverlayObject::QgsOverlayObject ( int  width = 0,
int  height = 0,
double  rotation = 0,
QgsGeometry geometry = 0 
)

Definition at line 21 of file qgsoverlayobject.cpp.

QgsOverlayObject::~QgsOverlayObject ( )
virtual

Definition at line 26 of file qgsoverlayobject.cpp.

References mGeometry.

QgsOverlayObject::QgsOverlayObject ( const QgsOverlayObject other)

Definition at line 31 of file qgsoverlayobject.cpp.

References geometry(), and mGeometry.

Member Function Documentation

void QgsOverlayObject::addPosition ( const QgsPoint position)

Adds a position in map coordinates.

Definition at line 56 of file qgsoverlayobject.cpp.

References mPositions.

Referenced by QgsPALObjectPositionManager::findObjectPositions().

QgsGeometry* QgsOverlayObject::geometry ( )
inline

Definition at line 56 of file qgsoverlayobject.h.

Referenced by QgsPALGeometry::getGeosGeometry(), operator=(), and QgsOverlayObject().

const QgsGeometry* QgsOverlayObject::geometry ( ) const
inline

Definition at line 57 of file qgsoverlayobject.h.

GEOSGeometry * QgsOverlayObject::getGeosGeometry ( )

Returns the feature geometry in geos format.

The calling function does not take ownership of the generated object. The geometry is in map coordinates

Deprecated:
Please use geometry() and QgsGeometry::asGeos instead

Definition at line 46 of file qgsoverlayobject.cpp.

References QgsGeometry::asGeos(), and mGeometry.

int QgsOverlayObject::height ( ) const
inline

Definition at line 54 of file qgsoverlayobject.h.

Referenced by operator=().

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

Definition at line 67 of file qgsoverlayobject.cpp.

References mPositions.

QList<QgsPoint> QgsOverlayObject::positions ( ) const
inline

Definition at line 59 of file qgsoverlayobject.h.

Referenced by operator=().

Q_DECL_DEPRECATED void QgsOverlayObject::releaseGeosGeometry ( GEOSGeometry *  the_geom)
inline

Feature geometry is released when object is destructed so this function is empty.

Deprecated:
nop

Definition at line 50 of file qgsoverlayobject.h.

double QgsOverlayObject::rotation ( ) const
inline

Definition at line 55 of file qgsoverlayobject.h.

Referenced by operator=().

void QgsOverlayObject::setGeometry ( QgsGeometry g)

Set geometry.

This class takes ownership of the object

Definition at line 61 of file qgsoverlayobject.cpp.

References mGeometry.

void QgsOverlayObject::setHeight ( int  height)
inline

Definition at line 62 of file qgsoverlayobject.h.

void QgsOverlayObject::setRotation ( double  rotation)
inline

Definition at line 64 of file qgsoverlayobject.h.

void QgsOverlayObject::setWidth ( int  width)
inline

Definition at line 63 of file qgsoverlayobject.h.

int QgsOverlayObject::width ( ) const
inline

Definition at line 53 of file qgsoverlayobject.h.

Referenced by operator=().

Member Data Documentation

QgsGeometry* QgsOverlayObject::mGeometry
private

Copy of the feature geometry.

A copy is necessary because in QGIS geometries are deleted after drawing. The geometry is in map coordinates

Definition at line 86 of file qgsoverlayobject.h.

Referenced by getGeosGeometry(), operator=(), QgsOverlayObject(), setGeometry(), and ~QgsOverlayObject().

int QgsOverlayObject::mHeight
private

Height of the bounding box in pixels.

Definition at line 76 of file qgsoverlayobject.h.

Referenced by operator=().

QList<QgsPoint> QgsOverlayObject::mPositions
private

Position of the object in map coordinates.

Note that it is possible that an object has several positions, e.g. a multiobject or an object that is split into multiple parts by the edge of the view extent. It is also possible that there is no position (e.g. geometry too small). In that case

Definition at line 81 of file qgsoverlayobject.h.

Referenced by addPosition(), operator=(), and position().

double QgsOverlayObject::mRotation
private

Rotation of the object.

Definition at line 83 of file qgsoverlayobject.h.

Referenced by operator=().

int QgsOverlayObject::mWidth
private

Width of the bounding box in pixels.

Definition at line 74 of file qgsoverlayobject.h.

Referenced by operator=().


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