本文整理汇总了Python中qad_dim.QadDimStyles.getDimIdByEntity方法的典型用法代码示例。如果您正苦于以下问题:Python QadDimStyles.getDimIdByEntity方法的具体用法?Python QadDimStyles.getDimIdByEntity怎么用?Python QadDimStyles.getDimIdByEntity使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类qad_dim.QadDimStyles
的用法示例。
在下文中一共展示了QadDimStyles.getDimIdByEntity方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: __initQadInfo
# 需要导入模块: from qad_dim import QadDimStyles [as 别名]
# 或者: from qad_dim.QadDimStyles import getDimIdByEntity [as 别名]
def __initQadInfo(self):
# inizializza entityType, qadGeom, dimStyle, dimId
if self.isInitialized() == False:
return QadEntityGeomTypeEnum.NONE
self.dimStyle = None
self.dimId = None
g = self.getGeometry()
if g is None:
return QadEntityGeomTypeEnum.NONE
# trasformo la geometria nel crs del canvas per lavorare con coordinate piane xy
coordTransform = QgsCoordinateTransform(self.layer.crs(), iface.mapCanvas().mapRenderer().destinationCrs())
g.transform(coordTransform)
wkbType = g.wkbType()
if wkbType == QGis.WKBPoint:
from qad_dim import QadDimStyles # to avoid cyclic import
# verifico se l'entità appartiene ad uno stile di quotatura
dimStyle, dimId = QadDimStyles.getDimIdByEntity(self)
if (dimStyle is not None) and (dimId is not None):
self.dimStyle = dimStyle # stile di quotatura di appartenenza
self.dimId = dimId # codice quotatura di appartenenza
if qad_layer.isTextLayer(self.layer):
self.entityType = QadEntityGeomTypeEnum.TEXT
elif qad_layer.isSymbolLayer(self.layer):
self.entityType = QadEntityGeomTypeEnum.SYMBOL
self.qadGeom = g.asPoint() # un punto
if wkbType == QGis.WKBMultiPoint:
if qad_layer.isTextLayer(self.layer):
self.entityType = QadEntityGeomTypeEnum.TEXT
elif qad_layer.isSymbolLayer(self.layer):
self.entityType = QadEntityGeomTypeEnum.SYMBOL
self.qadGeom = g.asMultiPoint() # lista di punti
elif wkbType == QGis.WKBLineString:
from qad_dim import QadDimStyles # to avoid cyclic import
# verifico se l'entità appartiene ad uno stile di quotatura
dimStyle, dimId = QadDimStyles.getDimIdByEntity(self)
if (dimStyle is not None) and (dimId is not None):
self.entityType = QadEntityGeomTypeEnum.DIMENSION_COMPONENT
self.dimStyle = dimStyle # stile di quotatura di appartenenza
self.dimId = dimId # codice quotatura di appartenenza
self.entityType, self.qadGeom = self.__fromPoyline(g.asPolyline())
elif wkbType == QGis.WKBMultiLineString:
self.entityType = []
self.qadGeom = []
lineList = g.asMultiPolyline() # vettore di linee
for line in lineList:
entityType, qadGeom = self.__fromPoyline(g.asPolyline())
self.entityType.append(entityType)
self.qadGeom.append(qadGeom)
elif wkbType == QGis.WKBPolygon:
self.entityType = []
self.qadGeom = []
polygon = g.asPolygon() # vettore di linee
for line in polygon:
entityType, qadGeom = self.__fromPoyline(line)
self.entityType.append(entityType)
self.qadGeom.append(qadGeom)
elif wkbType == QGis.WKBMultiPolygon:
self.entityType = []
self.qadGeom = []
polygonList = g.asMultiPolygon() # vettore di poligoni
for polygon in polygonList:
partialEntityType = []
partialQadGeom = []
for line in polygon:
entityType, qadGeom = self.__fromPoyline(line)
partialEntityType.append(entityType)
partialQadGeom.append(qadGeom)
self.entityType.append(partialEntityType)
self.qadGeom.append(partialQadGeom)