kopia lustrzana https://github.com/hholzgra/ocitysmap
work around ProjTransform crash with older Proj library
See also python-mapnik issue #273 https://github.com/mapnik/python-mapnik/issues/273dev-debian-12
rodzic
c72bd439f8
commit
949a226180
|
@ -33,6 +33,11 @@ assert mapnik.mapnik_version() >= 300000, \
|
|||
"Mapnik module version %s is too old, see ocitysmap's INSTALL " \
|
||||
"for more details." % mapnik.mapnik_version_string()
|
||||
|
||||
import logging
|
||||
|
||||
LOG = logging.getLogger('ocitysmap')
|
||||
|
||||
|
||||
EARTH_RADIUS = 6370986 # meters
|
||||
|
||||
def dd2dms(value):
|
||||
|
@ -44,20 +49,21 @@ def dd2dms(value):
|
|||
|
||||
return (degrees, minutes, seconds)
|
||||
|
||||
try:
|
||||
# new Proj library versions (e.g. v9 on Debian 12)
|
||||
_proj_wgs84 = mapnik.Projection("epsg:4326")
|
||||
_proj_google = mapnik.Projection("epsg:3857")
|
||||
except:
|
||||
# old Proj libraray versions (e.g. v7 on Debian 11)
|
||||
_proj_wgs84 = mapnik.Projection("+init=epsg:4326")
|
||||
_proj_google = mapnik.Projection( "+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 " \
|
||||
"+lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m " \
|
||||
"+nadgrids=@null +no_defs +over")
|
||||
|
||||
|
||||
def get_proj_transformation():
|
||||
try:
|
||||
# new Proj library versions (e.g. v9 on Debian 12)
|
||||
proj_wgs84 = mapnik.Projection("epsg:4326")
|
||||
proj_google = mapnik.Projection("epsg:3857")
|
||||
except:
|
||||
# old Proj libraray versions (e.g. v7 on Debian 11)
|
||||
proj_wgs84 = mapnik.Projection("+init=epsg:4326")
|
||||
proj_google = mapnik.Projection( "+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 " \
|
||||
"+lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m " \
|
||||
"+nadgrids=@null +no_defs +over")
|
||||
|
||||
return mapnik.ProjTransform(proj_wgs84, proj_google)
|
||||
|
||||
return mapnik.ProjTransform(_proj_wgs84, _proj_google)
|
||||
|
||||
class Point:
|
||||
def __init__(self, lat, long_):
|
||||
self._lat, self._long = float(lat), float(long_)
|
||||
|
|
|
@ -1,5 +1,8 @@
|
|||
from gettext import gettext
|
||||
|
||||
import logging
|
||||
LOG = logging.getLogger('ocitysmap')
|
||||
|
||||
import ocitysmap
|
||||
from ocitysmap.layoutlib.abstract_renderer import Renderer
|
||||
from ocitysmap.layoutlib.single_page_renderers import SinglePageRenderer
|
||||
|
|
Ładowanie…
Reference in New Issue