일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- 앱개발
- mapmatching
- ODField
- PyQGIS
- 안드로이드
- Circle
- autocad
- QgsRubberBand
- graphhopper
- nifi
- pgrouting
- khaiii
- ODTable
- 도로명주소일일업데이트
- QGIS
- split line
- kmoran
- 스타트업
- pbf
- QGIS3
- pluginbuilder
- Polyline
- keypressed
- qgis linux
- 서비스
- qgis 설치
- qgis server
- 편집지적
- ogrinfo
- 아이디어
- Today
- Total
목록PyQGIS (4)
개발자 이야기
from itertools import combinations,chain import math class CheckTest(): def __init__(self): self.str_key_name = 'gid' self.str_gen_id = "nextval('id_seq'::regclass)" self.layer = iface.activeLayer() self.fldnames = [] self.idx_key = -1 self.maxvalue = 0 flds = self.layer.fields() for idx in range(0, len(flds)): fld = flds[idx] name = fld.name() self.fldnames.append(name) if name == self.str_key_..

the yellow is showed by feature selection. and green line is created by QgsRubberBand. from qgis.gui import QgsRubberBand if self.rb != None: self.iface.mapCanvas().scene().removeItem(self.rb) self.rb = QgsRubberBand(self.iface.mapCanvas(), True) self.rb.setColor(QColor(0, 255, 0, 255)) self.rb.setWidth(2) self.rb.addGeometry(ft.geometry(), None)

the plugin's menu is created. and new toolbar is created, too. the following is how to change it to plugin toolbar .
it's just a trick. it may happen side effects. 1. add keypressed event to qgsmapcanvas. self.iface.mapCanvas().keyPressed.connect(self.step) 2. get active layers and select it def step(event): ascii = event.key() seq = ascii - 49 layers = self.iface.mapCanvas().layers() layer = layers[seq] treeview = self.iface.layerTreeView() treeview.setCurrentLayer(layer)