Exemplo n.º 1
0
QSizeF QgsDiagramRendererV2::sizeMapUnits( const QgsAttributeMap& attributes, const QgsRenderContext& c )
{
    QgsDiagramSettings s;
    if ( !diagramSettings( attributes, c, s ) )
    {
        return QSizeF();
    }

    QSizeF size = diagramSize( attributes, c );
    if ( s.sizeType == QgsDiagramSettings::MM )
    {
        convertSizeToMapUnits( size, c );
    }
    return size;
}
Exemplo n.º 2
0
QSizeF QgsDiagramRenderer::sizeMapUnits( const QgsFeature& feature, const QgsRenderContext& c ) const
{
  QgsDiagramSettings s;
  if ( !diagramSettings( feature, c, s ) )
  {
    return QSizeF();
  }

  QSizeF size = diagramSize( feature, c );
  if ( size.isValid() )
  {
    double width = QgsSymbolLayerUtils::convertToMapUnits( c, size.width(), s.sizeType, s.sizeScale );
    size.rheight() *= width / size.width();
    size.setWidth( width );
  }
  return size;
}
Exemplo n.º 3
0
bool QgsLinearlyInterpolatedDiagramRenderer::diagramSettings( const QgsAttributeMap& attributes, const QgsRenderContext& c, QgsDiagramSettings& s )
{
    s = mSettings;
    s.size = diagramSize( attributes, c );
    return true;
}
Exemplo n.º 4
0
bool QgsLinearlyInterpolatedDiagramRenderer::diagramSettings( const QgsFeature& feature, const QgsRenderContext& c, QgsDiagramSettings& s )
{
  s = mSettings;
  s.size = diagramSize( feature, c );
  return true;
}