Salome HOME
refs #567: add "POLYLINES" partition and modified icon for Land Cover object.
[modules/hydro.git] / src / HYDROGUI / HYDROGUI_ExportImageOp.cxx
index cedcb441b284dbd4d7f9383087fe6e99ace79b42..33d61ae30b2c233310dca7f1977dec92b9b0f487 100644 (file)
@@ -1,12 +1,8 @@
-// Copyright (C) 2007-2013  CEA/DEN, EDF R&D, OPEN CASCADE
-//
-// Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
+// Copyright (C) 2014-2015  EDF-R&D
 // This library is free software; you can redistribute it and/or
 // modify it under the terms of the GNU Lesser General Public
 // License as published by the Free Software Foundation; either
-// version 2.1 of the License.
+// version 2.1 of the License, or (at your option) any later version.
 //
 // This library is distributed in the hope that it will be useful,
 // but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -53,8 +49,16 @@ void HYDROGUI_ExportImageOp::startOperation()
     QImage anImage = anImageObj->Image();
     QTransform aTransform = anImageObj->Trsf();
 
-    anImage = anImage.transformed( aTransform, Qt::SmoothTransformation );
+    // Scale image to it origin imported size
+    double aCoefX = aTransform.m11() < 0 ? -1.0 : 1.0;
+    double aCoefY = aTransform.m22() < 0 ? -1.0 : 1.0;
+    aTransform.scale( aCoefX * ( 1 / aTransform.m11() ), aCoefY * ( 1 / aTransform.m22() ) );
 
+    anImage = anImage.transformed( aTransform, Qt::SmoothTransformation );
+    
+    // Invert the Y axis direction from down to up
+    anImage = anImage.transformed( QTransform::fromScale( 1, -1 ), Qt::SmoothTransformation );
+    
     QString aFilter( tr( "IMAGE_FILTER" ) );
     QString aFileName = SUIT_FileDlg::getFileName( module()->getApp()->desktop(),
                                                    "", aFilter, tr( "EXPORT_IMAGE_TO_FILE" ), false );