[QGIS Commit] r15842 - trunk/qgis/src/plugins/grass

svn_qgis at osgeo.org svn_qgis at osgeo.org
Thu Apr 28 14:58:03 EDT 2011


Author: rblazek
Date: 2011-04-28 11:58:03 -0700 (Thu, 28 Apr 2011)
New Revision: 15842

Modified:
   trunk/qgis/src/plugins/grass/qgsgrassregion.cpp
   trunk/qgis/src/plugins/grass/qgsgrassregion.h
Log:
draw grass region without fill

Modified: trunk/qgis/src/plugins/grass/qgsgrassregion.cpp
===================================================================
--- trunk/qgis/src/plugins/grass/qgsgrassregion.cpp	2011-04-28 13:17:58 UTC (rev 15841)
+++ trunk/qgis/src/plugins/grass/qgsgrassregion.cpp	2011-04-28 18:58:03 UTC (rev 15842)
@@ -101,8 +101,8 @@
   mStartPoint = ul;
   mEndPoint = lr;
   calcSrcRegion();
-  drawRegion( canvas(), mRubberBand, mSrcRectangle, &mCoordinateTransform );
-  drawRegion( canvas(), mSrcRubberBand, QgsRectangle( mStartPoint, mEndPoint ) );
+  drawRegion( canvas(), mRubberBand, mSrcRectangle, &mCoordinateTransform, true );
+  drawRegion( canvas(), mSrcRubberBand, QgsRectangle( mStartPoint, mEndPoint ), 0, true );
 }
 
 void QgsGrassRegionEdit::calcSrcRegion()
@@ -142,19 +142,23 @@
   }
 }
 
-void QgsGrassRegionEdit::drawRegion( QgsMapCanvas *canvas, QgsRubberBand* rubberBand, const QgsRectangle &rect, QgsCoordinateTransform * coordinateTransform )
+void QgsGrassRegionEdit::drawRegion( QgsMapCanvas *canvas, QgsRubberBand* rubberBand, const QgsRectangle &rect, QgsCoordinateTransform * coordinateTransform, bool isPolygon )
 {
   QVector<QgsPoint> points;
   points.append( QgsPoint( rect.xMinimum(), rect.yMinimum() ) );
   points.append( QgsPoint( rect.xMaximum(), rect.yMinimum() ) );
   points.append( QgsPoint( rect.xMaximum(), rect.yMaximum() ) );
   points.append( QgsPoint( rect.xMinimum(), rect.yMaximum() ) );
+  if ( !isPolygon )
+  {
+    points.append( QgsPoint( rect.xMinimum(), rect.yMinimum() ) );
+  }
 
   if ( coordinateTransform )
   {
     transform( canvas, points, coordinateTransform );
   }
-  rubberBand->reset( true );
+  rubberBand->reset( isPolygon );
   for ( int i = 0; i < points.size(); i++ )
   {
     bool update = false; // true to update canvas
@@ -519,4 +523,4 @@
 {
   QSettings settings;
   settings.setValue( "/GRASS/windows/region/geometry", saveGeometry() );
-}
\ No newline at end of file
+}

Modified: trunk/qgis/src/plugins/grass/qgsgrassregion.h
===================================================================
--- trunk/qgis/src/plugins/grass/qgsgrassregion.h	2011-04-28 13:17:58 UTC (rev 15841)
+++ trunk/qgis/src/plugins/grass/qgsgrassregion.h	2011-04-28 18:58:03 UTC (rev 15842)
@@ -157,7 +157,7 @@
     void setSrcRegion( const QgsRectangle &rect );
 
     void setTransform();
-    static void drawRegion( QgsMapCanvas *canvas, QgsRubberBand* rubberBand, const QgsRectangle &rect, QgsCoordinateTransform *coordinateTransform = 0 );
+    static void drawRegion( QgsMapCanvas *canvas, QgsRubberBand* rubberBand, const QgsRectangle &rect, QgsCoordinateTransform *coordinateTransform = 0, bool isPolygon = false );
     void calcSrcRegion();
     static void transform( QgsMapCanvas *canvas, QVector<QgsPoint> &points, QgsCoordinateTransform *coordinateTransform, QgsCoordinateTransform::TransformDirection direction = QgsCoordinateTransform::ForwardTransform );
 



More information about the QGIS-commit mailing list