2020"""
2121# Import the PyQt and QGIS libraries
2222import math
23- import os
2423import re
2524import shutil
2625
27- from PyQt4 .QtCore import Qt , QTextCodec , QSettings , QPropertyAnimation , QSize , QObject
26+ from PyQt4 .QtCore import Qt , QSettings , QPropertyAnimation , QSize , QObject
2827from PyQt4 .QtGui import QWidget , QDialog , QVBoxLayout , qApp
29- import config
3028from geom .transformgeom import transformGeometry
3129from gui .generated .ui_orbitalDialog import Ui_orbitalDialog
3230from qgis .core import QgsProject , QGis , QgsFeatureRequest , QgsPoint , QgsVectorLayer
4644except ImportError :
4745 None
4846
47+ try :
48+ from PIL import Image
49+ except ImportError :
50+ None
51+
52+
4953
5054class CefWidget (QWidget ):
5155 """ CefPython Viewer"""
@@ -180,8 +184,22 @@ def CopyFile(self, src):
180184 os .remove (os .path .join (root , file ))
181185
182186 # Copy image in local folder
187+ # Uncomment for large images if viewer is blank screen
188+ img = Image .open (src_dir )
189+ newwidth = 8000
183190 dst_dir = dst_dir + "\\ image.jpg"
184- shutil .copy (src_dir , dst_dir )
191+ width , height = img .size
192+
193+ if width > newwidth :
194+ wpercent = (newwidth / float (img .size [0 ]))
195+ hsize = int ((float (img .size [1 ]) * float (wpercent )))
196+ img = img .resize ((newwidth , hsize ), Image .ANTIALIAS )
197+ img .save (dst_dir , optimize = True , quality = 95 )
198+
199+ # Comment for large images if viewer is blank screen
200+ else :
201+ shutil .copy (src_dir , dst_dir )
202+
185203 qApp .processEvents ()
186204 return
187205
@@ -322,8 +340,8 @@ def GetBackNextImage(self):
322340
323341 # Filter mapa foto layer
324342 ids = [feat .id () for feat in layer .getFeatures (
325- QgsFeatureRequest ().setFilterExpression ("order ='" +
326- str (new_lordem ) +
343+ QgsFeatureRequest ().setFilterExpression (config . column_order + " ='" +
344+ str (new_lordem ) +
327345 "'" ))]
328346
329347 if len (ids ) == 0 :
@@ -332,8 +350,8 @@ def GetBackNextImage(self):
332350 QgsMessageBar .INFO )
333351 # Filter mapa foto layer
334352 ids = [feat .id () for feat in layer .getFeatures (
335- QgsFeatureRequest ().setFilterExpression ("order ='" +
336- str (ac_lordem ) +
353+ QgsFeatureRequest ().setFilterExpression (config . column_order + " ='" +
354+ str (ac_lordem ) +
337355 "'" ))]
338356 # Update selected feature
339357 self .ReloadView (ids [0 ])
@@ -439,8 +457,9 @@ def setOrientation(self, yaw=None):
439457 tmpGeom = self .actualPointOrientation .asGeometry ()
440458
441459 self .rotateTool = transformGeometry ()
460+ epsg = self .canvas .mapRenderer ().destinationCrs ().authid ()
442461 self .dumLayer = QgsVectorLayer (
443- "Point?crs=EPSG:4326" , "temporary_points" , "memory" )
462+ "Point?crs=" + epsg , "temporary_points" , "memory" )
444463 self .actualPointOrientation .setToGeometry (self .rotateTool .rotate (
445464 tmpGeom , self .actualPointDx , angle ), self .dumLayer )
446465 qApp .processEvents ()
0 commit comments