Graphics Reference
In-Depth Information
symbol.setSize(POINT_SIZE)
symbol.setOutputUnit(QgsSymbolV2.MapUnit)
renderer = QgsSingleSymbolRendererV2(symbol)
self.startPointLayer.setRendererV2(renderer)
symbol = QgsMarkerSymbolV2.createSimple({'color' :
"red"})
symbol.setSize(POINT_SIZE)
symbol.setOutputUnit(QgsSymbolV2.MapUnit)
renderer = QgsSingleSymbolRendererV2(symbol)
self.endPointLayer.setRendererV2(renderer)
Now that we've defined the setupRenderers() method itself, let's modify our
main() function to call it. Add the following line immediately after the call to
setupMapLayers() :
window.setupRenderers()
There are a few more things we need to do to finish implementing our map renderers.
Firstly, we need to define the createTrackSymbol() helper method that we used to
set up the track renderer. Add the following to your ForestTrailsWindow class:
def createTrackSymbol(self, width, lineColor,
arrowColor,
status, direction):
symbol = QgsLineSymbolV2.createSimple({})
symbol.deleteSymbolLayer(0) # Remove default symbol
layer.
symbolLayer = QgsSimpleLineSymbolLayerV2()
symbolLayer.setWidth(width)
symbolLayer.setWidthUnit(QgsSymbolV2.MapUnit)
symbolLayer.setColor(QColor(lineColor))
if status == TRACK_STATUS_CLOSED:
symbolLayer.setPenStyle(Qt.DotLine)
symbol.appendSymbolLayer(symbolLayer)
if direction == TRACK_DIRECTION_FORWARD:
registry = QgsSymbolLayerV2Registry.instance()
Search WWH ::




Custom Search