উত্তর:
পাইথন কনসোলের জন্য:
QgsProject.instance().readPath("./") # also try "../"
বা সাথে
dir(QgsProject.instance())
আপনি কিছু খুঁজে
fileName()
পাইথন প্লাগইনের জন্য (পরীক্ষিত নয়!):
from PyQt4.QtGui import QMessageBox
from qgis.core import QgsProject
path_absolute = QgsProject.instance().readPath("./")
QMessageBox.information(None, "Title", "AP: " + unicode(path_absolute))
একটি সক্রিয় স্তরে ভেক্টর ফাইল পাথ অ্যাক্সেস করতে পাইথন কনসোলটিতে এই কোডটি ভালভাবে কাজ করে:
>>>import os
>>>myfilepath= iface.activeLayer().dataProvider().dataSourceUri()
>>>myfilepath
u'/home/zeito/tiznados_canoa.tif'
>>>(myDirectory,nameFile) = os.path.split(myfilepath)
>>>myDirectory
u'/home/zeito'
>>>nameFile
u'tiznados_canoa.tif'
এটি আমার 'tiznados_canoa.tif' রাস্টার সাথে একটি সক্রিয় স্তর হিসাবে পরীক্ষিত হয়েছিল।
যদি আপনি একটি সক্রিয় স্তরে কোনও ভেক্টর ফাইলের পাথ অ্যাক্সেস করতে চান তবে এটি কাজ করে বলে মনে হচ্ছে:
myfilepath= os.path.dirname( unicode( qgis.utils.iface.activeLayer().dataProvider().dataSourceUri() ) ) ;
fic = myfilepath + "[% "FILE" %]"
তারপরে মাইলেয়ার হিসাবে একই ডিরেক্টরিতে অবস্থিত একটি ছবি বা পাঠ্য খুলতে:
from PyQt4 import QtWebKit, QtCore ; vue=QtWebKit.QWebView() vue.setUrl( QtCore.QUrl( fic ) ) ; vue.show()