本文整理汇总了Python中qgis.PyQt.QtCore.QVariant.Int方法的典型用法代码示例。如果您正苦于以下问题:Python QVariant.Int方法的具体用法?Python QVariant.Int怎么用?Python QVariant.Int使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类qgis.PyQt.QtCore.QVariant
的用法示例。
在下文中一共展示了QVariant.Int方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: buildQgsVectorLayer
# 需要导入模块: from qgis.PyQt.QtCore import QVariant [as 别名]
# 或者: from qgis.PyQt.QtCore.QVariant import Int [as 别名]
def buildQgsVectorLayer(string_geomtype, string_layername, crs, feature_list, list_qgsfield):
#create new vector layer from self.crs
vector_layer = QgsVectorLayer(string_geomtype, string_layername, "memory")
#set crs from class
vector_layer.setCrs(crs)
#set fields
provider = vector_layer.dataProvider()
provider.addAttributes(list_qgsfield) #[QgsField('fid',QVariant.Int),QgsField("origin_point_id", QVariant.Double),QgsField("iso", QVariant.Int)]
vector_layer.updateFields()
#fill layer with geom and attrs
vector_layer.startEditing()
for feat in feature_list:
vector_layer.addFeature(feat, True)
vector_layer.commitChanges()
return vector_layer
示例2: getFieldDatatypeFromPythontype
# 需要导入模块: from qgis.PyQt.QtCore import QVariant [as 别名]
# 或者: from qgis.PyQt.QtCore.QVariant import Int [as 别名]
def getFieldDatatypeFromPythontype(pythonvar):
if isinstance(pythonvar, str):
return QVariant.String
elif isinstance(pythonvar, int):
return QVariant.Int
elif isinstance(pythonvar, float):
return QVariant.Double
else:
return QVariant.String
示例3: update_field_receiver_points_layer
# 需要导入模块: from qgis.PyQt.QtCore import QVariant [as 别名]
# 或者: from qgis.PyQt.QtCore.QVariant import Int [as 别名]
def update_field_receiver_points_layer(self):
if str(self.receiver_points_layer_comboBox.currentText()) == "":
return
receiver_points_layer = QgsProject.instance().mapLayersByName(self.receiver_points_layer_comboBox.currentText())[0]
receiver_points_layer_fields = list(receiver_points_layer.dataProvider().fields())
#print(receiver_points_layer_fields)
#self.id_field_comboBox.clear()
self.level_1_comboBox.clear()
self.level_2_comboBox.clear()
self.level_3_comboBox.clear()
self.level_4_comboBox.clear()
self.level_5_comboBox.clear()
receiver_points_layer_fields_number = [""]
for f in receiver_points_layer_fields:
if f.type() == QVariant.Int or f.type() == QVariant.Double:
receiver_points_layer_fields_number.append(str(f.name()))
#print(receiver_points_layer_fields_number)
for f_label in receiver_points_layer_fields_number:
#self.id_field_comboBox.addItem(f_label)
self.level_1_comboBox.addItem(f_label)
self.level_2_comboBox.addItem(f_label)
self.level_3_comboBox.addItem(f_label)
self.level_4_comboBox.addItem(f_label)
self.level_5_comboBox.addItem(f_label)
示例4: calcIsoContours
# 需要导入模块: from qgis.PyQt.QtCore import QVariant [as 别名]
# 或者: from qgis.PyQt.QtCore.QVariant import Int [as 别名]
def calcIsoContours(self, max_dist, interval, interpolation_raster_path):
featurelist = []
try:
import matplotlib.pyplot as plt
except:
return featurelist
ds_in = gdal.Open(interpolation_raster_path)
band_in = ds_in.GetRasterBand(1)
xsize_in = band_in.XSize
ysize_in = band_in.YSize
geotransform_in = ds_in.GetGeoTransform()
srs = osr.SpatialReference()
srs.ImportFromWkt( ds_in.GetProjectionRef() )
raster_values = band_in.ReadAsArray(0, 0, xsize_in, ysize_in)
raster_values[raster_values < 0] = max_dist + 1000 #necessary to produce rectangular array from raster
#nodata values get replaced by the maximum value + 1
x_pos = linspace(geotransform_in[0], geotransform_in[0] + geotransform_in[1] * raster_values.shape[1], raster_values.shape[1])
y_pos = linspace(geotransform_in[3], geotransform_in[3] + geotransform_in[5] * raster_values.shape[0], raster_values.shape[0])
x_grid, y_grid = meshgrid(x_pos, y_pos)
start = interval
end = interval * ceil(max_dist/interval) +interval
levels = arange(start, end, interval)
fid = 0
for current_level in nditer(levels):
self.feedback.pushInfo("[QNEAT3Network][calcIsoContours] Calculating {}-level contours".format(current_level))
contours = plt.contourf(x_grid, y_grid, raster_values, [0, current_level], antialiased=True)
for collection in contours.collections:
for contour_paths in collection.get_paths():
for polygon in contour_paths.to_polygons():
x = polygon[:,0]
y = polygon[:,1]
polylinexy_list = [QgsPointXY(i[0], i[1]) for i in zip(x,y)]
feat = QgsFeature()
fields = QgsFields()
fields.append(QgsField('id', QVariant.Int, '', 254, 0))
fields.append(QgsField('cost_level', QVariant.Double, '', 20, 7))
feat.setFields(fields)
geom = QgsGeometry().fromPolylineXY(polylinexy_list)
feat.setGeometry(geom)
feat['id'] = fid
feat['cost_level'] = float(current_level)
featurelist.insert(0, feat)
fid=fid+1
return featurelist
示例5: processAlgorithm
# 需要导入模块: from qgis.PyQt.QtCore import QVariant [as 别名]
# 或者: from qgis.PyQt.QtCore.QVariant import Int [as 别名]
def processAlgorithm(self, parameters, context, feedback):
feedback.pushInfo(self.tr("[QNEAT3Algorithm] This is a QNEAT3 Algorithm: '{}'".format(self.displayName())))
network = self.parameterAsSource(parameters, self.INPUT, context) #QgsProcessingFeatureSource
startPoint = self.parameterAsPoint(parameters, self.START_POINT, context, network.sourceCrs()) #QgsPointXY
max_dist = self.parameterAsDouble(parameters, self.MAX_DIST, context)#float
strategy = self.parameterAsEnum(parameters, self.STRATEGY, context) #int
entry_cost_calc_method = self.parameterAsEnum(parameters, self.ENTRY_COST_CALCULATION_METHOD, context) #int
directionFieldName = self.parameterAsString(parameters, self.DIRECTION_FIELD, context) #str (empty if no field given)
forwardValue = self.parameterAsString(parameters, self.VALUE_FORWARD, context) #str
backwardValue = self.parameterAsString(parameters, self.VALUE_BACKWARD, context) #str
bothValue = self.parameterAsString(parameters, self.VALUE_BOTH, context) #str
defaultDirection = self.parameterAsEnum(parameters, self.DEFAULT_DIRECTION, context) #int
speedFieldName = self.parameterAsString(parameters, self.SPEED_FIELD, context) #str
defaultSpeed = self.parameterAsDouble(parameters, self.DEFAULT_SPEED, context) #float
tolerance = self.parameterAsDouble(parameters, self.TOLERANCE, context) #float
analysisCrs = network.sourceCrs()
input_coordinates = [startPoint]
input_point = getFeatureFromPointParameter(startPoint)
feedback.pushInfo("[QNEAT3Algorithm] Building Graph...")
feedback.setProgress(10)
net = Qneat3Network(network, input_coordinates, strategy, directionFieldName, forwardValue, backwardValue, bothValue, defaultDirection, analysisCrs, speedFieldName, defaultSpeed, tolerance, feedback)
feedback.setProgress(40)
analysis_point = Qneat3AnalysisPoint("point", input_point, "point_id", net, net.list_tiedPoints[0], entry_cost_calc_method, feedback)
fields = QgsFields()
fields.append(QgsField('vertex_id', QVariant.Int, '', 254, 0))
fields.append(QgsField('cost', QVariant.Double, '', 254, 7))
fields.append(QgsField('origin_point_id',QVariant.String, '', 254, 7))
(sink, dest_id) = self.parameterAsSink(parameters, self.OUTPUT, context, fields, QgsWkbTypes.Point, network.sourceCrs())
feedback.pushInfo("[QNEAT3Algorithm] Calculating Iso-Pointcloud...")
iso_pointcloud = net.calcIsoPoints([analysis_point], max_dist)
feedback.setProgress(90)
sink.addFeatures(iso_pointcloud, QgsFeatureSink.FastInsert)
feedback.pushInfo("[QNEAT3Algorithm] Ending Algorithm")
feedback.setProgress(100)
results = {}
results[self.OUTPUT] = dest_id
return results
示例6: processAlgorithm
# 需要导入模块: from qgis.PyQt.QtCore import QVariant [as 别名]
# 或者: from qgis.PyQt.QtCore.QVariant import Int [as 别名]
def processAlgorithm(self, parameters, context, feedback):
feedback.pushInfo(self.tr("[QNEAT3Algorithm] This is a QNEAT3 Algorithm: '{}'".format(self.displayName())))
network = self.parameterAsSource(parameters, self.INPUT, context) #QgsProcessingFeatureSource
startPoints = self.parameterAsSource(parameters, self.START_POINTS, context) #QgsProcessingFeatureSource
id_field = self.parameterAsString(parameters, self.ID_FIELD, context) #str
max_dist = self.parameterAsDouble(parameters, self.MAX_DIST, context)#float
strategy = self.parameterAsEnum(parameters, self.STRATEGY, context) #int
entry_cost_calc_method = self.parameterAsEnum(parameters, self.ENTRY_COST_CALCULATION_METHOD, context) #int
directionFieldName = self.parameterAsString(parameters, self.DIRECTION_FIELD, context) #str (empty if no field given)
forwardValue = self.parameterAsString(parameters, self.VALUE_FORWARD, context) #str
backwardValue = self.parameterAsString(parameters, self.VALUE_BACKWARD, context) #str
bothValue = self.parameterAsString(parameters, self.VALUE_BOTH, context) #str
defaultDirection = self.parameterAsEnum(parameters, self.DEFAULT_DIRECTION, context) #int
speedFieldName = self.parameterAsString(parameters, self.SPEED_FIELD, context) #str
defaultSpeed = self.parameterAsDouble(parameters, self.DEFAULT_SPEED, context) #float
tolerance = self.parameterAsDouble(parameters, self.TOLERANCE, context) #float
analysisCrs = network.sourceCrs()
input_coordinates = getListOfPoints(startPoints)
feedback.pushInfo("[QNEAT3Algorithm] Building Graph...")
feedback.setProgress(10)
net = Qneat3Network(network, input_coordinates, strategy, directionFieldName, forwardValue, backwardValue, bothValue, defaultDirection, analysisCrs, speedFieldName, defaultSpeed, tolerance, feedback)
feedback.setProgress(40)
list_apoints = [Qneat3AnalysisPoint("from", feature, id_field, net, net.list_tiedPoints[i], entry_cost_calc_method, feedback) for i, feature in enumerate(getFeaturesFromQgsIterable(startPoints))]
fields = QgsFields()
fields.append(QgsField('vertex_id', QVariant.Int, '', 254, 0))
fields.append(QgsField('cost', QVariant.Double, '', 254, 7))
fields.append(QgsField('origin_point_id', getFieldDatatype(startPoints, id_field)))
(sink, dest_id) = self.parameterAsSink(parameters, self.OUTPUT, context, fields, QgsWkbTypes.Point, network.sourceCrs())
feedback.pushInfo("[QNEAT3Algorithm] Calculating Iso-Pointcloud...")
iso_pointcloud = net.calcIsoPoints(list_apoints, max_dist)
feedback.setProgress(90)
sink.addFeatures(iso_pointcloud, QgsFeatureSink.FastInsert)
feedback.pushInfo("[QNEAT3Algorithm] Ending Algorithm")
feedback.setProgress(100)
results = {}
results[self.OUTPUT] = dest_id
return results