mirror of
https://github.com/qgis/QGIS.git
synced 2025-11-12 00:06:54 -05:00
Merge pull request #4131 from NaturalGIS/fix_ogr_offset_lines
[processing] remove useless options form ogr offset line tool
This commit is contained in:
commit
40dfdd7960
@ -47,9 +47,6 @@ class OffsetCurve(GdalAlgorithm):
|
|||||||
INPUT_LAYER = 'INPUT_LAYER'
|
INPUT_LAYER = 'INPUT_LAYER'
|
||||||
GEOMETRY = 'GEOMETRY'
|
GEOMETRY = 'GEOMETRY'
|
||||||
RADIUS = 'RADIUS'
|
RADIUS = 'RADIUS'
|
||||||
DISSOLVEALL = 'DISSOLVEALL'
|
|
||||||
FIELD = 'FIELD'
|
|
||||||
MULTI = 'MULTI'
|
|
||||||
OPTIONS = 'OPTIONS'
|
OPTIONS = 'OPTIONS'
|
||||||
|
|
||||||
def defineCharacteristics(self):
|
def defineCharacteristics(self):
|
||||||
@ -65,12 +62,6 @@ class OffsetCurve(GdalAlgorithm):
|
|||||||
self.tr('Offset distance (positive value for left-sided and negative - for right-sided)'),
|
self.tr('Offset distance (positive value for left-sided and negative - for right-sided)'),
|
||||||
-99999999.999999, 99999999.999999, 1000.0,
|
-99999999.999999, 99999999.999999, 1000.0,
|
||||||
optional=False))
|
optional=False))
|
||||||
self.addParameter(ParameterBoolean(self.DISSOLVEALL,
|
|
||||||
self.tr('Dissolve all results'), False))
|
|
||||||
self.addParameter(ParameterTableField(self.FIELD,
|
|
||||||
self.tr('Dissolve by attribute'), self.INPUT_LAYER, optional=True))
|
|
||||||
self.addParameter(ParameterBoolean(self.MULTI,
|
|
||||||
self.tr('Output as singlepart geometries (only used when dissolving by attribute)'), False))
|
|
||||||
self.addParameter(ParameterString(self.OPTIONS,
|
self.addParameter(ParameterString(self.OPTIONS,
|
||||||
self.tr('Additional creation options (see ogr2ogr manual)'),
|
self.tr('Additional creation options (see ogr2ogr manual)'),
|
||||||
'', optional=True))
|
'', optional=True))
|
||||||
@ -81,9 +72,6 @@ class OffsetCurve(GdalAlgorithm):
|
|||||||
inLayer = self.getParameterValue(self.INPUT_LAYER)
|
inLayer = self.getParameterValue(self.INPUT_LAYER)
|
||||||
geometry = self.getParameterValue(self.GEOMETRY)
|
geometry = self.getParameterValue(self.GEOMETRY)
|
||||||
distance = self.getParameterValue(self.RADIUS)
|
distance = self.getParameterValue(self.RADIUS)
|
||||||
dissolveall = self.getParameterValue(self.DISSOLVEALL)
|
|
||||||
field = self.getParameterValue(self.FIELD)
|
|
||||||
multi = self.getParameterValue(self.MULTI)
|
|
||||||
options = self.getParameterValue(self.OPTIONS)
|
options = self.getParameterValue(self.OPTIONS)
|
||||||
|
|
||||||
ogrLayer = ogrConnectionString(inLayer)[1:-1]
|
ogrLayer = ogrConnectionString(inLayer)[1:-1]
|
||||||
@ -102,19 +90,10 @@ class OffsetCurve(GdalAlgorithm):
|
|||||||
arguments.append('sqlite')
|
arguments.append('sqlite')
|
||||||
arguments.append('-sql')
|
arguments.append('-sql')
|
||||||
|
|
||||||
if dissolveall or field is not None:
|
sql = "SELECT ST_OffsetCurve({}, {}), * FROM '{}'".format(geometry, distance, layername)
|
||||||
sql = "SELECT ST_Union(ST_OffsetCurve({}, {})) * FROM '{}'".format(geometry, distance, layername)
|
|
||||||
else:
|
|
||||||
sql = "SELECT ST_OffsetCurve({}, {}), * FROM '{}'".format(geometry, distance, layername)
|
|
||||||
|
|
||||||
if field is not None:
|
|
||||||
sql = '"{} GROUP BY {}"'.format(sql, field)
|
|
||||||
|
|
||||||
arguments.append(sql)
|
arguments.append(sql)
|
||||||
|
|
||||||
if field is not None and multi:
|
|
||||||
arguments.append('-explodecollections')
|
|
||||||
|
|
||||||
if options is not None and len(options.strip()) > 0:
|
if options is not None and len(options.strip()) > 0:
|
||||||
arguments.append(options)
|
arguments.append(options)
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user