本文整理匯總了Python中qgis.core.QgsHashedLineSymbolLayer.width方法的典型用法代碼示例。如果您正苦於以下問題:Python QgsHashedLineSymbolLayer.width方法的具體用法?Python QgsHashedLineSymbolLayer.width怎麽用?Python QgsHashedLineSymbolLayer.width使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類qgis.core.QgsHashedLineSymbolLayer
的用法示例。
在下文中一共展示了QgsHashedLineSymbolLayer.width方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: testWidth
# 需要導入模塊: from qgis.core import QgsHashedLineSymbolLayer [as 別名]
# 或者: from qgis.core.QgsHashedLineSymbolLayer import width [as 別名]
def testWidth(self):
ms = QgsMapSettings()
extent = QgsRectangle(100, 200, 100, 200)
ms.setExtent(extent)
ms.setOutputSize(QSize(400, 400))
context = QgsRenderContext.fromMapSettings(ms)
context.setScaleFactor(96 / 25.4) # 96 DPI
ms.setExtent(QgsRectangle(100, 150, 100, 150))
ms.setOutputDpi(ms.outputDpi() * 2)
context2 = QgsRenderContext.fromMapSettings(ms)
context2.setScaleFactor(300 / 25.4)
s = QgsFillSymbol()
s.deleteSymbolLayer(0)
hash_line = QgsHashedLineSymbolLayer(True)
hash_line.setPlacement(QgsTemplatedLineSymbolLayerBase.FirstVertex)
simple_line = QgsSimpleLineSymbolLayer()
line_symbol = QgsLineSymbol()
line_symbol.changeSymbolLayer(0, simple_line)
hash_line.setSubSymbol(line_symbol)
hash_line.setHashLength(10)
self.assertEqual(hash_line.width(), 10)
self.assertAlmostEqual(hash_line.width(context), 37.795275590551185, 3)
self.assertAlmostEqual(hash_line.width(context2), 118.11023622047244, 3)
hash_line.setHashLengthUnit(QgsUnitTypes.RenderPixels)
self.assertAlmostEqual(hash_line.width(context), 10.0, 3)
self.assertAlmostEqual(hash_line.width(context2), 10.0, 3)