本文整理汇总了Python中qgis.gui.QgsRubberBand方法的典型用法代码示例。如果您正苦于以下问题:Python gui.QgsRubberBand方法的具体用法?Python gui.QgsRubberBand怎么用?Python gui.QgsRubberBand使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类qgis.gui
的用法示例。
在下文中一共展示了gui.QgsRubberBand方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: __init__
# 需要导入模块: from qgis import gui [as 别名]
# 或者: from qgis.gui import QgsRubberBand [as 别名]
def __init__(self, iface, settings):
self.canvas = iface.mapCanvas()
QgsMapTool.__init__(self, self.canvas)
self.iface = iface
self.settings = settings
self.reverseGeoCodeDialog = ReverseGeocodeDialog(self, self.iface, self.iface.mainWindow())
self.iface.addDockWidget(Qt.TopDockWidgetArea, self.reverseGeoCodeDialog)
self.reverseGeoCodeDialog.hide()
self.epsg4326 = QgsCoordinateReferenceSystem('EPSG:4326')
self.marker = None
# Set up a polygon/line rubber band
self.rubber = QgsRubberBand(self.canvas)
self.rubber.setColor(QColor(255, 70, 0, 200))
self.rubber.setWidth(5)
self.rubber.setBrushStyle(Qt.NoBrush)
示例2: __init__
# 需要导入模块: from qgis import gui [as 别名]
# 或者: from qgis.gui import QgsRubberBand [as 别名]
def __init__(self, canvas, geometryType, param, type, color = QColor( 254, 178, 76, 63 )):
"""
Constructor
"""
QgsMapTool.__init__(self, canvas)
self.canvas = canvas
self.active = False
self.geometryType = self.tr(geometryType)
self.param=param
self.type=type
self.cursor=None
self.rubberBand = QgsRubberBand(self.canvas, QgsWkbTypes.PolygonGeometry)
self.setColor(color)
self.reset()
self.rotAngle = 0
self.currentCentroid = None
self.rotate = False
示例3: createSnapCursor
# 需要导入模块: from qgis import gui [as 别名]
# 或者: from qgis.gui import QgsRubberBand [as 别名]
def createSnapCursor(self, point):
#Método para criar rubberBand do snap
rubberBand = self.getSnapRubberBand()
if rubberBand:
rubberBand.reset()
else:
rubberBand = gui.QgsRubberBand(
self.getCanvas(),
geometryType = core.QgsWkbTypes.PointGeometry
)
rubberBand.setColor(QtGui.QColor(255, 0, 0, 200))
rubberBand.setFillColor(QtGui.QColor(255, 0, 0, 40))
rubberBand.setWidth(5)
rubberBand.setIcon(gui.QgsRubberBand.ICON_X)
rubberBand.addPoint(point)
self.setSnapRubberBand(rubberBand)
示例4: __init__
# 需要导入模块: from qgis import gui [as 别名]
# 或者: from qgis.gui import QgsRubberBand [as 别名]
def __init__(self):
self.iface = iface
self.srs_wgs84 = QgsCoordinateReferenceSystem(4326)
self.transform_decorator = QgsCoordinateTransform(self.srs_wgs84, self.srs_wgs84)
self.rb = QgsRubberBand(self.iface.mapCanvas(), QGisGeometryType.Point)
self.rb.setColor(QColor('magenta'))
self.rb.setIconSize(12)
self.features_rb = QgsRubberBand(self.iface.mapCanvas(), QGisGeometryType.Point)
magenta_transp = QColor('#3388ff')
magenta_transp.setAlpha(120)
self.features_rb.setColor(magenta_transp)
self.features_rb.setIconSize(12)
self.features_rb.setWidth(2)
示例5: __init__
# 需要导入模块: from qgis import gui [as 别名]
# 或者: from qgis.gui import QgsRubberBand [as 别名]
def __init__(self, iface):
self.iface = iface
self.canvas = iface.mapCanvas()
self.crossRb = QgsRubberBand(self.canvas, QgsWkbTypes.LineGeometry)
self.crossRb.setColor(Qt.red)
self.provider = LatLonToolsProvider()
self.toolbar = self.iface.addToolBar('Lat Lon Tools Toolbar')
self.toolbar.setObjectName('LatLonToolsToolbar')
示例6: __init__
# 需要导入模块: from qgis import gui [as 别名]
# 或者: from qgis.gui import QgsRubberBand [as 别名]
def __init__(self, iface, parent):
super(GeodesicMeasureDialog, self).__init__(parent)
self.setupUi(self)
self.iface = iface
self.canvas = iface.mapCanvas()
self.pointDigitizerDialog = AddMeasurePointWidget(self, iface, parent)
qset = QSettings()
self.manualEntryButton.setIcon(QIcon(os.path.dirname(__file__) + "/images/manualpoint.png"))
self.manualEntryButton.clicked.connect(self.showManualEntryDialog)
self.restoreGeometry(qset.value("ShapeTools/MeasureDialogGeometry", QByteArray(), type=QByteArray))
self.closeButton.clicked.connect(self.closeDialog)
self.newButton.clicked.connect(self.newDialog)
self.saveToLayerButton.clicked.connect(self.saveToLayer)
self.saveToLayerButton.setEnabled(False)
self.unitsComboBox.addItems(DISTANCE_LABELS)
self.tableWidget.setColumnCount(3)
self.tableWidget.setSortingEnabled(False)
self.tableWidget.setHorizontalHeaderLabels([tr('Heading To'), tr('Heading From'), tr('Distance')])
self.unitsComboBox.activated.connect(self.unitsChanged)
self.capturedPoints = []
self.distances = []
self.activeMeasuring = True
self.lastMotionPt = None
self.unitsChanged()
self.currentDistance = 0.0
self.pointRb = QgsRubberBand(self.canvas, QgsWkbTypes.PointGeometry)
self.pointRb.setColor(settings.rubberBandColor)
self.pointRb.setIconSize(10)
self.lineRb = QgsRubberBand(self.canvas, QgsWkbTypes.LineGeometry)
self.lineRb.setColor(settings.rubberBandColor)
self.lineRb.setWidth(3)
self.tempRb = QgsRubberBand(self.canvas, QgsWkbTypes.LineGeometry)
self.tempRb.setColor(settings.rubberBandColor)
self.tempRb.setWidth(3)
示例7: defineRubberBand
# 需要导入模块: from qgis import gui [as 别名]
# 或者: from qgis.gui import QgsRubberBand [as 别名]
def defineRubberBand(self):
"""
Defines the rubber band style
"""
settings = QSettings()
myRed = int(settings.value("/qgis/default_measure_color_red", 222))
myGreen = int(settings.value("/qgis/default_measure_color_green", 155))
myBlue = int(settings.value("/qgis/default_measure_color_blue", 67))
self.rubberBand = QgsRubberBand(self.canvas)
self.rubberBand.setColor(QColor(myRed, myGreen, myBlue, 100))
self.rubberBand.setWidth(3)
示例8: removeVertice
# 需要导入模块: from qgis import gui [as 别名]
# 或者: from qgis.gui import QgsRubberBand [as 别名]
def removeVertice(self):
#Método para remover vertices
firstPoint = None
lastPoint = None
rubberBand = self.getRubberBand()
qtnUndoPoints = self.getParametersFromConfig()
if rubberBand and rubberBand.numberOfVertices() > qtnUndoPoints:
for x in range(qtnUndoPoints):
rubberBand.removeLastPoint()
if not self.isPolygon():
lastPoint = rubberBand.asGeometry().asPolyline()[-1]
new_rubberBand = gui.QgsRubberBand(self.getCanvas(), core.QgsWkbTypes.LineGeometry)
new_rubberBand.setColor(QtGui.QColor(255, 0, 0, 150))
else:
if len(rubberBand.asGeometry().asPolygon()[0]) > 1:
firstPoint = rubberBand.asGeometry().asPolygon()[0][0]
lastPoint = rubberBand.asGeometry().asPolygon()[0][-2]
new_rubberBand = gui.QgsRubberBand(self.getCanvas(), core.QgsWkbTypes.PolygonGeometry)
new_rubberBand.setColor(QtGui.QColor(255, 0, 0, 63))
new_rubberBand.setWidth(1)
rubberBandToStopState = self.getRubberBandToStopState()
if rubberBandToStopState:
rubberBandToStopState.reset()
new_rubberBand.setLineStyle(QtCore.Qt.DotLine)
new_rubberBand.addPoint(lastPoint)
if firstPoint:
new_rubberBand.addPoint(firstPoint)
self.setRubberBandToStopState(new_rubberBand)
elif rubberBand:
self.setStopedState(False)
self.getRubberBandToStopState().reset()
self.cancelEdition()
示例9: startRubberBand
# 需要导入模块: from qgis import gui [as 别名]
# 或者: from qgis.gui import QgsRubberBand [as 别名]
def startRubberBand(self, pointMap, layer):
#Método para iniciar o rubberBand da aquisição
#Parâmetro de entrada: pointMap (Primeiro ponto da feição em aquisição), layer (Camada ativa)
self.setDrawingState(True)
self.setGeometryType(layer.geometryType())
if self.isPolygon():
rubberBand = gui.QgsRubberBand(self.getCanvas(), core.QgsWkbTypes.PolygonGeometry)
rubberBand.setColor(QtGui.QColor(255, 0, 0, 63))
rubberBand.setWidth(2)
else:
rubberBand = gui.QgsRubberBand(self.getCanvas(), core.QgsWkbTypes.LineGeometry)
rubberBand.setColor(QtGui.QColor(255, 0, 0, 150))
rubberBand.setWidth(1)
rubberBand.addPoint(pointMap)
self.setRubberBand(rubberBand)