QGIS/python/core/symbology-ng/qgsheatmaprenderer.sip

127 lines
4.7 KiB
Plaintext

class QgsHeatmapRenderer : QgsFeatureRenderer
{
%TypeHeaderCode
#include <qgsheatmaprenderer.h>
%End
public:
QgsHeatmapRenderer();
virtual ~QgsHeatmapRenderer();
//reimplemented methods
virtual QgsHeatmapRenderer* clone() const /Factory/;
virtual void startRender( QgsRenderContext& context, const QgsFields& fields );
virtual bool renderFeature( QgsFeature& feature, QgsRenderContext& context, int layer = -1, bool selected = false, bool drawVertexMarker = false );
virtual void stopRender( QgsRenderContext& context );
//! @note symbolForFeature2 in python bindings
virtual QgsSymbol* symbolForFeature( QgsFeature& feature, QgsRenderContext& context );
//! @note symbol2 in python bindings
virtual QgsSymbolList symbols( QgsRenderContext& context );
virtual QString dump() const;
virtual QSet<QString> usedAttributes( const QgsRenderContext& context ) const;
static QgsFeatureRenderer* create( QDomElement& element ) /Factory/;
virtual QDomElement save( QDomDocument& doc );
static QgsHeatmapRenderer* convertFromRenderer( const QgsFeatureRenderer* renderer ) /Factory/;
//reimplemented to extent the request so that points up to heatmap's radius distance outside
//visible area are included
virtual void modifyRequestExtent( QgsRectangle& extent, QgsRenderContext& context );
//heatmap specific methods
/** Returns the color ramp used for shading the heatmap.
* @returns color ramp for heatmap
* @see setColorRamp
*/
QgsColorRamp* colorRamp() const;
/** Sets the color ramp to use for shading the heatmap.
* @param ramp color ramp for heatmap. Ownership of ramp is transferred to the renderer.
* @see colorRamp
*/
void setColorRamp( QgsColorRamp* ramp /Transfer/ );
/** Returns the radius for the heatmap
* @returns heatmap radius
* @see setRadius
* @see radiusUnit
* @see radiusMapUnitScale
*/
double radius() const;
/** Sets the radius for the heatmap
* @param radius heatmap radius
* @see radius
* @see setRadiusUnit
* @see setRadiusMapUnitScale
*/
void setRadius( const double radius );
/** Returns the units used for the heatmap's radius
* @returns units for heatmap radius
* @see radius
* @see setRadiusUnit
* @see radiusMapUnitScale
*/
QgsUnitTypes::RenderUnit radiusUnit() const;
/** Sets the units used for the heatmap's radius
* @param unit units for heatmap radius
* @see radiusUnit
* @see setRadius
* @see radiusMapUnitScale
*/
void setRadiusUnit( const QgsUnitTypes::RenderUnit unit );
/** Returns the map unit scale used for the heatmap's radius
* @returns map unit scale for heatmap's radius
* @see radius
* @see radiusUnit
* @see setRadiusMapUnitScale
*/
const QgsMapUnitScale& radiusMapUnitScale() const;
/** Sets the map unit scale used for the heatmap's radius
* @param scale map unit scale for heatmap's radius
* @see setRadius
* @see setRadiusUnit
* @see radiusMapUnitScale
*/
void setRadiusMapUnitScale( const QgsMapUnitScale& scale );
/** Returns the maximum value used for shading the heatmap.
* @returns maximum value for heatmap shading. If 0, then maximum value will be automatically
* calculated.
* @see setMaximumValue
*/
double maximumValue() const;
/** Sets the maximum value used for shading the heatmap.
* @param value maximum value for heatmap shading. Set to 0 for automatic calculation of
* maximum value.
* @see maximumValue
*/
void setMaximumValue( const double value );
/** Returns the render quality used for drawing the heatmap.
* @returns render quality. A value of 1 indicates maximum quality, and increasing the
* value will result in faster drawing but lower quality rendering.
* @see setRenderQuality
*/
double renderQuality() const;
/** Sets the render quality used for drawing the heatmap.
* @param quality render quality. A value of 1 indicates maximum quality, and increasing the
* value will result in faster drawing but lower quality rendering.
* @see renderQuality
*/
void setRenderQuality( const int quality );
/** Returns the expression used for weighting points when generating the heatmap.
* @returns point weight expression. If empty, all points are equally weighted.
* @see setWeightExpression
*/
QString weightExpression() const;
/** Sets the expression used for weighting points when generating the heatmap.
* @param expression point weight expression. If set to empty, all points are equally weighted.
* @see weightExpression
*/
void setWeightExpression( const QString& expression );
};