Рисование леса и других однородных полигонов - скрипт JOSM+python

Боюсь что трассировать в лучшем случае можно будет самые широкие реки, да ещё небось без лесов по берегам.

В вывод josm’а.
Скорее всего в скрипте происходит эксепшн.

Не загружается модуль. josm ver.3070

Я могу попробовать переписать, только не уверен что это (переписывание на яве) кому-нибудь надо.

Похоже теперь latest и tested окончательно стали несовместимы… Вот, обновил:
http://josm-plugins.googlecode.com/files/fuzzer-latest.jar

Если переписывать, то можно немножко хотелок? :wink:

  1. выполнять трассировку по текущему слою WMS, не качая тайлы заново с сервера (если, конечно, API дает доступ к текущим тайлам)
  2. визуально настраивать параметры трассировки
  3. иметь несколько предопределенных цветов (лес хвойный/лиственный, вода, город/промзона и т.п.)
  4. по мере отрисовки вместо цвета начальной точки использовать усредненный цвет по всему полигону

P.S. у меня модуль fuzzer тоже не может обновиться в _latest версии JOSM

Кстати да, wmsplugin предоставляет такой API.

Автообновление вообще не работает, поскольку его сейчас нет в общем списке модулей. Если перепишем на java, можно будет свободно его туда добавлять. Хотя, в принципе можно обойтись и без переписывания: вставить fuzzyselect.py в ресурсы модуля и автоматически оттуда вытаскивать.

Дак я так понял fuzzer’у все равно какой скрипт запускать и если есть разные скрипты то как их обновлять?

wmsplugin не стесняется требовать от юзеров ручной установки webkit-image. А мы чем хуже?

Можно-ли использовать fuzzer для wms с http://labs.metacarta.com/rectifier/? Если да, то как?

Можно. Основная часть, которую надо поправить - a= в скрипте, конструирующая url для wms.

Спасибо, но a = "http://labs.metacarta.com/rectifier/wms.cgi?id=3812 не прокатывает.

Установил, настроил скрипт так:

Пишет: “Child script returned wrong data”. Скрипту нужна на выходе именно картинка?

Естественно. PIL не умеет рендерить HTML, и, в общем-то, не должен :slight_smile:

Скрипту нужен линк на WMS.

Понятно. Наверное, впишу туда вызов gnome-web-photo.

Думаю, tWMS был сделан как раз для этого :slight_smile:

:frowning:
Или конкретно туплю, или одно из двух…
вроде, всё загрузил и установил (Питон, модуль для него же, fuzzer и fuzzyselect.py)
JOSM 3329, Shft-K вызывается, возникает ошибка : “Child script have returned invalid data”
ЗЫ В скрипте fuzzyselect.py не нашел где адрес WMS прописать…
(как только fuzzer появился, устанавливал, всё работало, а с новыми версиями не идёт…)
Как говориться, Help… :frowning:

Pavlo, текущее руководство - на вики:

http://wiki.openstreetmap.org/wiki/JOSM/Plugins/Fuzzer

Проверь, поставил ли ты все зависимости, оттуда ли взял fuzzyselect.py и сопутствующие файлы, и что пишет JOSM в консоль при вызове shift-K.

У меня всё прекрасно работает… В консоли что пишет?

все файлы с WIKI, всё вроде, установил нормально (но , видимо, не всё…)
В консоли после Shift-K и ошибки в JOSMе пишет:

python ./fuzzyselect.py 61.18834493952942 55.35873893503078 262318.72570721887
Traceback (most recent call last):
File “./fuzzyselect.py”, line 10, in
from canvas import WmsCanvas
File “C:\Program Files\JOSM\josmprefs\plugins\fuzzer\canvas.py”, line 17, in <
module>
import projections
File “C:\Program Files\JOSM\josmprefs\plugins\fuzzer\projections.py”, line 18,
in
import pyproj
ImportError: No module named pyproj
org.openstreetmap.josm.io.IllegalDataException: ╤ЄЁюър 1 ёЄюысхЎ 1: Premature en
d of file.
at org.openstreetmap.josm.io.OsmReader.parseDataSet(OsmReader.java:592)
at fuzzer.FuzzySelectAction$2.run(FuzzySelectAction.java:126)
at java.lang.Thread.run(Unknown Source)
Caused by: org.xml.sax.SAXParseException: Premature end of file.
at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAX
ParseException(Unknown Source)
at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalErro
r(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(
Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(U
nknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$Prolog
Driver.next(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(U
nknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImp
l.scanDocument(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(U
nknown Source)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(U
nknown Source)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown So
urce)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Un
known Source)
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.p
arse(Unknown Source)
at javax.xml.parsers.SAXParser.parse(Unknown Source)
at org.openstreetmap.josm.io.OsmReader.parseDataSet(OsmReader.java:573)
… 2 more

единственное, что понял, какой-то “pyproj” ищет…
(из иностранных языков проходил в школе немецкий, да и тот проходил мимо :slight_smile: )
ЗЫ карты Yahoo, космоснимки, LandSat, результат один…