угу, приложение, под вин правда вот только. имеет большую базу подогнанных подложек, плюс можно потестить новые.
как привязать в браузере тебе уже подсказали.
Впервые столкнулся с ситуацией, на сайте maps.rosreestr убрали данные по участкам и их границам у целого города. Вообще участки убрали. Осталась только граница города. Что бы это значило?
А что за город?
Не работает ни одна подложка с границами (пробовал и варианты с Вики и варианты с форума).
Выдает ошибку: “не удается разобрать список слоев WMS” или “Невозможно получить список слоев WMS”
JOSM 6950
Есть идеи?
Пробовал эти ссылки:
http://citrin.ru/cadastre?FORMAT=image/jpeg&VERSION=1.1.1&SERVICE=WMS&REQUEST=GetMap&LAYERS=&STYLES=&SRS={proj}&WIDTH={width}&HEIGHT={height}&BBOX={bbox}
http://osm.dezhin.net/josm-wms/cadastre/?SRS={proj}&WIDTH={width}&height={height}&BBOX={bbox}
http://citrin.ru/cadastre?SRS={proj}&WIDTH={width}&height={height}&BBOX={bbox}
http://maps.rosreestr.ru/arcgis/services/CadastreNew/CadastreWMS/MapServer/WMSServer?FORMAT=image/png32&VERSION=1.1.1&SERVICE=WMS&REQUEST=GetMap&LAYERS=22,21,20,19,18,16,15,14,13,11,10,9,7,6,4,3,2,1&STYLES=&TRANSPARENT=TRUE&SRS={proj}&WIDTH={width}&HEIGHT={height}&BBOX={bbox}
http://textual.ru/cadastre.php?width={width}&height={height}&bbox={bbox}
http://maps.rosreestr.ru/arcgis/services/Cadastre/CadastreWMS/MapServer/WMSServer?FORMAT=image/png&VERSION=1.1.1&SERVICE=WMS&TRANSPARENT=TRUE&REQUEST=GetMap&LAYERS=16,15,14,13,11,10,9,22,21,20,19,18,7,6&STYLES=,&
http://maps.rosreestr.ru/arcgis/services/Cadastre/CadastreWMS/MapServer/WMSServer?FORMAT=image/png&VERSION=1.1.1&SERVICE=WMS&TRANSPARENT=TRUE&REQUEST=GetMap&LAYERS=22,21,20,19,18,16,15,14,13,11,10,9,7,6,4,3,2,1&STYLES=,&
http://maps.rosreestr.ru/ArcGIS/rest/services/CadastreNew/Cadastre/MapServer/export?bbox={bbox}&bboxSR=&layers=22,21,20,19,18,16,15,14,13,11,10,9,7,6,4,3,2,1&layerdefs=&size={width},{height}&imageSR=&format=png&transparent=true&dpi=&time=&layerTimeOptions=&f=image
Тоже помучился. Вроде, надо установить галку “Хранить лишь граничные точки WMS…”, а потом снова убрать, тогда станет доступной кнопка “ОК”. Нажать её, появится новая строчка, где можно уже вручную записать что хочешь.
У меня работает:
wms:http://citrin.ru/cadastre?FORMAT=image/jpeg&VERSION=1.1.1&SERVICE=WMS&REQUEST=GetMap&LAYERS=&STYLES=&SRS={proj}&WIDTH={width}&HEIGHT={height}&BBOX={bbox}
Вот так подключил кадастр
wms:http://maps.rosreestr.ru/arcgis/rest/services/Cadastre/CadastreSelected/MapServer/export?bbox={bbox}&bboxSR=&layers=22,21,20,19,18,16,15,14,13,11,10,9,7,6,4,3,2,1&layerdefs=&size={width},{height}&imageSR=&format=png&transparent=true&dpi=&time=&layerTimeOptions=&f=image
В модуле Addresses2 пришлось тоже исправить запросы.
Если не сложно, мона файлик?
Модуль Addres2 расположен %AppData%/Roaming/JOSM/plugins/CommandLine/address2
#!/usr/bin/env python
# -*- coding: utf-8 -*-
#
# address.py {Center}
#
# Copyright 2012 Hind <foxhind@gmail.com>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
# MA 02110-1301, USA.
import sys
import math
import projections
import urllib, urllib2, cookielib, Cookie
import json
from OsmData import OsmData, LON, LAT, TAG
if sys.version_info[0] < 3:
reload(sys)
sys.setdefaultencoding("utf-8") # a hack to support UTF-8
class client:
def __init__(self, proxy=None, user_agent='Mozilla/5.0 (X11; U; Linux i686; ru; rv:1.9.2.3) Gecko/20100423 Ubuntu/10.04 (lucid) Firefox/3.6.3'):
self.redirect_handler = urllib2.HTTPRedirectHandler()
self.http_handler = urllib2.HTTPHandler()
self.opener = urllib2.build_opener(self.http_handler, self.redirect_handler)
if proxy:
self.proxy_handler = urllib2.ProxyHandler(proxy)
self.opener.add_handler(self.proxy_handler)
self.opener.addheaders = [('User-agent', user_agent)]
urllib2.install_opener(self.opener)
def request(self, url, params={}, timeout=5):
if params:
params = urllib.urlencode(params)
html = urllib2.urlopen(url, params, timeout)
else:
html = urllib2.urlopen(url)
return html.read()
def main():
if len(sys.argv) != 2:
return 0
coords = (sys.argv[1].split(','))
lon = float(coords[0])
lat = float(coords[1])
coords_m = projections.from4326((lon,lat), "EPSG:3857")
tData = OsmData()
httpc = client()
#text = httpc.request('http://maps.rosreestr.ru/arcgis/rest/services/Cadastre/CadastreSelected/MapServer/identify?f=json&geometryType=esriGeometryPoint&geometry='+str(coords_m[0])+','+str(coords_m[1])+'&tolerance=0&mapExtent='+str(coords_m[0]-500.0)+','+str(coords_m[1]-500.0)+','+str(coords_m[0]+500.0)+','+str(coords_m[1]+500.0)+'&imageDisplay=1000,1000,96&returnGeometry=false')
text = httpc.request('http://maps.rosreestr.ru/arcgis/rest/services/Cadastre/CadastreSelected/MapServer/1/query?text=&geometry='+str(coords_m[0])+','+str(coords_m[1])+'&geometryType=esriGeometryPoint&inSR=&spatialRel=esriSpatialRelIntersects&relationParam=&objectIds=&where=&time=&returnCountOnly=false&returnIdsOnly=false&returnGeometry=false&maxAllowableOffset=&outSR=&outFields=*&f=pjson')
data = json.loads(text)
if 'features' in data:
ids = []
for result in data['features']:
#if len(result['value']) >= 11:
try:
ids.append(result['attributes']['PARCEL_ID']);
except KeyError:
continue
if len(ids) > 0:
addresses = []
for id in ids:
#text = httpc.request('http://maps.rosreestr.ru/arcgis/rest/services/Cadastre/CadastreInfo/MapServer/2/query?f=json&where=PARCELID%20IN%20(%27'+id+'%27)&returnGeometry=false&spatialRel=esriSpatialRelIntersects&outFields=FULLADDRESS,CATEGORY,UTILIZATION_BYDOCUMENT');
text = httpc.request('http://maps.rosreestr.ru/arcgis/rest/services/Cadastre/CadastreSelected/MapServer/exts/GKNServiceExtension/online/parcel/find?cadNums=%5B%27'+ "%3A".join(id.split(":"))+'%27%5D&f=pjson');
data = json.loads(text)
if 'features' in data:
for feature in data['features']:
address = {}
try:
s = feature['attributes']['OBJECT_ADDRESS'].split(',')
address['addr:housenumber'] = s.pop().strip()
address['addr:street'] = s.pop().strip()
address['addr:full'] = feature['attributes']['OBJECT_ADDRESS']
address['fixme'] = 'yes'
address['source'] = 'rosreestr'
except KeyError:
continue
#try:
# address['category'] = feature['attributes']['CATEGORY']
# address['utilization'] = feature['attributes']['UTILIZATION_BYDOCUMENT']
#except KeyError:
# pass
addresses.append(address)
elif 'error' in data:
tData.addcomment(data['error']['message'])
continue
else:
tData.addcomment('Unknown error.')
continue
count = len(addresses)
if count == 1:
nodeid = tData.addnode()
tData.nodes[nodeid][LON] = lon
tData.nodes[nodeid][LAT] = lat
tData.nodes[nodeid][TAG] = addresses[0]
comment = addresses[0]['addr:street'] + ', ' + addresses[0]['addr:housenumber']
#if addresses[0]['utilization'] <> None:
# comment += ' - ' + addresses[0]['utilization']
tData.addcomment(comment)
else:
for i in range(count):
angle = 2*math.pi*i/count
x = coords_m[0] + 10.0 * math.cos(angle)
y = coords_m[1] + 10.0 * math.sin(angle)
node = projections.to4326((x, y), "EPSG:3857")
nodeid = tData.addnode()
tData.nodes[nodeid][LON] = node[0]
tData.nodes[nodeid][LAT] = node[1]
tData.nodes[nodeid][TAG] = addresses[i]
comment = addresses[i]['addr:street'] + ', ' + addresses[i]['addr:housenumber']
#if addresses[i]['utilization'] <> None:
# comment += ' - ' + addresses[i]['utilization']
tData.addcomment(comment)
else:
tData.addcomment('Not found.')
elif 'error' in data:
tData.addcomment(data['error']['message'])
else:
tData.addcomment('Unknown error.')
tData.write(sys.stdout)
return 0
if __name__ == '__main__':
main()
Не хочет чего-то
Аналогично, падает по таймауту.
Заметил, что в рабочее время кадастр частенько ведет себя подобным образом, лучше вечером с ним работать.
Кадастр не грузится даже на сайте росреестра, о чём тут говорить. Что-то они всё серьёзно поломали - РР не грузится или кошмарно тормозит, на сайте 3-й день висит плашка о технических работах, а в поиске теперь вместо области и района найденных на пишется “субъект РФ”. Круто, да - 50 “субъектов РФ” с одним названием - сам ищи нужный.
Неудачно Крым прикрутили?
Этот кусок кода в нижнем регистре (с маленькими буквами)
wms:http://maps.rosreestr.ru/arcgis/rest/services/
Перепроверил ссылку
wms:http://maps.rosreestr.ru/arcgis/rest/services/Cadastre/CadastreSelected/MapServer/export?bbox={bbox}&bboxSR=&layers=22,21,20,19,18,16,15,14,13,11,10,9,7,6,4,3,2,1&layerdefs=&size={width},{height}&imageSR=&format=png&transparent=true&dpi=&time=&layerTimeOptions=&f=image
всё подключается, вот скиншот с экрана http://files.mail.ru/507D15135A0741EB88414E6FDBA5FCBE?t=1
Товарищи!
Что-то я и так и эдак пробую - не получается кадастр оживить на leaflet-сайте.
Раньше было вот так:
// Кадастр
osm.registerLayer(
'kadastre',
new L.TileLayer.WMS('http://maps.rosreestr.ru/arcgis/services/CadastreNew/CadastreWMS/MapServer/WMSServer?', {
layers: '1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20',
transparent: 'true',
//crs: 'EPSG:3857',
version: '1.3.0',
opacity: 0.7,
format: 'png',
attribution: "Данные <a href='http://rosreestr.ru'>Росреестр</a>"}),
'Кадастр',
's',
false
);
Сейчас пишут, что:
менял и так и эдак, ставил
http://maps.rosreestr.ru/arcgis/rest/services/Cadastre/Cadastre/MapServer/17
Экспериментируя со ссылкой http://maps.rosreestr.ru/arcgis/rest/services/Cadastre.
Что-то я определённо не понимаю, подскажите, пожалуйста, как именно нужно изменить мне ссылку на кадастр в описании слоя leaflet-сайта.
Плагин заработал молча и стразу. Ура!
Подложка:
а) Просто заменить адрес — не мычит не телится.
б) + WMS адрес в пункт 4., название, ок — страшный красный плитка.
в) + WMS адрес в пункт 1., чекбок пункта 2., название, ок — “Не возможно разобрать список слоёв WMS”; исправляем wms_endpoint:http: на wms:http: в адресе — не мычит не телится.
Вопрос, куда и как добавлять этот адрес?:
wms:http://maps.rosreestr.ru/arcgis/rest/services/Cadastre/CadastreSelected/MapServer/export?bbox={bbox}&bboxSR=&layers=22,21,20,19,18,16,15,14,13,11,10,9,7,6,4,3,2,1&layerdefs=&size={width},{height}&imageSR=&format=png&transparent=true&dpi=&time=&layerTimeOptions=&f=image
может кеш JOSM почистить?
DEL