當前位置:編程學習大全網 - 源碼下載 - qgis怎麽在界面旁邊顯示圖層界面

qgis怎麽在界面旁邊顯示圖層界面

1)對於點狀圖層

//設置點標號

QgsSymbol *pSym1=new QgsSymbol(QGis::Point);

//設置點的外輪廓線的顏色和線寬

pSym1->setColor(Qt::black);

pSym1->setLineWidth(0.3);

//設置充填顏色和充填樣式

pSym1->setFillColor(QColor(228,108,119));

pSym1->setFillStyle(Qt::SolidPattern);

//設置符號大小

pSym1->setPointSize(1.0);

//該方法決定了標號的形狀

//pSym1->setNamedPointSymbol("svg:education_school.svg");

pSym1->setNamedPointSymbol("hard:circle");

//設置繪制的符號

QgsSingleSymbolRenderer *mypRenderer1 = new QgsSingleSymbolRenderer(pLayer1->geometryType());

mypRenderer1->addSymbol(pSym1);

//應用於圖層

pLayer1->setRenderer(mypRenderer1);

需要註意的是:使用setNamedPointSymbol(QString)方法設置符號的顯示樣式,該方法提供了兩種顯示方式,壹種是"hard:符號類型"樣式,采用QGIS內置的符號樣式,如("hard:circle")表示顯示圓形符號,另外壹種"svg:svg文件名"樣式,表示已制定的svg文件顯示點符號,如("svg:education_school.svg")表示以education_school.svg文件顯示符號,要使用svg樣式,需要指定svg文件所在的路徑,可以在main()函數中,用如下方法指定:

QgsApplication a(argc,argv,true);

//設置svg文件的缺省路徑

QStringList strList;

strList.append("..\\symbol");

a.setDefaultSvgPaths(strList);

2)對於面狀圖層

//設置面狀標號

QgsSymbol *pSym3=new QgsSymbol(QGis::Polygon);

pSym3->setFillColor(QColor(196,230,197));

pSym3->setFillStyle(Qt::SolidPattern);

pSym3->setColor(QColor(255,255,0));

pSym3->setLineWidth(0.8);

//設置圖層繪制器

QgsSingleSymbolRenderer *mypRenderer3 = new QgsSingleSymbolRenderer(pLayer3->geometryType());

mypRenderer3->addSymbol(pSym3);

pLayer3->setRenderer(mypRenderer3);

3)對於線狀圖層

//設置線標號

QgsSymbol *pSym2=new QgsSymbol(QGis::Line);

pSym2->setColor(QColor(0,0,255));

//pSym2->setLineStyle(Qt::DashLine);

pSym2->setLineWidth(1.2);

//設置圖層繪制器

QgsSingleSymbolRenderer *mypRenderer2 = new QgsSingleSymbolRenderer(pLayer2->geometryType());

mypRenderer2->addSymbol(pSym2);

pLayer2->setRenderer(mypRenderer2);

設置繪制面板的背景顏色:

pMapCanvas->setCanvasColor(QColor(155,176,227));

顯示結果:

  • 上一篇:文字潤時光,女子染墨香的散文
  • 下一篇:新西蘭原裝進口奶粉(為您的寶寶提供健康營養)
  • copyright 2024編程學習大全網