129 def processAlgorithm(self, progress):
130 cliPath = '"' + os.path.join(pktoolsUtils.pktoolsPath(), self.cliName()) + '"'
131 commands = [cliPath]
132
133 input=self.getParameterValue(self.INPUT)
134 commands.append('-i')
135 commands.append('"' + input + '"')
136
137 sample=self.getParameterValue(self.SAMPLE)
138 if self.getParameterValue(self.ITERATE):
139 if str(sample).find('|')>0:
140 samplename=str(sample)[:str(sample).find('|')]
141 else:
142 samplename=str(sample)
143 else:
144 samplename=str(sample).replace("|layername"," -ln")
145 commands.append('-s')
146 commands.append(samplename)
147
148 if self.getParameterValue(self.POLYGON):
149 commands.append("-polygon")
150
151 commands.append("-r")
152 commands.append(self.RULE_OPTIONS[self.getParameterValue(self.RULE)])
153
154 output = self.getOutputFromName(self.OUTPUT)
155 outFile = output.value
156 formatIdx = self.getParameterValue(self.FORMAT)
157 outFormat = '"' + FORMATS[formatIdx] + '"'
158 commands.append('-f')
159 commands.append(outFormat)
160 ext = EXTS[formatIdx]
161 if not outFile.endswith(ext):
162 outFile += ext
163 output.value = outFile
164 commands.append('-o')
165 commands.append('"' + outFile + '"')
166
167 buffer=self.getParameterValue(self.BUFFER)
168 if buffer > 1:
169 commands.append("-buf")
170 commands.append(str(buffer))
171
172 srcnodata=self.getParameterValue(self.SRCNODATA)
173 if srcnodata != "none":
174 srcnodataValues = srcnodata.split(';')
175 for srcnodataValue in srcnodataValues:
176 commands.append('-srcnodata')
177 commands.append(srcnodataValue)
178 bndnodata=self.getParameterValue(self.BNDNODATA)
179 bndnodataValues = bndnodata.split(';')
180 for bndnodataValue in bndnodataValues:
181 commands.append('-bndnodata')
182 commands.append(bndnodataValue)
183
184 extra = str(self.getParameterValue(self.EXTRA))
185 if len(extra) > 0:
186 commands.append(extra)
187
188 pktoolsUtils.runpktools(commands, progress)