[Qgis-developer] Import error in the qgis.core, qgis.gui
module, Help needed
Ervin
ervinramonllari at gmail.com
Sat Apr 25 07:10:56 EDT 2009
Bishwarup Banerjee wrote:
>
> Hi,
>
> I am a newbie in this environment (python, QGIS). For last few days i
> have
> been trying hard to compile and execute the tutorial of TIM written in
> python. But i am getting some error or other.
>
> The code is as follows
>
>
>
>
> import sys
> import os
>
>
> from PyQt4.QtCore import *
> from PyQt4.QtGui import *
> from qgis.core import *
> from qgis.gui import *
> #from F:\Python25\Lib\site-packages\qgis import core as QgsCore
> #from F:\Python25\Lib\site-packages\qgis import gui as QgsGui
>
> # Import our GUI
> from mainwindow_ui import Ui_MainWindow
> # Import our resources (icons)
> import resources
> # Environment variable QGISHOME must be set to the install directory
> # before running this application
> qgis_prefix = os.getenv("QGISHOME")
> class MainWindow(QMainWindow, Ui_MainWindow):
>
> def __init__(self):QMainWindow.__init__(self)
>
> # Required by Qt4 to initialize the UI
> self.setupUi(self)
>
> # Set the title for the app
> self.setWindowTitle("BTC C-DAC v 1.0")
> # Create the map canvas
> self.canvas = QgsMapCanvas()
> # Set the background color to light blue something
> self.canvas.setCanvasColor(QColor(200,200,255))
> self.canvas.enableAntiAliasing(True)
> self.canvas.useQImageToRender(False)
> self.canvas.show()
>
> # Lay our widgets out in the main window using a
> # vertical box layout
> self.layout = QVBoxLayout(self.frame)
> self.layout.addWidget(self.canvas)
>
> # Create the actions for our tools and connect each to the appropriate
> # method
> self.actionAddLayer = QAction(QIcon(":/foss4g2007/mActionAddLayer.png"),
> "Add Layer", self.frame)
>
> self.connect(self.actionAddLayer, SIGNAL("activated()"), self.addLayer)
> self.actionZoomIn = QAction(QIcon(":/foss4g2007/mActionZoomIn.png"),
> "Zoom
> In", self.frame)
> self.connect(self.actionZoomIn, SIGNAL("activated()"), self.zoomIn)
> self.actionZoomOut = QAction(QIcon(":/foss4g2007/mActionZoomOut.png"),
> "Zoom Out", self.frame)
> self.connect(self.actionZoomOut, SIGNAL("activated()"), self.zoomOut)
> self.actionPan = QAction(QIcon(":/foss4g2007/mActionPan.png"), "Pan",
> self.frame)
> self.connect(self.actionPan, SIGNAL("activated()"), self.pan)
> self.actionZoomFull =
> QAction(QIcon(":/foss4g2007/mActionZoomFullExtent.png"), "Zoom Full
> Extent",
>
> self.frame)
> self.connect(self.actionZoomFull, SIGNAL("activated()"),
> self.zoomFull)
>
> # Create a toolbar
> self.toolbar = self.addToolBar("Map")
> # Add the actions to the toolbar
> self.toolbar.addAction(self.actionAddLayer)
> self.toolbar.addAction(self.actionZoomIn)
> self.toolbar.addAction(self.actionZoomOut);
> self.toolbar.addAction(self.actionPan);
> self.toolbar.addAction(self.actionZoomFull);
>
> # Create the map tools
> self.toolPan = QgsMapToolPan(self.canvas)
> self.toolZoomIn = QgsMapToolZoom(self.canvas, False) # false = in
> self.toolZoomOut = QgsMapToolZoom(self.canvas, True) # true = out
> # Set the map tool to zoom in
> def zoomIn(self):
> self.canvas.setMapTool(self.toolZoomIn)
>
> # Set the map tool to zoom out
> def zoomOut(self):
> self.canvas.setMapTool(self.toolZoomOut)
>
> # Set the map tool to
> def pan(self):
> self.canvas.setMapTool(self.toolPan)
>
> # Zoom to full extent of layer
> def zoomFull(self):
> self.canvas.zoomFullExtent()
> # Add an OGR layer to the map
> def addLayer(self):
> file = QFileDialog.getOpenFileName(self, "Open Shapefile", ".",
> "Shapefiles(*.shp)")
>
> fileInfo = QFileInfo(file)
>
> # Add the layer
> layer = QgsVectorLayer(file, fileInfo.fileName(), "ogr")
>
> #if not layer.isValid():
> #return
>
> # Change the color of the layer to gray
> symbols = layer.renderer().symbols()
> symbol = symbols[0]
> symbol.setFillColor(QColor.fromRgb(192,192,192))
>
> # Add layer to the registry
> QgsMapLayerRegistry.instance().addMapLayer(layer);
>
> # Set extent to the extent of our layer
> self.canvas.setExtent(layer.extent())
>
> # Set up the map canvas layer set
> cl = QgsMapCanvasLayer(layer)
> layers = [cl]
> self.canvas.setLayerSet(layers)
>
> def main(argv):
> # create Qt application
> app = QApplication(argv)
>
> # Initialize qgis libraries
> QgsApplication.setPrefixPath(qgis_prefix, True)
> QgsApplication.initQgis()
>
> # create main window
> wnd = MainWindow()
>
> # Move the app window to upper left
> wnd.move(100,100)
> wnd.show()
>
> # run!
> retval = app.exec_()
>
> # exit
> QgsApplication.exitQgis()
> sys.exit(retval)
>
>
> if __name__ == "__main__":
> main(sys.argv)
>
>
>
> Previously i was getting the error
>
> No module named PyQt4.QtCore and PyQt4.QtGui
>
> But after installing the PyQt inside the site package it is not
> showing any error now.
>
>
> Now i have started getting the error,
> qgis. core module not found.
> qgis.gui module not found.
>
> I have done whatever way possible from my side.
>
> My system environment is as follows:
>
> OS -- Windows 2000
> Python 2.5
> PyQt 4.4.3.1
> QGIS 0.11.0.2
>
> I dont know in which step i should be installing these one after other.
> and also where to install and how to compile
>
> It will be very kind of you if you can help me out.
>
> Bye
> Sonai
>
> _______________________________________________
> Qgis-developer mailing list
> Qgis-developer at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/qgis-developer
>
>
Hi there,
I'm also having trouble with the example given above. The error message I
got is:
Traceback (most recent call last):
File "<pyshell#3>", line 1, in <module>
import qgis.core
ImportError: DLL load failed: The specified procedure could not be found.
I have installed python 2.5.2 in C:\Python25 and Qgis 1.0 installed from the
package OSGeo4W in the default dir C:\OSGeo4W.
The environment variables are set as below:
PATH = C:\OSGeo4W\apps\qgis;%PATH%
PYTHONPATH = C:\OSGeo4W\apps\python25\lib\site-packages
QGISHOME = C:\OSGeo4W\apps\qgis
I also tried to add to the path variable the following dirs:
C:\OSGeo4W\bin; C:\OSGeo4W\apps\qgis\bin
but still no result.
I would really appreciate any help!
Many thanks in advance,
Ervin
--
View this message in context: http://n2.nabble.com/Import-error-in-the-qgis.core%2C-qgis.gui-module%2C-Help-needed-tp2040109p2706728.html
Sent from the qgis-developer mailing list archive at Nabble.com.
More information about the Qgis-developer
mailing list