Qt5.9.4 + QGIS3.10.8二次開發時遇到的一些問題記錄


1、將qt5.9.4中的mysql數據庫驅動拷貝到項目對應目錄(release\plugins\sqldrivers)下時

雖然能找到mysql驅動,但是和qgis的版本不兼容!

解決方法:將qgis目錄D:\QGIS3.10.8\OSGeo4W64\apps\Qt5\plugins\sqldrivers中的驅動拷貝到
項目release\plugins\sqldrivers目錄下。

2、轉換點的坐標系失敗,代碼:

    QgsCoordinateReferenceSystem * crsSrc = new QgsCoordinateReferenceSystem("EPSG:4326");
    QgsCoordinateReferenceSystem * crsDest = new QgsCoordinateReferenceSystem("EPSG:3857");
    QgsCoordinateTransformContext transformContext = QgsProject::instance()->transformContext();
    QgsCoordinateTransform * xform =new QgsCoordinateTransform(crsSrc, crsDest, transformContext);
    QgsPointXY myPoint = QgsPointXY(116,40);
    QgsPointXY  pt1 = xform->transform(myPoint);

查找qgis數據庫路徑
qDebug() << QgsApplication::srsDatabaseFilePath();
qDebug() << QgsApplication::qgisUserDatabaseFilePath();
初始化QgsCoordinateReferenceSystem對象時需要用到srs.db數據庫,將之拷貝到項目構建目錄下即可

安裝目錄:

構建目錄:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM