Closed knutole closed 8 years ago
Red lines are slippy tile boundaries.
With $TILESIZE
of "64x64". Interesting how the patterns are different.
@strk Whenever you have a moment: I can't seem to find the build changes for mapnik "preunion_raster" branch. Should I just download from https://github.com/strk/mapnik/tree/preunion_rasters with download-mapnik.sh
script? (Did you change it back after building?) Want to build on my own server.
Nevermind, found the mapnik-fork
branch.
This morning I'd look for a proper fix for mapnik, if there isn't any other urgency
@strk That's great, thanks. More moving today, unfortunately, so will be a bit offline.
Forcing raster alignment with ST_Resample seems to fix the visible tile boundary for me.
The upstream PR is here: https://github.com/mapnik/mapnik/pull/3348
It only works with "prescale_rasters" is on, which we want on anyway..
The mapnik-fork
branch of dockers was updated to download mapnik from the pgraster-resample
branch of my fork and its now building on mx
and on my machine (where it wasn't yet tested with multiple raster kind).
Sorry to say I haven't been able to get this to work today. Have successfully built gis
and pile
images with your strk/mapnik
fork (with ST_Resample). Also using pile
with clip_raster and prescale_raster.
I'm indeed seeing ST_Resize
in logs, however. Could this be because node-mapnik
is using a different mapnik build?
pile_1 | PPSTIOGSZETTINGS! { user: 'systemapic',
pile_1 | password: 'docker',
pile_1 | host: 'postgis',
pile_1 | srid: 3857,
pile_1 | dbname: 'vkztdvcqkm',
pile_1 | extent: undefined,
pile_1 | geometry_field: 'rast',
pile_1 | asynchronous_request: true,
pile_1 | max_async_connection: 10,
pile_1 | type: 'pgraster',
pile_1 | clip_rasters: 'true',
pile_1 | prescale_rasters: 'true',
pile_1 | table: 'file_ywojcllfzvoswyyktqfq' }
postgis_1 | 2016-03-10 14:09:59 UTC [11-229] DEBUG: forked new backend, pid=188 socket=9
postgis_1 | 2016-03-10 14:09:59 UTC [11-230] DEBUG: server process (PID 188) exited with exit code 0
postgis_1 | 2016-03-10 14:09:59 UTC [11-231] DEBUG: forked new backend, pid=189 socket=9
postgis_1 | 2016-03-10 14:09:59 UTC [unknown] [189-1] systemapic@vkztdvcqkm DEBUG: parse <unnamed>: SELECT ST_AsBinary(ST_Resize(ST_Clip("rast", ST_Expand(ST_SetSRID('BOX3D(1056665.479014276 8414188.073632199,1213208.512942318 8570731.107560243)'::box3d, 3857), greatest(abs(ST_ScaleX("rast")), abs(ST_ScaleY("rast"))))), least(abs(ST_ScaleX("rast"))::float8/305.748, 1.0), least(abs(ST_ScaleY("rast"))::float8/305.748, 1.0))) AS geom FROM file_ywojcllfzvoswyyktqfq WHERE "rast" && ST_SetSRID('BOX3D(1056665.479014276 8414188.073632199,1213208.512942318 8570731.107560243)'::box3d, 3857)
postgis_1 | 2016-03-10 14:09:59 UTC [unknown] [189-2] systemapic@vkztdvcqkm DEBUG: bind <unnamed> to <unnamed>
postgis_1 | 2016-03-10 14:09:59 UTC [11-232] DEBUG: server process (PID 189) exited with exit code 0
pile_1 | rendered tile in 65 ms
Unfortuneately, building node-mapnik with npm install mapnik --build-from-source
also fails:
root@4777fe979ba2 /s/dev# npm install mapnik --build-from-source
> mapnik@3.5.2 install /systemapic/dev/node_modules/mapnik
> node-pre-gyp install --fallback-to-build
make: Entering directory `/systemapic/dev/node_modules/mapnik/build'
ACTION binding_gyp_make_vector_tile_target_generate_setting Release/obj/gen/mapnik_settings.js
COPY /systemapic/dev/node_modules/mapnik/lib/binding/node-v11-linux-x64/mapnik_settings.js
TOUCH Release/obj.target/make_vector_tile.stamp
CXX(target) Release/obj.target/mapnik/src/mapnik_logger.o
CXX(target) Release/obj.target/mapnik/src/node_mapnik.o
In file included from ../node_modules/mapnik-vector-tile/src/vector_tile_tile.hpp:8:0,
from ../node_modules/mapnik-vector-tile/src/vector_tile_merc_tile.hpp:5,
from ../src/mapnik_vector_tile.hpp:11,
from ../src/node_mapnik.cpp:5:
../node_modules/protozero/include/protozero/pbf_reader.hpp: In constructor 'protozero::pbf_reader::pbf_reader(const char*, std::size_t)':
../node_modules/protozero/include/protozero/pbf_reader.hpp:841:62: warning: declaration of 'length' shadows a member of 'this' [-Wshadow]
pbf_reader::pbf_reader(const char *data, std::size_t length) noexcept
^
In file included from ../node_modules/mapnik-vector-tile/src/vector_tile_merc_tile.hpp:5:0,
from ../src/mapnik_vector_tile.hpp:11,
from ../src/node_mapnik.cpp:5:
../node_modules/mapnik-vector-tile/src/vector_tile_tile.hpp: In constructor 'mapnik::vector_tile_impl::tile::tile(const mapnik::box2d<double>&, uint32_t, int32_t)':
../node_modules/mapnik-vector-tile/src/vector_tile_tile.hpp:43:9: warning: declaration of 'buffer_size' shadows a member of 'this' [-Wshadow]
: buffer_(),
^
../node_modules/mapnik-vector-tile/src/vector_tile_tile.hpp:43:9: warning: declaration of 'tile_size' shadows a member of 'this' [-Wshadow]
../node_modules/mapnik-vector-tile/src/vector_tile_tile.hpp:43:9: warning: declaration of 'extent' shadows a member of 'this' [-Wshadow]
In file included from ../node_modules/mapnik-vector-tile/src/vector_tile_tile.ipp:3:0,
from ../node_modules/mapnik-vector-tile/src/vector_tile_tile.hpp:208,
from ../node_modules/mapnik-vector-tile/src/vector_tile_merc_tile.hpp:5,
from ../src/mapnik_vector_tile.hpp:11,
from ../src/node_mapnik.cpp:5:
../node_modules/mapnik-vector-tile/src/vector_tile_layer.hpp: In member function 'uint32_t mapnik::vector_tile_impl::tile_layer::calc_extent(uint32_t)':
../node_modules/mapnik-vector-tile/src/vector_tile_layer.hpp:139:5: warning: declaration of 'layer_extent' shadows a member of 'this' [-Wshadow]
{
^
In file included from ../node_modules/mapnik-vector-tile/src/vector_tile_tile.hpp:208:0,
from ../node_modules/mapnik-vector-tile/src/vector_tile_merc_tile.hpp:5,
from ../src/mapnik_vector_tile.hpp:11,
from ../src/node_mapnik.cpp:5:
../node_modules/mapnik-vector-tile/src/vector_tile_tile.ipp: In member function 'bool mapnik::vector_tile_impl::tile::append_layer_buffer(const char*, std::size_t, const string&)':
../node_modules/mapnik-vector-tile/src/vector_tile_tile.ipp:51:113: warning: declaration of 'size' shadows a member of 'this' [-Wshadow]
MAPNIK_VECTOR_INLINE bool tile::append_layer_buffer(const char * data, std::size_t size, std::string const& name)
^
../node_modules/mapnik-vector-tile/src/vector_tile_tile.ipp:51:113: warning: declaration of 'data' shadows a member of 'this' [-Wshadow]
In file included from ../src/mapnik_vector_tile.hpp:11:0,
from ../src/node_mapnik.cpp:5:
../node_modules/mapnik-vector-tile/src/vector_tile_merc_tile.hpp: In constructor 'mapnik::vector_tile_impl::merc_tile::merc_tile(uint32_t, uint32_t, uint32_t, uint32_t, int32_t)':
../node_modules/mapnik-vector-tile/src/vector_tile_merc_tile.hpp:26:9: warning: declaration of 'buffer_size' shadows a member of 'this' [-Wshadow]
: tile(merc_extent(tile_size, x, y, z), tile_size, buffer_size),
^
../node_modules/mapnik-vector-tile/src/vector_tile_merc_tile.hpp:26:9: warning: declaration of 'tile_size' shadows a member of 'this' [-Wshadow]
../node_modules/mapnik-vector-tile/src/vector_tile_merc_tile.hpp:26:9: warning: declaration of 'z' shadows a member of 'this' [-Wshadow]
../node_modules/mapnik-vector-tile/src/vector_tile_merc_tile.hpp:26:9: warning: declaration of 'y' shadows a member of 'this' [-Wshadow]
../node_modules/mapnik-vector-tile/src/vector_tile_merc_tile.hpp:26:9: warning: declaration of 'x' shadows a member of 'this' [-Wshadow]
../node_modules/mapnik-vector-tile/src/vector_tile_merc_tile.hpp: In member function 'void mapnik::vector_tile_impl::merc_tile::x(uint32_t)':
../node_modules/mapnik-vector-tile/src/vector_tile_merc_tile.hpp:48:5: warning: declaration of 'x' shadows a member of 'this' [-Wshadow]
{
^
../node_modules/mapnik-vector-tile/src/vector_tile_merc_tile.hpp: In member function 'void mapnik::vector_tile_impl::merc_tile::y(uint32_t)':
../node_modules/mapnik-vector-tile/src/vector_tile_merc_tile.hpp:59:5: warning: declaration of 'y' shadows a member of 'this' [-Wshadow]
{
^
../node_modules/mapnik-vector-tile/src/vector_tile_merc_tile.hpp: In member function 'void mapnik::vector_tile_impl::merc_tile::z(uint32_t)':
../node_modules/mapnik-vector-tile/src/vector_tile_merc_tile.hpp:70:5: warning: declaration of 'z' shadows a member of 'this' [-Wshadow]
{
^
CXX(target) Release/obj.target/mapnik/src/blend.o
CXX(target) Release/obj.target/mapnik/src/mapnik_map.o
In file included from ../node_modules/mapnik-vector-tile/src/vector_tile_tile.hpp:8:0,
from ../node_modules/mapnik-vector-tile/src/vector_tile_merc_tile.hpp:5,
from ../src/mapnik_vector_tile.hpp:11,
from ../src/mapnik_map.cpp:11:
../node_modules/protozero/include/protozero/pbf_reader.hpp: In constructor 'protozero::pbf_reader::pbf_reader(const char*, std::size_t)':
../node_modules/protozero/include/protozero/pbf_reader.hpp:841:62: warning: declaration of 'length' shadows a member of 'this' [-Wshadow]
pbf_reader::pbf_reader(const char *data, std::size_t length) noexcept
^
In file included from ../node_modules/mapnik-vector-tile/src/vector_tile_merc_tile.hpp:5:0,
from ../src/mapnik_vector_tile.hpp:11,
from ../src/mapnik_map.cpp:11:
../node_modules/mapnik-vector-tile/src/vector_tile_tile.hpp: In constructor 'mapnik::vector_tile_impl::tile::tile(const mapnik::box2d<double>&, uint32_t, int32_t)':
../node_modules/mapnik-vector-tile/src/vector_tile_tile.hpp:43:9: warning: declaration of 'buffer_size' shadows a member of 'this' [-Wshadow]
: buffer_(),
^
../node_modules/mapnik-vector-tile/src/vector_tile_tile.hpp:43:9: warning: declaration of 'tile_size' shadows a member of 'this' [-Wshadow]
../node_modules/mapnik-vector-tile/src/vector_tile_tile.hpp:43:9: warning: declaration of 'extent' shadows a member of 'this' [-Wshadow]
In file included from ../node_modules/mapnik-vector-tile/src/vector_tile_tile.ipp:3:0,
from ../node_modules/mapnik-vector-tile/src/vector_tile_tile.hpp:208,
from ../node_modules/mapnik-vector-tile/src/vector_tile_merc_tile.hpp:5,
from ../src/mapnik_vector_tile.hpp:11,
from ../src/mapnik_map.cpp:11:
../node_modules/mapnik-vector-tile/src/vector_tile_layer.hpp: In member function 'uint32_t mapnik::vector_tile_impl::tile_layer::calc_extent(uint32_t)':
../node_modules/mapnik-vector-tile/src/vector_tile_layer.hpp:139:5: warning: declaration of 'layer_extent' shadows a member of 'this' [-Wshadow]
{
^
In file included from ../node_modules/mapnik-vector-tile/src/vector_tile_tile.hpp:208:0,
from ../node_modules/mapnik-vector-tile/src/vector_tile_merc_tile.hpp:5,
from ../src/mapnik_vector_tile.hpp:11,
from ../src/mapnik_map.cpp:11:
../node_modules/mapnik-vector-tile/src/vector_tile_tile.ipp: In member function 'bool mapnik::vector_tile_impl::tile::append_layer_buffer(const char*, std::size_t, const string&)':
../node_modules/mapnik-vector-tile/src/vector_tile_tile.ipp:51:113: warning: declaration of 'size' shadows a member of 'this' [-Wshadow]
MAPNIK_VECTOR_INLINE bool tile::append_layer_buffer(const char * data, std::size_t size, std::string const& name)
^
../node_modules/mapnik-vector-tile/src/vector_tile_tile.ipp:51:113: warning: declaration of 'data' shadows a member of 'this' [-Wshadow]
In file included from ../src/mapnik_vector_tile.hpp:11:0,
from ../src/mapnik_map.cpp:11:
../node_modules/mapnik-vector-tile/src/vector_tile_merc_tile.hpp: In constructor 'mapnik::vector_tile_impl::merc_tile::merc_tile(uint32_t, uint32_t, uint32_t, uint32_t, int32_t)':
../node_modules/mapnik-vector-tile/src/vector_tile_merc_tile.hpp:26:9: warning: declaration of 'buffer_size' shadows a member of 'this' [-Wshadow]
: tile(merc_extent(tile_size, x, y, z), tile_size, buffer_size),
^
../node_modules/mapnik-vector-tile/src/vector_tile_merc_tile.hpp:26:9: warning: declaration of 'tile_size' shadows a member of 'this' [-Wshadow]
../node_modules/mapnik-vector-tile/src/vector_tile_merc_tile.hpp:26:9: warning: declaration of 'z' shadows a member of 'this' [-Wshadow]
../node_modules/mapnik-vector-tile/src/vector_tile_merc_tile.hpp:26:9: warning: declaration of 'y' shadows a member of 'this' [-Wshadow]
../node_modules/mapnik-vector-tile/src/vector_tile_merc_tile.hpp:26:9: warning: declaration of 'x' shadows a member of 'this' [-Wshadow]
../node_modules/mapnik-vector-tile/src/vector_tile_merc_tile.hpp: In member function 'void mapnik::vector_tile_impl::merc_tile::x(uint32_t)':
../node_modules/mapnik-vector-tile/src/vector_tile_merc_tile.hpp:48:5: warning: declaration of 'x' shadows a member of 'this' [-Wshadow]
{
^
../node_modules/mapnik-vector-tile/src/vector_tile_merc_tile.hpp: In member function 'void mapnik::vector_tile_impl::merc_tile::y(uint32_t)':
../node_modules/mapnik-vector-tile/src/vector_tile_merc_tile.hpp:59:5: warning: declaration of 'y' shadows a member of 'this' [-Wshadow]
{
^
../node_modules/mapnik-vector-tile/src/vector_tile_merc_tile.hpp: In member function 'void mapnik::vector_tile_impl::merc_tile::z(uint32_t)':
../node_modules/mapnik-vector-tile/src/vector_tile_merc_tile.hpp:70:5: warning: declaration of 'z' shadows a member of 'this' [-Wshadow]
{
^
In file included from ../node_modules/mapnik-vector-tile/src/vector_tile_raster_clipper.ipp:12:0,
from ../node_modules/mapnik-vector-tile/src/vector_tile_raster_clipper.hpp:99,
from ../node_modules/mapnik-vector-tile/src/vector_tile_processor.ipp:6,
from ../node_modules/mapnik-vector-tile/src/vector_tile_processor.hpp:202,
from ../src/mapnik_map.cpp:15:
/usr/local/include/mapnik/agg/agg_rendering_buffer.h: In constructor 'agg::row_accessor<T>::row_accessor(T*, unsigned int, unsigned int, int)':
/usr/local/include/mapnik/agg/agg_rendering_buffer.h:45:75: warning: declaration of 'stride' shadows a member of 'this' [-Wshadow]
row_accessor(T* buf, unsigned width, unsigned height, int stride) :
^
/usr/local/include/mapnik/agg/agg_rendering_buffer.h:45:75: warning: declaration of 'height' shadows a member of 'this' [-Wshadow]
/usr/local/include/mapnik/agg/agg_rendering_buffer.h:45:75: warning: declaration of 'width' shadows a member of 'this' [-Wshadow]
/usr/local/include/mapnik/agg/agg_rendering_buffer.h:45:75: warning: declaration of 'buf' shadows a member of 'this' [-Wshadow]
/usr/local/include/mapnik/agg/agg_rendering_buffer.h: In member function 'void agg::row_accessor<T>::attach(T*, unsigned int, unsigned int, int)':
/usr/local/include/mapnik/agg/agg_rendering_buffer.h:58:9: warning: declaration of 'stride' shadows a member of 'this' [-Wshadow]
{
^
/usr/local/include/mapnik/agg/agg_rendering_buffer.h:58:9: warning: declaration of 'height' shadows a member of 'this' [-Wshadow]
/usr/local/include/mapnik/agg/agg_rendering_buffer.h:58:9: warning: declaration of 'width' shadows a member of 'this' [-Wshadow]
/usr/local/include/mapnik/agg/agg_rendering_buffer.h:58:9: warning: declaration of 'buf' shadows a member of 'this' [-Wshadow]
/usr/local/include/mapnik/agg/agg_rendering_buffer.h: In member function 'void agg::row_accessor<T>::clear(T)':
/usr/local/include/mapnik/agg/agg_rendering_buffer.h:117:22: warning: declaration of 'stride' shadows a member of 'this' [-Wshadow]
unsigned stride = stride_abs();
^
/usr/local/include/mapnik/agg/agg_rendering_buffer.h: In constructor 'agg::row_ptr_cache<T>::row_ptr_cache(T*, unsigned int, unsigned int, int)':
/usr/local/include/mapnik/agg/agg_rendering_buffer.h:158:76: warning: declaration of 'stride' shadows a member of 'this' [-Wshadow]
row_ptr_cache(T* buf, unsigned width, unsigned height, int stride) :
^
/usr/local/include/mapnik/agg/agg_rendering_buffer.h:158:76: warning: declaration of 'height' shadows a member of 'this' [-Wshadow]
/usr/local/include/mapnik/agg/agg_rendering_buffer.h:158:76: warning: declaration of 'width' shadows a member of 'this' [-Wshadow]
/usr/local/include/mapnik/agg/agg_rendering_buffer.h:158:76: warning: declaration of 'buf' shadows a member of 'this' [-Wshadow]
/usr/local/include/mapnik/agg/agg_rendering_buffer.h: In member function 'void agg::row_ptr_cache<T>::attach(T*, unsigned int, unsigned int, int)':
/usr/local/include/mapnik/agg/agg_rendering_buffer.h:170:9: warning: declaration of 'stride' shadows a member of 'this' [-Wshadow]
{
^
/usr/local/include/mapnik/agg/agg_rendering_buffer.h:170:9: warning: declaration of 'height' shadows a member of 'this' [-Wshadow]
/usr/local/include/mapnik/agg/agg_rendering_buffer.h:170:9: warning: declaration of 'width' shadows a member of 'this' [-Wshadow]
/usr/local/include/mapnik/agg/agg_rendering_buffer.h:170:9: warning: declaration of 'buf' shadows a member of 'this' [-Wshadow]
/usr/local/include/mapnik/agg/agg_rendering_buffer.h:180:16: warning: declaration of 'row_ptr' shadows a member of 'this' [-Wshadow]
T* row_ptr = m_buf;
^
/usr/local/include/mapnik/agg/agg_rendering_buffer.h:187:17: warning: declaration of 'rows' shadows a member of 'this' [-Wshadow]
T** rows = &m_rows[0];
^
/usr/local/include/mapnik/agg/agg_rendering_buffer.h: In member function 'void agg::row_ptr_cache<T>::clear(T)':
/usr/local/include/mapnik/agg/agg_rendering_buffer.h:248:22: warning: declaration of 'stride' shadows a member of 'this' [-Wshadow]
unsigned stride = stride_abs();
^
In file included from ../node_modules/mapnik-vector-tile/src/vector_tile_raster_clipper.ipp:13:0,
from ../node_modules/mapnik-vector-tile/src/vector_tile_raster_clipper.hpp:99,
from ../node_modules/mapnik-vector-tile/src/vector_tile_processor.ipp:6,
from ../node_modules/mapnik-vector-tile/src/vector_tile_processor.hpp:202,
from ../src/mapnik_map.cpp:15:
/usr/local/include/mapnik/agg/agg_pixfmt_rgba.h: In member function 'bool agg::pixfmt_alpha_blend_rgba<Blender, RenBuf, PixelT>::attach(PixFmt&, int, int, int, int)':
/usr/local/include/mapnik/agg/agg_pixfmt_rgba.h:2086:17: warning: declaration of 'stride' shadows a member of 'this' [-Wshadow]
int stride = pixf.stride();
^
/usr/local/include/mapnik/agg/agg_pixfmt_rgba.h: In constructor 'agg::pixfmt_custom_blend_rgba<Blender, RenBuf>::pixfmt_custom_blend_rgba(agg::pixfmt_custom_blend_rgba<Blender, RenBuf>::rbuf_type&, unsigned int)':
/usr/local/include/mapnik/agg/agg_pixfmt_rgba.h:2729:74: warning: declaration of 'comp_op' shadows a member of 'this' [-Wshadow]
explicit pixfmt_custom_blend_rgba(rbuf_type& rb, unsigned comp_op=3) :
^
/usr/local/include/mapnik/agg/agg_pixfmt_rgba.h: In member function 'bool agg::pixfmt_custom_blend_rgba<Blender, RenBuf>::attach(PixFmt&, int, int, int, int)':
/usr/local/include/mapnik/agg/agg_pixfmt_rgba.h:2742:17: warning: declaration of 'stride' shadows a member of 'this' [-Wshadow]
int stride = pixf.stride();
^
In file included from /usr/local/include/mapnik/agg/agg_pixfmt_base.h:20:0,
from /usr/local/include/mapnik/agg/agg_pixfmt_gray.h:28,
from ../node_modules/mapnik-vector-tile/src/vector_tile_raster_clipper.ipp:14,
from ../node_modules/mapnik-vector-tile/src/vector_tile_raster_clipper.hpp:99,
from ../node_modules/mapnik-vector-tile/src/vector_tile_processor.ipp:6,
from ../node_modules/mapnik-vector-tile/src/vector_tile_processor.hpp:202,
from ../src/mapnik_map.cpp:15:
/usr/local/include/mapnik/agg/agg_color_gray.h: In member function 'agg::gray16::self_type& agg::gray16::demultiply()':
/usr/local/include/mapnik/agg/agg_color_gray.h:691:63: warning: enumeral and non-enumeral type in conditional expression [enabled by default]
v = value_type((v_ > base_mask) ? base_mask : v_);
^
In file included from ../node_modules/mapnik-vector-tile/src/vector_tile_raster_clipper.ipp:14:0,
from ../node_modules/mapnik-vector-tile/src/vector_tile_raster_clipper.hpp:99,
from ../node_modules/mapnik-vector-tile/src/vector_tile_processor.ipp:6,
from ../node_modules/mapnik-vector-tile/src/vector_tile_processor.hpp:202,
from ../src/mapnik_map.cpp:15:
/usr/local/include/mapnik/agg/agg_pixfmt_gray.h: In member function 'bool agg::pixfmt_alpha_blend_gray<Blender, RenBuf, Step, Offset>::attach(PixFmt&, int, int, int, int)':
/usr/local/include/mapnik/agg/agg_pixfmt_gray.h:262:21: warning: declaration of 'stride' shadows a member of 'this' [-Wshadow]
int stride = pixf.stride();
^
In file included from ../node_modules/mapnik-vector-tile/src/vector_tile_raster_clipper.ipp:15:0,
from ../node_modules/mapnik-vector-tile/src/vector_tile_raster_clipper.hpp:99,
from ../node_modules/mapnik-vector-tile/src/vector_tile_processor.ipp:6,
from ../node_modules/mapnik-vector-tile/src/vector_tile_processor.hpp:202,
from ../src/mapnik_map.cpp:15:
/usr/local/include/mapnik/agg/agg_renderer_base.h: In constructor 'agg::renderer_base<PixelFormat>::renderer_base(agg::renderer_base<PixelFormat>::pixfmt_type&)':
/usr/local/include/mapnik/agg/agg_renderer_base.h:40:50: warning: declaration of 'ren' shadows a member of 'this' [-Wshadow]
explicit renderer_base(pixfmt_type& ren) :
^
/usr/local/include/mapnik/agg/agg_renderer_base.h: In member function 'void agg::renderer_base<PixelFormat>::attach(agg::renderer_base<PixelFormat>::pixfmt_type&)':
/usr/local/include/mapnik/agg/agg_renderer_base.h:45:9: warning: declaration of 'ren' shadows a member of 'this' [-Wshadow]
{
^
../src/mapnik_map.cpp: In static member function 'static Nan::NAN_METHOD_RETURN_TYPE Map::render(Nan::NAN_METHOD_ARGS_TYPE)':
../src/mapnik_map.cpp:1918:42: warning: comparison is always false due to limited range of data type [-Wtype-limits]
if (closure->fill_type < 0 || closure->fill_type >= mapnik::vector_tile_impl::polygon_fill_type_max)
^
In file included from ../node_modules/mapnik-vector-tile/src/vector_tile_raster_clipper.ipp:12:0,
from ../node_modules/mapnik-vector-tile/src/vector_tile_raster_clipper.hpp:99,
from ../node_modules/mapnik-vector-tile/src/vector_tile_processor.ipp:6,
from ../node_modules/mapnik-vector-tile/src/vector_tile_processor.hpp:202,
from ../src/mapnik_map.cpp:15:
/usr/local/include/mapnik/agg/agg_rendering_buffer.h: In instantiation of 'agg::row_ptr_cache<T>::row_ptr_cache(T*, unsigned int, unsigned int, int) [with T = unsigned char]':
../node_modules/mapnik-vector-tile/src/vector_tile_raster_clipper.ipp:61:108: required from here
/usr/local/include/mapnik/agg/agg_rendering_buffer.h:158:9: warning: declaration of 'stride' shadows a member of 'this' [-Wshadow]
row_ptr_cache(T* buf, unsigned width, unsigned height, int stride) :
^
/usr/local/include/mapnik/agg/agg_rendering_buffer.h:158:9: warning: declaration of 'height' shadows a member of 'this' [-Wshadow]
/usr/local/include/mapnik/agg/agg_rendering_buffer.h:158:9: warning: declaration of 'width' shadows a member of 'this' [-Wshadow]
/usr/local/include/mapnik/agg/agg_rendering_buffer.h:158:9: warning: declaration of 'buf' shadows a member of 'this' [-Wshadow]
In file included from ../node_modules/mapnik-vector-tile/src/vector_tile_raster_clipper.ipp:15:0,
from ../node_modules/mapnik-vector-tile/src/vector_tile_raster_clipper.hpp:99,
from ../node_modules/mapnik-vector-tile/src/vector_tile_processor.ipp:6,
from ../node_modules/mapnik-vector-tile/src/vector_tile_processor.hpp:202,
from ../src/mapnik_map.cpp:15:
/usr/local/include/mapnik/agg/agg_renderer_base.h: In instantiation of 'agg::renderer_base<PixelFormat>::renderer_base(agg::renderer_base<PixelFormat>::pixfmt_type&) [with PixelFormat = agg::pixfmt_alpha_blend_rgba<agg::blender_rgba_pre<agg::rgba8T<agg::linear>, agg::order_rgba>, agg::row_ptr_cache<unsigned char>, unsigned int>; agg::renderer_base<PixelFormat>::pixfmt_type = agg::pixfmt_alpha_blend_rgba<agg::blender_rgba_pre<agg::rgba8T<agg::linear>, agg::order_rgba>, agg::row_ptr_cache<unsigned char>, unsigned int>]':
../node_modules/mapnik-vector-tile/src/vector_tile_raster_clipper.ipp:65:31: required from here
/usr/local/include/mapnik/agg/agg_renderer_base.h:40:18: warning: declaration of 'ren' shadows a member of 'this' [-Wshadow]
explicit renderer_base(pixfmt_type& ren) :
^
/usr/local/include/mapnik/agg/agg_renderer_base.h: In instantiation of 'agg::renderer_base<PixelFormat>::renderer_base(agg::renderer_base<PixelFormat>::pixfmt_type&) [with PixelFormat = agg::pixfmt_alpha_blend_gray<agg::blender_gray<agg::gray8T<agg::linear> >, agg::row_ptr_cache<unsigned char> >; agg::renderer_base<PixelFormat>::pixfmt_type = agg::pixfmt_alpha_blend_gray<agg::blender_gray<agg::gray8T<agg::linear> >, agg::row_ptr_cache<unsigned char> >]':
../node_modules/mapnik-vector-tile/src/vector_tile_raster_clipper.ipp:111:31: required from here
/usr/local/include/mapnik/agg/agg_renderer_base.h:40:18: warning: declaration of 'ren' shadows a member of 'this' [-Wshadow]
/usr/local/include/mapnik/agg/agg_renderer_base.h: In instantiation of 'agg::renderer_base<PixelFormat>::renderer_base(agg::renderer_base<PixelFormat>::pixfmt_type&) [with PixelFormat = agg::pixfmt_alpha_blend_gray<agg::blender_gray<agg::gray16>, agg::row_ptr_cache<unsigned char> >; agg::renderer_base<PixelFormat>::pixfmt_type = agg::pixfmt_alpha_blend_gray<agg::blender_gray<agg::gray16>, agg::row_ptr_cache<unsigned char> >]':
../node_modules/mapnik-vector-tile/src/vector_tile_raster_clipper.ipp:201:31: required from here
/usr/local/include/mapnik/agg/agg_renderer_base.h:40:18: warning: declaration of 'ren' shadows a member of 'this' [-Wshadow]
/usr/local/include/mapnik/agg/agg_renderer_base.h: In instantiation of 'agg::renderer_base<PixelFormat>::renderer_base(agg::renderer_base<PixelFormat>::pixfmt_type&) [with PixelFormat = agg::pixfmt_alpha_blend_gray<agg::blender_gray<agg::gray32>, agg::row_ptr_cache<unsigned char> >; agg::renderer_base<PixelFormat>::pixfmt_type = agg::pixfmt_alpha_blend_gray<agg::blender_gray<agg::gray32>, agg::row_ptr_cache<unsigned char> >]':
../node_modules/mapnik-vector-tile/src/vector_tile_raster_clipper.ipp:291:31: required from here
/usr/local/include/mapnik/agg/agg_renderer_base.h:40:18: warning: declaration of 'ren' shadows a member of 'this' [-Wshadow]
In file included from ../node_modules/mapnik-vector-tile/src/vector_tile_raster_clipper.ipp:12:0,
from ../node_modules/mapnik-vector-tile/src/vector_tile_raster_clipper.hpp:99,
from ../node_modules/mapnik-vector-tile/src/vector_tile_processor.ipp:6,
from ../node_modules/mapnik-vector-tile/src/vector_tile_processor.hpp:202,
from ../src/mapnik_map.cpp:15:
/usr/local/include/mapnik/agg/agg_rendering_buffer.h: In instantiation of 'void agg::row_ptr_cache<T>::attach(T*, unsigned int, unsigned int, int) [with T = unsigned char]':
/usr/local/include/mapnik/agg/agg_rendering_buffer.h:165:46: required from 'agg::row_ptr_cache<T>::row_ptr_cache(T*, unsigned int, unsigned int, int) [with T = unsigned char]'
../node_modules/mapnik-vector-tile/src/vector_tile_raster_clipper.ipp:61:108: required from here
/usr/local/include/mapnik/agg/agg_rendering_buffer.h:169:14: warning: declaration of 'stride' shadows a member of 'this' [-Wshadow]
void attach(T* buf, unsigned width, unsigned height, int stride)
^
/usr/local/include/mapnik/agg/agg_rendering_buffer.h:169:14: warning: declaration of 'height' shadows a member of 'this' [-Wshadow]
/usr/local/include/mapnik/agg/agg_rendering_buffer.h:169:14: warning: declaration of 'width' shadows a member of 'this' [-Wshadow]
/usr/local/include/mapnik/agg/agg_rendering_buffer.h:169:14: warning: declaration of 'buf' shadows a member of 'this' [-Wshadow]
/usr/local/include/mapnik/agg/agg_rendering_buffer.h:180:26: warning: declaration of 'row_ptr' shadows a member of 'this' [-Wshadow]
T* row_ptr = m_buf;
^
/usr/local/include/mapnik/agg/agg_rendering_buffer.h:187:33: warning: declaration of 'rows' shadows a member of 'this' [-Wshadow]
T** rows = &m_rows[0];
^
In file included from /usr/include/boost/mpl/aux_/na_assert.hpp:23:0,
from /usr/include/boost/mpl/arg.hpp:25,
from /usr/include/boost/mpl/placeholders.hpp:24,
from /usr/include/boost/iterator/iterator_categories.hpp:17,
from /usr/include/boost/iterator/detail/facade_iterator_category.hpp:7,
from /usr/include/boost/iterator/iterator_facade.hpp:14,
from /usr/local/include/mapnik/feature_kv_iterator.hpp:33,
from /usr/local/include/mapnik/feature.hpp:34,
from /usr/local/include/mapnik/grid/grid_view.hpp:30,
from /usr/local/include/mapnik/grid/grid.hpp:30,
from ../src/mapnik_grid.hpp:12,
from ../src/mapnik_map.cpp:6:
/usr/include/boost/geometry/algorithms/detail/sections/sectionalize.hpp: In instantiation of 'struct boost::geometry::dispatch::sectionalize<boost::geometry::multi_linestring_tag, mapnik::geometry::multi_line_string<double>, false, boost::geometry::sections<boost::geometry::model::box<mapnik::geometry::point<double> >, 2ul>, 2ul, 10ul>':
/usr/include/boost/geometry/algorithms/detail/sections/sectionalize.hpp:663:58: required from 'void boost::geometry::sectionalize(const Geometry&, Sections&, int) [with bool Reverse = false; Geometry = mapnik::geometry::multi_line_string<double>; Sections = boost::geometry::sections<boost::geometry::model::box<mapnik::geometry::point<double> >, 2ul>]'
/usr/include/boost/geometry/algorithms/detail/overlay/get_turns.hpp:454:60: required from 'static void boost::geometry::detail::get_turns::get_turns_generic<Geometry1, Geometry2, Reverse1, Reverse2, Turns, TurnPolicy, InterruptPolicy>::apply(int, const Geometry1&, int, const Geometry2&, Turns&, InterruptPolicy&) [with Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>; bool Reverse1 = false; bool Reverse2 = false; Turns = std::deque<boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> >, std::allocator<boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> > > >; TurnPolicy = boost::geometry::detail::overlay::get_turn_info<mapnik::geometry::point<double>, mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> >, boost::geometry::detail::disjoint::assign_disjoint_policy>; InterruptPolicy = boost::geometry::detail::disjoint::disjoint_interrupt_policy]'
/usr/include/boost/geometry/algorithms/detail/overlay/get_turns.hpp:881:36: required from 'void boost::geometry::get_turns(const Geometry1&, const Geometry2&, Turns&, InterruptPolicy&) [with bool Reverse1 = false; bool Reverse2 = false; AssignPolicy = boost::geometry::detail::disjoint::assign_disjoint_policy; Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>; Turns = std::deque<boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> >, std::allocator<boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> > > >; InterruptPolicy = boost::geometry::detail::disjoint::disjoint_interrupt_policy]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:121:50: required from 'static bool boost::geometry::detail::disjoint::disjoint_linear<Geometry1, Geometry2>::apply(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:158:80: required from 'static bool boost::geometry::detail::disjoint::general_areal<Geometry1, Geometry2>::apply(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:289:80: required from 'bool boost::geometry::disjoint(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/intersects.hpp:99:53: required from 'bool boost::geometry::intersects(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
../node_modules/mapnik-vector-tile/src/vector_tile_geometry_intersects.ipp:56:53: required from here
/usr/include/boost/geometry/algorithms/detail/sections/sectionalize.hpp:544:5: error: no matching function for call to 'assertion_failed(mpl_::failed************ (boost::geometry::dispatch::sectionalize<boost::geometry::multi_linestring_tag, mapnik::geometry::multi_line_string<double>, false, boost::geometry::sections<boost::geometry::model::box<mapnik::geometry::point<double> >, 2ul>, 2ul, 10ul>::NOT_OR_NOT_YET_IMPLEMENTED_FOR_THIS_GEOMETRY_TYPE::************)(mpl_::assert_::types<mapnik::geometry::multi_line_string<double>, mpl_::na, mpl_::na, mpl_::na>))'
BOOST_MPL_ASSERT_MSG
^
/usr/include/boost/geometry/algorithms/detail/sections/sectionalize.hpp:544:5: note: candidate is:
/usr/include/boost/mpl/assert.hpp:82:5: note: template<bool C> int mpl_::assertion_failed(typename mpl_::assert<C>::type)
int assertion_failed( typename assert<C>::type );
^
/usr/include/boost/mpl/assert.hpp:82:5: note: template argument deduction/substitution failed:
/usr/include/boost/geometry/algorithms/detail/sections/sectionalize.hpp:544:5: note: cannot convert 'boost::geometry::dispatch::sectionalize<Tag, Geometry, Reverse, Sections, DimensionCount, MaxCount>::NOT_OR_NOT_YET_IMPLEMENTED_FOR_THIS_GEOMETRY_TYPE548::assert_arg<boost::geometry::multi_linestring_tag, mapnik::geometry::multi_line_string<double>, false, boost::geometry::sections<boost::geometry::model::box<mapnik::geometry::point<double> >, 2ul>, 2ul, 10ul>()' (type 'mpl_::failed************ (boost::geometry::dispatch::sectionalize<boost::geometry::multi_linestring_tag, mapnik::geometry::multi_line_string<double>, false, boost::geometry::sections<boost::geometry::model::box<mapnik::geometry::point<double> >, 2ul>, 2ul, 10ul>::NOT_OR_NOT_YET_IMPLEMENTED_FOR_THIS_GEOMETRY_TYPE::************)(mpl_::assert_::types<mapnik::geometry::multi_line_string<double>, mpl_::na, mpl_::na, mpl_::na>)') to type 'mpl_::assert<false>::type {aka mpl_::assert<false>}'
BOOST_MPL_ASSERT_MSG
^
In file included from /usr/include/boost/geometry/algorithms/detail/overlay/get_turns.hpp:56:0,
from /usr/include/boost/geometry/algorithms/disjoint.hpp:32,
from /usr/include/boost/geometry/algorithms/num_points.hpp:27,
from /usr/include/boost/geometry/algorithms/detail/throw_on_empty_input.hpp:15,
from /usr/include/boost/geometry/algorithms/distance.hpp:29,
from /usr/include/boost/geometry/strategies/cartesian/centroid_weighted_length.hpp:16,
from /usr/include/boost/geometry/strategies/strategies.hpp:33,
from /usr/include/boost/geometry/geometry.hpp:35,
from /usr/include/boost/geometry.hpp:17,
from /usr/local/include/mapnik/geometry_adapters.hpp:38,
from ../node_modules/mapnik-vector-tile/src/vector_tile_geometry_clipper.hpp:11,
from ../node_modules/mapnik-vector-tile/src/vector_tile_processor.ipp:2,
from ../node_modules/mapnik-vector-tile/src/vector_tile_processor.hpp:202,
from ../src/mapnik_map.cpp:15:
/usr/include/boost/geometry/algorithms/detail/sections/sectionalize.hpp: In instantiation of 'void boost::geometry::sectionalize(const Geometry&, Sections&, int) [with bool Reverse = false; Geometry = mapnik::geometry::multi_line_string<double>; Sections = boost::geometry::sections<boost::geometry::model::box<mapnik::geometry::point<double> >, 2ul>]':
/usr/include/boost/geometry/algorithms/detail/overlay/get_turns.hpp:454:60: required from 'static void boost::geometry::detail::get_turns::get_turns_generic<Geometry1, Geometry2, Reverse1, Reverse2, Turns, TurnPolicy, InterruptPolicy>::apply(int, const Geometry1&, int, const Geometry2&, Turns&, InterruptPolicy&) [with Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>; bool Reverse1 = false; bool Reverse2 = false; Turns = std::deque<boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> >, std::allocator<boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> > > >; TurnPolicy = boost::geometry::detail::overlay::get_turn_info<mapnik::geometry::point<double>, mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> >, boost::geometry::detail::disjoint::assign_disjoint_policy>; InterruptPolicy = boost::geometry::detail::disjoint::disjoint_interrupt_policy]'
/usr/include/boost/geometry/algorithms/detail/overlay/get_turns.hpp:881:36: required from 'void boost::geometry::get_turns(const Geometry1&, const Geometry2&, Turns&, InterruptPolicy&) [with bool Reverse1 = false; bool Reverse2 = false; AssignPolicy = boost::geometry::detail::disjoint::assign_disjoint_policy; Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>; Turns = std::deque<boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> >, std::allocator<boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> > > >; InterruptPolicy = boost::geometry::detail::disjoint::disjoint_interrupt_policy]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:121:50: required from 'static bool boost::geometry::detail::disjoint::disjoint_linear<Geometry1, Geometry2>::apply(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:158:80: required from 'static bool boost::geometry::detail::disjoint::general_areal<Geometry1, Geometry2>::apply(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:289:80: required from 'bool boost::geometry::disjoint(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/intersects.hpp:99:53: required from 'bool boost::geometry::intersects(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
../node_modules/mapnik-vector-tile/src/vector_tile_geometry_intersects.ipp:56:53: required from here
/usr/include/boost/geometry/algorithms/detail/sections/sectionalize.hpp:663:58: error: 'apply' is not a member of 'sectionalizer_type {aka boost::geometry::dispatch::sectionalize<boost::geometry::multi_linestring_tag, mapnik::geometry::multi_line_string<double>, false, boost::geometry::sections<boost::geometry::model::box<mapnik::geometry::point<double> >, 2ul>, 2ul, 10ul>}'
sectionalizer_type::apply(geometry, sections, ring_id);
^
In file included from /usr/include/boost/mpl/aux_/na_assert.hpp:23:0,
from /usr/include/boost/mpl/arg.hpp:25,
from /usr/include/boost/mpl/placeholders.hpp:24,
from /usr/include/boost/iterator/iterator_categories.hpp:17,
from /usr/include/boost/iterator/detail/facade_iterator_category.hpp:7,
from /usr/include/boost/iterator/iterator_facade.hpp:14,
from /usr/local/include/mapnik/feature_kv_iterator.hpp:33,
from /usr/local/include/mapnik/feature.hpp:34,
from /usr/local/include/mapnik/grid/grid_view.hpp:30,
from /usr/local/include/mapnik/grid/grid.hpp:30,
from ../src/mapnik_grid.hpp:12,
from ../src/mapnik_map.cpp:6:
/usr/include/boost/geometry/strategies/within.hpp: In instantiation of 'struct boost::geometry::strategy::within::services::default_strategy<boost::geometry::point_tag, boost::geometry::linestring_tag, boost::geometry::point_tag, boost::geometry::linestring_tag, boost::geometry::cartesian_tag, boost::geometry::cartesian_tag, mapnik::geometry::point<double>, mapnik::geometry::line_string<double> >':
/usr/include/boost/geometry/algorithms/within.hpp:289:17: required from 'bool boost::geometry::within(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::point<double>; Geometry2 = mapnik::geometry::line_string<double>]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:64:43: required from 'void boost::geometry::detail::disjoint::check_each_ring_for_within<Geometry>::apply(const Range&) [with Range = mapnik::geometry::linear_ring<double>; Geometry = mapnik::geometry::line_string<double>]'
/usr/include/boost/geometry/algorithms/detail/for_each_range.hpp:44:9: required from 'static void boost::geometry::detail::for_each::fe_range_range<Range, Actor, IsConst>::apply(typename boost::geometry::add_const_if_c<IsConst, Point>::type&, Actor&) [with Range = mapnik::geometry::linear_ring<double>; Actor = boost::geometry::detail::disjoint::check_each_ring_for_within<mapnik::geometry::line_string<double> >; bool IsConst = true; typename boost::geometry::add_const_if_c<IsConst, Point>::type = const mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/detail/for_each_range.hpp:139:33: required from 'void boost::geometry::detail::for_each_range(const Geometry&, Actor&) [with Geometry = mapnik::geometry::linear_ring<double>; Actor = boost::geometry::detail::disjoint::check_each_ring_for_within<mapnik::geometry::line_string<double> >]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:76:56: required from 'bool boost::geometry::detail::disjoint::rings_containing(const FirstGeometry&, const SecondGeometry&) [with FirstGeometry = mapnik::geometry::line_string<double>; SecondGeometry = mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:165:50: required from 'static bool boost::geometry::detail::disjoint::general_areal<Geometry1, Geometry2>::apply(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:289:80: required from 'bool boost::geometry::disjoint(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/intersects.hpp:99:53: required from 'bool boost::geometry::intersects(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
../node_modules/mapnik-vector-tile/src/vector_tile_geometry_intersects.ipp:51:53: required from here
/usr/include/boost/geometry/strategies/within.hpp:53:5: error: no matching function for call to 'assertion_failed(mpl_::failed************ (boost::geometry::strategy::within::services::default_strategy<boost::geometry::point_tag, boost::geometry::linestring_tag, boost::geometry::point_tag, boost::geometry::linestring_tag, boost::geometry::cartesian_tag, boost::geometry::cartesian_tag, mapnik::geometry::point<double>, mapnik::geometry::line_string<double> >::NOT_IMPLEMENTED_FOR_THESE_TYPES::************)(mpl_::assert_::types<mapnik::geometry::point<double>, mapnik::geometry::line_string<double>, mpl_::na, mpl_::na>))'
BOOST_MPL_ASSERT_MSG
^
/usr/include/boost/geometry/strategies/within.hpp:53:5: note: candidate is:
/usr/include/boost/mpl/assert.hpp:82:5: note: template<bool C> int mpl_::assertion_failed(typename mpl_::assert<C>::type)
int assertion_failed( typename assert<C>::type );
^
/usr/include/boost/mpl/assert.hpp:82:5: note: template argument deduction/substitution failed:
/usr/include/boost/geometry/strategies/within.hpp:53:5: note: cannot convert 'boost::geometry::strategy::within::services::default_strategy<TagContained, TagContaining, CastedTagContained, CastedTagContaining, CsTagContained, CsTagContaining, GeometryContained, GeometryContaining>::NOT_IMPLEMENTED_FOR_THESE_TYPES57::assert_arg<boost::geometry::point_tag, boost::geometry::linestring_tag, boost::geometry::point_tag, boost::geometry::linestring_tag, boost::geometry::cartesian_tag, boost::geometry::cartesian_tag, mapnik::geometry::point<double>, mapnik::geometry::line_string<double> >()' (type 'mpl_::failed************ (boost::geometry::strategy::within::services::default_strategy<boost::geometry::point_tag, boost::geometry::linestring_tag, boost::geometry::point_tag, boost::geometry::linestring_tag, boost::geometry::cartesian_tag, boost::geometry::cartesian_tag, mapnik::geometry::point<double>, mapnik::geometry::line_string<double> >::NOT_IMPLEMENTED_FOR_THESE_TYPES::************)(mpl_::assert_::types<mapnik::geometry::point<double>, mapnik::geometry::line_string<double>, mpl_::na, mpl_::na>)') to type 'mpl_::assert<false>::type {aka mpl_::assert<false>}'
BOOST_MPL_ASSERT_MSG
^
In file included from /usr/include/boost/geometry/algorithms/covered_by.hpp:21:0,
from /usr/include/boost/geometry/algorithms/detail/disjoint.hpp:29,
from /usr/include/boost/geometry/algorithms/disjoint.hpp:29,
from /usr/include/boost/geometry/algorithms/num_points.hpp:27,
from /usr/include/boost/geometry/algorithms/detail/throw_on_empty_input.hpp:15,
from /usr/include/boost/geometry/algorithms/distance.hpp:29,
from /usr/include/boost/geometry/strategies/cartesian/centroid_weighted_length.hpp:16,
from /usr/include/boost/geometry/strategies/strategies.hpp:33,
from /usr/include/boost/geometry/geometry.hpp:35,
from /usr/include/boost/geometry.hpp:17,
from /usr/local/include/mapnik/geometry_adapters.hpp:38,
from ../node_modules/mapnik-vector-tile/src/vector_tile_geometry_clipper.hpp:11,
from ../node_modules/mapnik-vector-tile/src/vector_tile_processor.ipp:2,
from ../node_modules/mapnik-vector-tile/src/vector_tile_processor.hpp:202,
from ../src/mapnik_map.cpp:15:
/usr/include/boost/geometry/algorithms/within.hpp: In instantiation of 'bool boost::geometry::within(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::point<double>; Geometry2 = mapnik::geometry::line_string<double>]':
/usr/include/boost/geometry/algorithms/disjoint.hpp:64:43: required from 'void boost::geometry::detail::disjoint::check_each_ring_for_within<Geometry>::apply(const Range&) [with Range = mapnik::geometry::linear_ring<double>; Geometry = mapnik::geometry::line_string<double>]'
/usr/include/boost/geometry/algorithms/detail/for_each_range.hpp:44:9: required from 'static void boost::geometry::detail::for_each::fe_range_range<Range, Actor, IsConst>::apply(typename boost::geometry::add_const_if_c<IsConst, Point>::type&, Actor&) [with Range = mapnik::geometry::linear_ring<double>; Actor = boost::geometry::detail::disjoint::check_each_ring_for_within<mapnik::geometry::line_string<double> >; bool IsConst = true; typename boost::geometry::add_const_if_c<IsConst, Point>::type = const mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/detail/for_each_range.hpp:139:33: required from 'void boost::geometry::detail::for_each_range(const Geometry&, Actor&) [with Geometry = mapnik::geometry::linear_ring<double>; Actor = boost::geometry::detail::disjoint::check_each_ring_for_within<mapnik::geometry::line_string<double> >]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:76:56: required from 'bool boost::geometry::detail::disjoint::rings_containing(const FirstGeometry&, const SecondGeometry&) [with FirstGeometry = mapnik::geometry::line_string<double>; SecondGeometry = mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:165:50: required from 'static bool boost::geometry::detail::disjoint::general_areal<Geometry1, Geometry2>::apply(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:289:80: required from 'bool boost::geometry::disjoint(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/intersects.hpp:99:53: required from 'bool boost::geometry::intersects(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
../node_modules/mapnik-vector-tile/src/vector_tile_geometry_intersects.ipp:51:53: required from here
/usr/include/boost/geometry/algorithms/within.hpp:289:17: error: no type named 'type' in 'struct boost::geometry::strategy::within::services::default_strategy<boost::geometry::point_tag, boost::geometry::linestring_tag, boost::geometry::point_tag, boost::geometry::linestring_tag, boost::geometry::cartesian_tag, boost::geometry::cartesian_tag, mapnik::geometry::point<double>, mapnik::geometry::line_string<double> >'
>::type strategy_type;
^
In file included from /usr/include/boost/mpl/aux_/na_assert.hpp:23:0,
from /usr/include/boost/mpl/arg.hpp:25,
from /usr/include/boost/mpl/placeholders.hpp:24,
from /usr/include/boost/iterator/iterator_categories.hpp:17,
from /usr/include/boost/iterator/detail/facade_iterator_category.hpp:7,
from /usr/include/boost/iterator/iterator_facade.hpp:14,
from /usr/local/include/mapnik/feature_kv_iterator.hpp:33,
from /usr/local/include/mapnik/feature.hpp:34,
from /usr/local/include/mapnik/grid/grid_view.hpp:30,
from /usr/local/include/mapnik/grid/grid.hpp:30,
from ../src/mapnik_grid.hpp:12,
from ../src/mapnik_map.cpp:6:
/usr/include/boost/geometry/algorithms/not_implemented.hpp: In instantiation of 'struct boost::geometry::nyi::not_implemented_error<boost::geometry::info::POINT, boost::geometry::info::LINESTRING, void>':
/usr/include/boost/geometry/algorithms/not_implemented.hpp:103:8: required from 'struct boost::geometry::not_implemented<boost::geometry::point_tag, boost::geometry::linestring_tag, void>'
/usr/include/boost/geometry/algorithms/within.hpp:175:8: required from 'struct boost::geometry::dispatch::within<mapnik::geometry::point<double>, mapnik::geometry::line_string<double>, boost::geometry::point_tag, boost::geometry::linestring_tag>'
/usr/include/boost/geometry/algorithms/within.hpp:295:55: required from 'bool boost::geometry::within(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::point<double>; Geometry2 = mapnik::geometry::line_string<double>]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:64:43: required from 'void boost::geometry::detail::disjoint::check_each_ring_for_within<Geometry>::apply(const Range&) [with Range = mapnik::geometry::linear_ring<double>; Geometry = mapnik::geometry::line_string<double>]'
/usr/include/boost/geometry/algorithms/detail/for_each_range.hpp:44:9: required from 'static void boost::geometry::detail::for_each::fe_range_range<Range, Actor, IsConst>::apply(typename boost::geometry::add_const_if_c<IsConst, Point>::type&, Actor&) [with Range = mapnik::geometry::linear_ring<double>; Actor = boost::geometry::detail::disjoint::check_each_ring_for_within<mapnik::geometry::line_string<double> >; bool IsConst = true; typename boost::geometry::add_const_if_c<IsConst, Point>::type = const mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/detail/for_each_range.hpp:139:33: required from 'void boost::geometry::detail::for_each_range(const Geometry&, Actor&) [with Geometry = mapnik::geometry::linear_ring<double>; Actor = boost::geometry::detail::disjoint::check_each_ring_for_within<mapnik::geometry::line_string<double> >]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:76:56: required from 'bool boost::geometry::detail::disjoint::rings_containing(const FirstGeometry&, const SecondGeometry&) [with FirstGeometry = mapnik::geometry::line_string<double>; SecondGeometry = mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:165:50: required from 'static bool boost::geometry::detail::disjoint::general_areal<Geometry1, Geometry2>::apply(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:289:80: required from 'bool boost::geometry::disjoint(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/intersects.hpp:99:53: required from 'bool boost::geometry::intersects(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
../node_modules/mapnik-vector-tile/src/vector_tile_geometry_intersects.ipp:51:53: required from here
/usr/include/boost/geometry/algorithms/not_implemented.hpp:64:5: error: no matching function for call to 'assertion_failed(mpl_::failed************ (boost::geometry::nyi::not_implemented_error<boost::geometry::info::POINT, boost::geometry::info::LINESTRING, void>::THIS_OPERATION_IS_NOT_OR_NOT_YET_IMPLEMENTED::************)(mpl_::assert_::types<boost::geometry::info::POINT, boost::geometry::info::LINESTRING, void, mpl_::na>))'
BOOST_MPL_ASSERT_MSG
^
/usr/include/boost/geometry/algorithms/not_implemented.hpp:64:5: note: candidate is:
/usr/include/boost/mpl/assert.hpp:82:5: note: template<bool C> int mpl_::assertion_failed(typename mpl_::assert<C>::type)
int assertion_failed( typename assert<C>::type );
^
/usr/include/boost/mpl/assert.hpp:82:5: note: template argument deduction/substitution failed:
/usr/include/boost/geometry/algorithms/not_implemented.hpp:64:5: note: cannot convert 'boost::geometry::nyi::not_implemented_error<Term1, Term2, Term3>::THIS_OPERATION_IS_NOT_OR_NOT_YET_IMPLEMENTED71::assert_arg<boost::geometry::info::POINT, boost::geometry::info::LINESTRING, void>()' (type 'mpl_::failed************ (boost::geometry::nyi::not_implemented_error<boost::geometry::info::POINT, boost::geometry::info::LINESTRING, void>::THIS_OPERATION_IS_NOT_OR_NOT_YET_IMPLEMENTED::************)(mpl_::assert_::types<boost::geometry::info::POINT, boost::geometry::info::LINESTRING, void, mpl_::na>)') to type 'mpl_::assert<false>::type {aka mpl_::assert<false>}'
BOOST_MPL_ASSERT_MSG
^
In file included from /usr/include/boost/geometry/algorithms/covered_by.hpp:21:0,
from /usr/include/boost/geometry/algorithms/detail/disjoint.hpp:29,
from /usr/include/boost/geometry/algorithms/disjoint.hpp:29,
from /usr/include/boost/geometry/algorithms/num_points.hpp:27,
from /usr/include/boost/geometry/algorithms/detail/throw_on_empty_input.hpp:15,
from /usr/include/boost/geometry/algorithms/distance.hpp:29,
from /usr/include/boost/geometry/strategies/cartesian/centroid_weighted_length.hpp:16,
from /usr/include/boost/geometry/strategies/strategies.hpp:33,
from /usr/include/boost/geometry/geometry.hpp:35,
from /usr/include/boost/geometry.hpp:17,
from /usr/local/include/mapnik/geometry_adapters.hpp:38,
from ../node_modules/mapnik-vector-tile/src/vector_tile_geometry_clipper.hpp:11,
from ../node_modules/mapnik-vector-tile/src/vector_tile_processor.ipp:2,
from ../node_modules/mapnik-vector-tile/src/vector_tile_processor.hpp:202,
from ../src/mapnik_map.cpp:15:
/usr/include/boost/geometry/algorithms/within.hpp: In instantiation of 'bool boost::geometry::within(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::point<double>; Geometry2 = mapnik::geometry::line_string<double>]':
/usr/include/boost/geometry/algorithms/disjoint.hpp:64:43: required from 'void boost::geometry::detail::disjoint::check_each_ring_for_within<Geometry>::apply(const Range&) [with Range = mapnik::geometry::linear_ring<double>; Geometry = mapnik::geometry::line_string<double>]'
/usr/include/boost/geometry/algorithms/detail/for_each_range.hpp:44:9: required from 'static void boost::geometry::detail::for_each::fe_range_range<Range, Actor, IsConst>::apply(typename boost::geometry::add_const_if_c<IsConst, Point>::type&, Actor&) [with Range = mapnik::geometry::linear_ring<double>; Actor = boost::geometry::detail::disjoint::check_each_ring_for_within<mapnik::geometry::line_string<double> >; bool IsConst = true; typename boost::geometry::add_const_if_c<IsConst, Point>::type = const mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/detail/for_each_range.hpp:139:33: required from 'void boost::geometry::detail::for_each_range(const Geometry&, Actor&) [with Geometry = mapnik::geometry::linear_ring<double>; Actor = boost::geometry::detail::disjoint::check_each_ring_for_within<mapnik::geometry::line_string<double> >]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:76:56: required from 'bool boost::geometry::detail::disjoint::rings_containing(const FirstGeometry&, const SecondGeometry&) [with FirstGeometry = mapnik::geometry::line_string<double>; SecondGeometry = mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:165:50: required from 'static bool boost::geometry::detail::disjoint::general_areal<Geometry1, Geometry2>::apply(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:289:80: required from 'bool boost::geometry::disjoint(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/intersects.hpp:99:53: required from 'bool boost::geometry::intersects(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
../node_modules/mapnik-vector-tile/src/vector_tile_geometry_intersects.ipp:51:53: required from here
/usr/include/boost/geometry/algorithms/within.hpp:295:55: error: 'apply' is not a member of 'boost::geometry::dispatch::within<mapnik::geometry::point<double>, mapnik::geometry::line_string<double>, boost::geometry::point_tag, boost::geometry::linestring_tag>'
>::apply(geometry1, geometry2, strategy_type());
^
In file included from /usr/include/boost/mpl/aux_/na_assert.hpp:23:0,
from /usr/include/boost/mpl/arg.hpp:25,
from /usr/include/boost/mpl/placeholders.hpp:24,
from /usr/include/boost/iterator/iterator_categories.hpp:17,
from /usr/include/boost/iterator/detail/facade_iterator_category.hpp:7,
from /usr/include/boost/iterator/iterator_facade.hpp:14,
from /usr/local/include/mapnik/feature_kv_iterator.hpp:33,
from /usr/local/include/mapnik/feature.hpp:34,
from /usr/local/include/mapnik/grid/grid_view.hpp:30,
from /usr/local/include/mapnik/grid/grid.hpp:30,
from ../src/mapnik_grid.hpp:12,
from ../src/mapnik_map.cpp:6:
/usr/include/boost/geometry/strategies/within.hpp: In instantiation of 'struct boost::geometry::strategy::within::services::default_strategy<boost::geometry::point_tag, boost::geometry::multi_linestring_tag, boost::geometry::point_tag, boost::geometry::multi_linestring_tag, boost::geometry::cartesian_tag, boost::geometry::cartesian_tag, mapnik::geometry::point<double>, mapnik::geometry::multi_line_string<double> >':
/usr/include/boost/geometry/algorithms/within.hpp:289:17: required from 'bool boost::geometry::within(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::point<double>; Geometry2 = mapnik::geometry::multi_line_string<double>]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:64:43: required from 'void boost::geometry::detail::disjoint::check_each_ring_for_within<Geometry>::apply(const Range&) [with Range = mapnik::geometry::linear_ring<double>; Geometry = mapnik::geometry::multi_line_string<double>]'
/usr/include/boost/geometry/algorithms/detail/for_each_range.hpp:44:9: required from 'static void boost::geometry::detail::for_each::fe_range_range<Range, Actor, IsConst>::apply(typename boost::geometry::add_const_if_c<IsConst, Point>::type&, Actor&) [with Range = mapnik::geometry::linear_ring<double>; Actor = boost::geometry::detail::disjoint::check_each_ring_for_within<mapnik::geometry::multi_line_string<double> >; bool IsConst = true; typename boost::geometry::add_const_if_c<IsConst, Point>::type = const mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/detail/for_each_range.hpp:139:33: required from 'void boost::geometry::detail::for_each_range(const Geometry&, Actor&) [with Geometry = mapnik::geometry::linear_ring<double>; Actor = boost::geometry::detail::disjoint::check_each_ring_for_within<mapnik::geometry::multi_line_string<double> >]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:76:56: required from 'bool boost::geometry::detail::disjoint::rings_containing(const FirstGeometry&, const SecondGeometry&) [with FirstGeometry = mapnik::geometry::multi_line_string<double>; SecondGeometry = mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:165:50: required from 'static bool boost::geometry::detail::disjoint::general_areal<Geometry1, Geometry2>::apply(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:289:80: required from 'bool boost::geometry::disjoint(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/intersects.hpp:99:53: required from 'bool boost::geometry::intersects(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
../node_modules/mapnik-vector-tile/src/vector_tile_geometry_intersects.ipp:56:53: required from here
/usr/include/boost/geometry/strategies/within.hpp:53:5: error: no matching function for call to 'assertion_failed(mpl_::failed************ (boost::geometry::strategy::within::services::default_strategy<boost::geometry::point_tag, boost::geometry::multi_linestring_tag, boost::geometry::point_tag, boost::geometry::multi_linestring_tag, boost::geometry::cartesian_tag, boost::geometry::cartesian_tag, mapnik::geometry::point<double>, mapnik::geometry::multi_line_string<double> >::NOT_IMPLEMENTED_FOR_THESE_TYPES::************)(mpl_::assert_::types<mapnik::geometry::point<double>, mapnik::geometry::multi_line_string<double>, mpl_::na, mpl_::na>))'
BOOST_MPL_ASSERT_MSG
^
/usr/include/boost/geometry/strategies/within.hpp:53:5: note: candidate is:
/usr/include/boost/mpl/assert.hpp:82:5: note: template<bool C> int mpl_::assertion_failed(typename mpl_::assert<C>::type)
int assertion_failed( typename assert<C>::type );
^
/usr/include/boost/mpl/assert.hpp:82:5: note: template argument deduction/substitution failed:
/usr/include/boost/geometry/strategies/within.hpp:53:5: note: cannot convert 'boost::geometry::strategy::within::services::default_strategy<TagContained, TagContaining, CastedTagContained, CastedTagContaining, CsTagContained, CsTagContaining, GeometryContained, GeometryContaining>::NOT_IMPLEMENTED_FOR_THESE_TYPES57::assert_arg<boost::geometry::point_tag, boost::geometry::multi_linestring_tag, boost::geometry::point_tag, boost::geometry::multi_linestring_tag, boost::geometry::cartesian_tag, boost::geometry::cartesian_tag, mapnik::geometry::point<double>, mapnik::geometry::multi_line_string<double> >()' (type 'mpl_::failed************ (boost::geometry::strategy::within::services::default_strategy<boost::geometry::point_tag, boost::geometry::multi_linestring_tag, boost::geometry::point_tag, boost::geometry::multi_linestring_tag, boost::geometry::cartesian_tag, boost::geometry::cartesian_tag, mapnik::geometry::point<double>, mapnik::geometry::multi_line_string<double> >::NOT_IMPLEMENTED_FOR_THESE_TYPES::************)(mpl_::assert_::types<mapnik::geometry::point<double>, mapnik::geometry::multi_line_string<double>, mpl_::na, mpl_::na>)') to type 'mpl_::assert<false>::type {aka mpl_::assert<false>}'
BOOST_MPL_ASSERT_MSG
^
In file included from /usr/include/boost/geometry/algorithms/covered_by.hpp:21:0,
from /usr/include/boost/geometry/algorithms/detail/disjoint.hpp:29,
from /usr/include/boost/geometry/algorithms/disjoint.hpp:29,
from /usr/include/boost/geometry/algorithms/num_points.hpp:27,
from /usr/include/boost/geometry/algorithms/detail/throw_on_empty_input.hpp:15,
from /usr/include/boost/geometry/algorithms/distance.hpp:29,
from /usr/include/boost/geometry/strategies/cartesian/centroid_weighted_length.hpp:16,
from /usr/include/boost/geometry/strategies/strategies.hpp:33,
from /usr/include/boost/geometry/geometry.hpp:35,
from /usr/include/boost/geometry.hpp:17,
from /usr/local/include/mapnik/geometry_adapters.hpp:38,
from ../node_modules/mapnik-vector-tile/src/vector_tile_geometry_clipper.hpp:11,
from ../node_modules/mapnik-vector-tile/src/vector_tile_processor.ipp:2,
from ../node_modules/mapnik-vector-tile/src/vector_tile_processor.hpp:202,
from ../src/mapnik_map.cpp:15:
/usr/include/boost/geometry/algorithms/within.hpp: In instantiation of 'bool boost::geometry::within(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::point<double>; Geometry2 = mapnik::geometry::multi_line_string<double>]':
/usr/include/boost/geometry/algorithms/disjoint.hpp:64:43: required from 'void boost::geometry::detail::disjoint::check_each_ring_for_within<Geometry>::apply(const Range&) [with Range = mapnik::geometry::linear_ring<double>; Geometry = mapnik::geometry::multi_line_string<double>]'
/usr/include/boost/geometry/algorithms/detail/for_each_range.hpp:44:9: required from 'static void boost::geometry::detail::for_each::fe_range_range<Range, Actor, IsConst>::apply(typename boost::geometry::add_const_if_c<IsConst, Point>::type&, Actor&) [with Range = mapnik::geometry::linear_ring<double>; Actor = boost::geometry::detail::disjoint::check_each_ring_for_within<mapnik::geometry::multi_line_string<double> >; bool IsConst = true; typename boost::geometry::add_const_if_c<IsConst, Point>::type = const mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/detail/for_each_range.hpp:139:33: required from 'void boost::geometry::detail::for_each_range(const Geometry&, Actor&) [with Geometry = mapnik::geometry::linear_ring<double>; Actor = boost::geometry::detail::disjoint::check_each_ring_for_within<mapnik::geometry::multi_line_string<double> >]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:76:56: required from 'bool boost::geometry::detail::disjoint::rings_containing(const FirstGeometry&, const SecondGeometry&) [with FirstGeometry = mapnik::geometry::multi_line_string<double>; SecondGeometry = mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:165:50: required from 'static bool boost::geometry::detail::disjoint::general_areal<Geometry1, Geometry2>::apply(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:289:80: required from 'bool boost::geometry::disjoint(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/intersects.hpp:99:53: required from 'bool boost::geometry::intersects(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
../node_modules/mapnik-vector-tile/src/vector_tile_geometry_intersects.ipp:56:53: required from here
/usr/include/boost/geometry/algorithms/within.hpp:289:17: error: no type named 'type' in 'struct boost::geometry::strategy::within::services::default_strategy<boost::geometry::point_tag, boost::geometry::multi_linestring_tag, boost::geometry::point_tag, boost::geometry::multi_linestring_tag, boost::geometry::cartesian_tag, boost::geometry::cartesian_tag, mapnik::geometry::point<double>, mapnik::geometry::multi_line_string<double> >'
>::type strategy_type;
^
In file included from /usr/include/boost/mpl/aux_/na_assert.hpp:23:0,
from /usr/include/boost/mpl/arg.hpp:25,
from /usr/include/boost/mpl/placeholders.hpp:24,
from /usr/include/boost/iterator/iterator_categories.hpp:17,
from /usr/include/boost/iterator/detail/facade_iterator_category.hpp:7,
from /usr/include/boost/iterator/iterator_facade.hpp:14,
from /usr/local/include/mapnik/feature_kv_iterator.hpp:33,
from /usr/local/include/mapnik/feature.hpp:34,
from /usr/local/include/mapnik/grid/grid_view.hpp:30,
from /usr/local/include/mapnik/grid/grid.hpp:30,
from ../src/mapnik_grid.hpp:12,
from ../src/mapnik_map.cpp:6:
/usr/include/boost/geometry/algorithms/not_implemented.hpp: In instantiation of 'struct boost::geometry::nyi::not_implemented_error<boost::geometry::info::POINT, boost::geometry::info::MULTI_LINESTRING, void>':
/usr/include/boost/geometry/algorithms/not_implemented.hpp:103:8: required from 'struct boost::geometry::not_implemented<boost::geometry::point_tag, boost::geometry::multi_linestring_tag, void>'
/usr/include/boost/geometry/algorithms/within.hpp:175:8: required from 'struct boost::geometry::dispatch::within<mapnik::geometry::point<double>, mapnik::geometry::multi_line_string<double>, boost::geometry::point_tag, boost::geometry::multi_linestring_tag>'
/usr/include/boost/geometry/algorithms/within.hpp:295:55: required from 'bool boost::geometry::within(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::point<double>; Geometry2 = mapnik::geometry::multi_line_string<double>]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:64:43: required from 'void boost::geometry::detail::disjoint::check_each_ring_for_within<Geometry>::apply(const Range&) [with Range = mapnik::geometry::linear_ring<double>; Geometry = mapnik::geometry::multi_line_string<double>]'
/usr/include/boost/geometry/algorithms/detail/for_each_range.hpp:44:9: required from 'static void boost::geometry::detail::for_each::fe_range_range<Range, Actor, IsConst>::apply(typename boost::geometry::add_const_if_c<IsConst, Point>::type&, Actor&) [with Range = mapnik::geometry::linear_ring<double>; Actor = boost::geometry::detail::disjoint::check_each_ring_for_within<mapnik::geometry::multi_line_string<double> >; bool IsConst = true; typename boost::geometry::add_const_if_c<IsConst, Point>::type = const mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/detail/for_each_range.hpp:139:33: required from 'void boost::geometry::detail::for_each_range(const Geometry&, Actor&) [with Geometry = mapnik::geometry::linear_ring<double>; Actor = boost::geometry::detail::disjoint::check_each_ring_for_within<mapnik::geometry::multi_line_string<double> >]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:76:56: required from 'bool boost::geometry::detail::disjoint::rings_containing(const FirstGeometry&, const SecondGeometry&) [with FirstGeometry = mapnik::geometry::multi_line_string<double>; SecondGeometry = mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:165:50: required from 'static bool boost::geometry::detail::disjoint::general_areal<Geometry1, Geometry2>::apply(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:289:80: required from 'bool boost::geometry::disjoint(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/intersects.hpp:99:53: required from 'bool boost::geometry::intersects(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
../node_modules/mapnik-vector-tile/src/vector_tile_geometry_intersects.ipp:56:53: required from here
/usr/include/boost/geometry/algorithms/not_implemented.hpp:64:5: error: no matching function for call to 'assertion_failed(mpl_::failed************ (boost::geometry::nyi::not_implemented_error<boost::geometry::info::POINT, boost::geometry::info::MULTI_LINESTRING, void>::THIS_OPERATION_IS_NOT_OR_NOT_YET_IMPLEMENTED::************)(mpl_::assert_::types<boost::geometry::info::POINT, boost::geometry::info::MULTI_LINESTRING, void, mpl_::na>))'
BOOST_MPL_ASSERT_MSG
^
/usr/include/boost/geometry/algorithms/not_implemented.hpp:64:5: note: candidate is:
/usr/include/boost/mpl/assert.hpp:82:5: note: template<bool C> int mpl_::assertion_failed(typename mpl_::assert<C>::type)
int assertion_failed( typename assert<C>::type );
^
/usr/include/boost/mpl/assert.hpp:82:5: note: template argument deduction/substitution failed:
/usr/include/boost/geometry/algorithms/not_implemented.hpp:64:5: note: cannot convert 'boost::geometry::nyi::not_implemented_error<Term1, Term2, Term3>::THIS_OPERATION_IS_NOT_OR_NOT_YET_IMPLEMENTED71::assert_arg<boost::geometry::info::POINT, boost::geometry::info::MULTI_LINESTRING, void>()' (type 'mpl_::failed************ (boost::geometry::nyi::not_implemented_error<boost::geometry::info::POINT, boost::geometry::info::MULTI_LINESTRING, void>::THIS_OPERATION_IS_NOT_OR_NOT_YET_IMPLEMENTED::************)(mpl_::assert_::types<boost::geometry::info::POINT, boost::geometry::info::MULTI_LINESTRING, void, mpl_::na>)') to type 'mpl_::assert<false>::type {aka mpl_::assert<false>}'
BOOST_MPL_ASSERT_MSG
^
In file included from /usr/include/boost/geometry/algorithms/covered_by.hpp:21:0,
from /usr/include/boost/geometry/algorithms/detail/disjoint.hpp:29,
from /usr/include/boost/geometry/algorithms/disjoint.hpp:29,
from /usr/include/boost/geometry/algorithms/num_points.hpp:27,
from /usr/include/boost/geometry/algorithms/detail/throw_on_empty_input.hpp:15,
from /usr/include/boost/geometry/algorithms/distance.hpp:29,
from /usr/include/boost/geometry/strategies/cartesian/centroid_weighted_length.hpp:16,
from /usr/include/boost/geometry/strategies/strategies.hpp:33,
from /usr/include/boost/geometry/geometry.hpp:35,
from /usr/include/boost/geometry.hpp:17,
from /usr/local/include/mapnik/geometry_adapters.hpp:38,
from ../node_modules/mapnik-vector-tile/src/vector_tile_geometry_clipper.hpp:11,
from ../node_modules/mapnik-vector-tile/src/vector_tile_processor.ipp:2,
from ../node_modules/mapnik-vector-tile/src/vector_tile_processor.hpp:202,
from ../src/mapnik_map.cpp:15:
/usr/include/boost/geometry/algorithms/within.hpp: In instantiation of 'bool boost::geometry::within(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::point<double>; Geometry2 = mapnik::geometry::multi_line_string<double>]':
/usr/include/boost/geometry/algorithms/disjoint.hpp:64:43: required from 'void boost::geometry::detail::disjoint::check_each_ring_for_within<Geometry>::apply(const Range&) [with Range = mapnik::geometry::linear_ring<double>; Geometry = mapnik::geometry::multi_line_string<double>]'
/usr/include/boost/geometry/algorithms/detail/for_each_range.hpp:44:9: required from 'static void boost::geometry::detail::for_each::fe_range_range<Range, Actor, IsConst>::apply(typename boost::geometry::add_const_if_c<IsConst, Point>::type&, Actor&) [with Range = mapnik::geometry::linear_ring<double>; Actor = boost::geometry::detail::disjoint::check_each_ring_for_within<mapnik::geometry::multi_line_string<double> >; bool IsConst = true; typename boost::geometry::add_const_if_c<IsConst, Point>::type = const mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/detail/for_each_range.hpp:139:33: required from 'void boost::geometry::detail::for_each_range(const Geometry&, Actor&) [with Geometry = mapnik::geometry::linear_ring<double>; Actor = boost::geometry::detail::disjoint::check_each_ring_for_within<mapnik::geometry::multi_line_string<double> >]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:76:56: required from 'bool boost::geometry::detail::disjoint::rings_containing(const FirstGeometry&, const SecondGeometry&) [with FirstGeometry = mapnik::geometry::multi_line_string<double>; SecondGeometry = mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:165:50: required from 'static bool boost::geometry::detail::disjoint::general_areal<Geometry1, Geometry2>::apply(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:289:80: required from 'bool boost::geometry::disjoint(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/intersects.hpp:99:53: required from 'bool boost::geometry::intersects(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
../node_modules/mapnik-vector-tile/src/vector_tile_geometry_intersects.ipp:56:53: required from here
/usr/include/boost/geometry/algorithms/within.hpp:295:55: error: 'apply' is not a member of 'boost::geometry::dispatch::within<mapnik::geometry::point<double>, mapnik::geometry::multi_line_string<double>, boost::geometry::point_tag, boost::geometry::multi_linestring_tag>'
>::apply(geometry1, geometry2, strategy_type());
^
In file included from /usr/include/boost/geometry/core/point_type.hpp:22:0,
from /usr/include/boost/geometry/core/coordinate_system.hpp:20,
from /usr/include/boost/geometry/core/cs.hpp:21,
from /usr/include/boost/geometry/geometry.hpp:19,
from /usr/include/boost/geometry.hpp:17,
from /usr/local/include/mapnik/geometry_adapters.hpp:38,
from ../node_modules/mapnik-vector-tile/src/vector_tile_geometry_clipper.hpp:11,
from ../node_modules/mapnik-vector-tile/src/vector_tile_processor.ipp:2,
from ../node_modules/mapnik-vector-tile/src/vector_tile_processor.hpp:202,
from ../src/mapnik_map.cpp:15:
/usr/include/boost/geometry/core/ring_type.hpp: In instantiation of 'struct boost::geometry::ring_return_type<const mapnik::geometry::multi_line_string<double> >':
/usr/include/boost/geometry/algorithms/detail/sections/range_by_section.hpp:116:13: required by substitution of 'template<class Geometry, class Section> typename boost::geometry::ring_return_type<const Polygon>::type boost::geometry::range_by_section(const Geometry&, const Section&) [with Geometry = mapnik::geometry::multi_line_string<double>; Section = boost::geometry::section<boost::geometry::model::box<mapnik::geometry::point<double> >, 2ul>]'
/usr/include/boost/geometry/algorithms/detail/overlay/get_turns.hpp:177:60: required from 'static bool boost::geometry::detail::get_turns::get_turns_in_sections<Geometry1, Geometry2, Reverse1, Reverse2, Section1, Section2, Turns, TurnPolicy, InterruptPolicy>::apply(int, const Geometry1&, const Section1&, int, const Geometry2&, const Section2&, bool, Turns&, InterruptPolicy&) [with Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>; bool Reverse1 = false; bool Reverse2 = false; Section1 = boost::geometry::section<boost::geometry::model::box<mapnik::geometry::point<double> >, 2ul>; Section2 = boost::geometry::section<boost::geometry::model::box<mapnik::geometry::point<double> >, 2ul>; Turns = std::deque<boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> >, std::allocator<boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> > > >; TurnPolicy = boost::geometry::detail::overlay::get_turn_info<mapnik::geometry::point<double>, mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> >, boost::geometry::detail::disjoint::assign_disjoint_policy>; InterruptPolicy = boost::geometry::detail::disjoint::disjoint_interrupt_policy]'
/usr/include/boost/geometry/algorithms/detail/overlay/get_turns.hpp:422:56: required from 'bool boost::geometry::detail::get_turns::section_visitor<Geometry1, Geometry2, Reverse1, Reverse2, Turns, TurnPolicy, InterruptPolicy>::apply(const Section&, const Section&) [with Section = boost::geometry::section<boost::geometry::model::box<mapnik::geometry::point<double> >, 2ul>; Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>; bool Reverse1 = false; bool Reverse2 = false; Turns = std::deque<boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> >, std::allocator<boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> > > >; TurnPolicy = boost::geometry::detail::overlay::get_turn_info<mapnik::geometry::point<double>, mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> >, boost::geometry::detail::disjoint::assign_disjoint_policy>; InterruptPolicy = boost::geometry::detail::disjoint::disjoint_interrupt_policy]'
/usr/include/boost/geometry/algorithms/detail/partition.hpp:415:21: required from 'static void boost::geometry::partition<Box, ExpandPolicy, OverlapsPolicy, VisitBoxPolicy>::apply(const InputCollection&, const InputCollection&, VisitPolicy&, std::size_t, VisitBoxPolicy) [with InputCollection = boost::geometry::sections<boost::geometry::model::box<mapnik::geometry::point<double> >, 2ul>; VisitPolicy = boost::geometry::detail::get_turns::section_visitor<mapnik::geometry::multi_line_string<double>, mapnik::geometry::linear_ring<double>, false, false, std::deque<boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> >, std::allocator<boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> > > >, boost::geometry::detail::overlay::get_turn_info<mapnik::geometry::point<double>, mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> >, boost::geometry::detail::disjoint::assign_disjoint_policy>, boost::geometry::detail::disjoint::disjoint_interrupt_policy>; Box = boost::geometry::model::box<mapnik::geometry::point<double> >; ExpandPolicy = boost::geometry::detail::get_turns::get_section_box; OverlapsPolicy = boost::geometry::detail::get_turns::ovelaps_section_box; VisitBoxPolicy = boost::geometry::visit_no_policy; std::size_t = long unsigned int]'
/usr/include/boost/geometry/algorithms/detail/overlay/get_turns.hpp:468:41: required from 'static void boost::geometry::detail::get_turns::get_turns_generic<Geometry1, Geometry2, Reverse1, Reverse2, Turns, TurnPolicy, InterruptPolicy>::apply(int, const Geometry1&, int, const Geometry2&, Turns&, InterruptPolicy&) [with Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>; bool Reverse1 = false; bool Reverse2 = false; Turns = std::deque<boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> >, std::allocator<boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> > > >; TurnPolicy = boost::geometry::detail::overlay::get_turn_info<mapnik::geometry::point<double>, mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> >, boost::geometry::detail::disjoint::assign_disjoint_policy>; InterruptPolicy = boost::geometry::detail::disjoint::disjoint_interrupt_policy]'
/usr/include/boost/geometry/algorithms/detail/overlay/get_turns.hpp:881:36: required from 'void boost::geometry::get_turns(const Geometry1&, const Geometry2&, Turns&, InterruptPolicy&) [with bool Reverse1 = false; bool Reverse2 = false; AssignPolicy = boost::geometry::detail::disjoint::assign_disjoint_policy; Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>; Turns = std::deque<boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> >, std::allocator<boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> > > >; InterruptPolicy = boost::geometry::detail::disjoint::disjoint_interrupt_policy]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:121:50: required from 'static bool boost::geometry::detail::disjoint::disjoint_linear<Geometry1, Geometry2>::apply(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:158:80: required from 'static bool boost::geometry::detail::disjoint::general_areal<Geometry1, Geometry2>::apply(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:289:80: required from 'bool boost::geometry::disjoint(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/intersects.hpp:99:53: required from 'bool boost::geometry::intersects(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
../node_modules/mapnik-vector-tile/src/vector_tile_geometry_intersects.ipp:56:53: required from here
/usr/include/boost/geometry/core/ring_type.hpp:163:17: error: no type named 'type' in 'struct boost::geometry::core_dispatch::ring_return_type<boost::geometry::multi_linestring_tag, const mapnik::geometry::multi_line_string<double> >'
>::type type;
^
In file included from /usr/include/boost/geometry/algorithms/disjoint.hpp:32:0,
from /usr/include/boost/geometry/algorithms/num_points.hpp:27,
from /usr/include/boost/geometry/algorithms/detail/throw_on_empty_input.hpp:15,
from /usr/include/boost/geometry/algorithms/distance.hpp:29,
from /usr/include/boost/geometry/strategies/cartesian/centroid_weighted_length.hpp:16,
from /usr/include/boost/geometry/strategies/strategies.hpp:33,
from /usr/include/boost/geometry/geometry.hpp:35,
from /usr/include/boost/geometry.hpp:17,
from /usr/local/include/mapnik/geometry_adapters.hpp:38,
from ../node_modules/mapnik-vector-tile/src/vector_tile_geometry_clipper.hpp:11,
from ../node_modules/mapnik-vector-tile/src/vector_tile_processor.ipp:2,
from ../node_modules/mapnik-vector-tile/src/vector_tile_processor.hpp:202,
from ../src/mapnik_map.cpp:15:
/usr/include/boost/geometry/algorithms/detail/overlay/get_turns.hpp: In instantiation of 'static bool boost::geometry::detail::get_turns::get_turns_in_sections<Geometry1, Geometry2, Reverse1, Reverse2, Section1, Section2, Turns, TurnPolicy, InterruptPolicy>::apply(int, const Geometry1&, const Section1&, int, const Geometry2&, const Section2&, bool, Turns&, InterruptPolicy&) [with Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>; bool Reverse1 = false; bool Reverse2 = false; Section1 = boost::geometry::section<boost::geometry::model::box<mapnik::geometry::point<double> >, 2ul>; Section2 = boost::geometry::section<boost::geometry::model::box<mapnik::geometry::point<double> >, 2ul>; Turns = std::deque<boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> >, std::allocator<boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> > > >; TurnPolicy = boost::geometry::detail::overlay::get_turn_info<mapnik::geometry::point<double>, mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> >, boost::geometry::detail::disjoint::assign_disjoint_policy>; InterruptPolicy = boost::geometry::detail::disjoint::disjoint_interrupt_policy]':
/usr/include/boost/geometry/algorithms/detail/overlay/get_turns.hpp:422:56: required from 'bool boost::geometry::detail::get_turns::section_visitor<Geometry1, Geometry2, Reverse1, Reverse2, Turns, TurnPolicy, InterruptPolicy>::apply(const Section&, const Section&) [with Section = boost::geometry::section<boost::geometry::model::box<mapnik::geometry::point<double> >, 2ul>; Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>; bool Reverse1 = false; bool Reverse2 = false; Turns = std::deque<boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> >, std::allocator<boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> > > >; TurnPolicy = boost::geometry::detail::overlay::get_turn_info<mapnik::geometry::point<double>, mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> >, boost::geometry::detail::disjoint::assign_disjoint_policy>; InterruptPolicy = boost::geometry::detail::disjoint::disjoint_interrupt_policy]'
/usr/include/boost/geometry/algorithms/detail/partition.hpp:415:21: required from 'static void boost::geometry::partition<Box, ExpandPolicy, OverlapsPolicy, VisitBoxPolicy>::apply(const InputCollection&, const InputCollection&, VisitPolicy&, std::size_t, VisitBoxPolicy) [with InputCollection = boost::geometry::sections<boost::geometry::model::box<mapnik::geometry::point<double> >, 2ul>; VisitPolicy = boost::geometry::detail::get_turns::section_visitor<mapnik::geometry::multi_line_string<double>, mapnik::geometry::linear_ring<double>, false, false, std::deque<boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> >, std::allocator<boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> > > >, boost::geometry::detail::overlay::get_turn_info<mapnik::geometry::point<double>, mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> >, boost::geometry::detail::disjoint::assign_disjoint_policy>, boost::geometry::detail::disjoint::disjoint_interrupt_policy>; Box = boost::geometry::model::box<mapnik::geometry::point<double> >; ExpandPolicy = boost::geometry::detail::get_turns::get_section_box; OverlapsPolicy = boost::geometry::detail::get_turns::ovelaps_section_box; VisitBoxPolicy = boost::geometry::visit_no_policy; std::size_t = long unsigned int]'
/usr/include/boost/geometry/algorithms/detail/overlay/get_turns.hpp:468:41: required from 'static void boost::geometry::detail::get_turns::get_turns_generic<Geometry1, Geometry2, Reverse1, Reverse2, Turns, TurnPolicy, InterruptPolicy>::apply(int, const Geometry1&, int, const Geometry2&, Turns&, InterruptPolicy&) [with Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>; bool Reverse1 = false; bool Reverse2 = false; Turns = std::deque<boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> >, std::allocator<boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> > > >; TurnPolicy = boost::geometry::detail::overlay::get_turn_info<mapnik::geometry::point<double>, mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> >, boost::geometry::detail::disjoint::assign_disjoint_policy>; InterruptPolicy = boost::geometry::detail::disjoint::disjoint_interrupt_policy]'
/usr/include/boost/geometry/algorithms/detail/overlay/get_turns.hpp:881:36: required from 'void boost::geometry::get_turns(const Geometry1&, const Geometry2&, Turns&, InterruptPolicy&) [with bool Reverse1 = false; bool Reverse2 = false; AssignPolicy = boost::geometry::detail::disjoint::assign_disjoint_policy; Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>; Turns = std::deque<boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> >, std::allocator<boost::geometry::detail::overlay::turn_info<mapnik::geometry::point<double>, boost::geometry::detail::overlay::turn_operation, boost::array<boost::geometry::detail::overlay::turn_operation, 2ul> > > >; InterruptPolicy = boost::geometry::detail::disjoint::disjoint_interrupt_policy]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:121:50: required from 'static bool boost::geometry::detail::disjoint::disjoint_linear<Geometry1, Geometry2>::apply(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:158:80: required from 'static bool boost::geometry::detail::disjoint::general_areal<Geometry1, Geometry2>::apply(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/disjoint.hpp:289:80: required from 'bool boost::geometry::disjoint(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
/usr/include/boost/geometry/algorithms/intersects.hpp:99:53: required from 'bool boost::geometry::intersects(const Geometry1&, const Geometry2&) [with Geometry1 = mapnik::geometry::multi_line_string<double>; Geometry2 = mapnik::geometry::linear_ring<double>]'
../node_modules/mapnik-vector-tile/src/vector_tile_geometry_intersects.ipp:56:53: required from here
/usr/include/boost/geometry/algorithms/detail/overlay/get_turns.hpp:177:60: error: no matching function for call to 'range_by_section(const mapnik::geometry::multi_line_string<double>&, const boost::geometry::section<boost::geometry::model::box<mapnik::geometry::point<double> >, 2ul>&)'
cview_type1 cview1(range_by_section(geometry1, sec1));
^
/usr/include/boost/geometry/algorithms/detail/overlay/get_turns.hpp:177:60: note: candidate is:
In file included from /usr/include/boost/geometry/algorithms/detail/overlay/get_turns.hpp:53:0,
from /usr/include/boost/geometry/algorithms/disjoint.hpp:32,
from /usr/include/boost/geometry/algorithms/num_points.hpp:27,
from /usr/include/boost/geometry/algorithms/detail/throw_on_empty_input.hpp:15,
from /usr/include/boost/geometry/algorithms/distance.hpp:29,
from /usr/include/boost/geometry/strategies/cartesian/centroid_weighted_length.hpp:16,
from /usr/include/boost/geometry/strategies/strategies.hpp:33,
from /usr/include/boost/geometry/geometry.hpp:35,
from /usr/include/boost/geometry.hpp:17,
from /usr/local/include/mapnik/geometry_adapters.hpp:38,
from ../node_modules/mapnik-vector-tile/src/vector_tile_geometry_clipper.hpp:11,
from ../node_modules/mapnik-vector-tile/src/vector_tile_processor.ipp:2,
from ../node_modules/mapnik-vector-tile/src/vector_tile_processor.hpp:202,
from ../src/mapnik_map.cpp:15:
/usr/include/boost/geometry/algorithms/detail/sections/range_by_section.hpp:116:13: note: template<class Geometry, class Section> typename boost::geometry::ring_return_type<const Polygon>::type boost::geometry::range_by_section(const Geometry&, const Section&)
range_by_section(Geometry const& geometry, Section const& section)
^
/usr/include/boost/geometry/algorithms/detail/sections/range_by_section.hpp:116:13: note: substitution of deduced template arguments resulted in errors seen above
In file included from ../node_modules/mapnik-vector-tile/src/vector_tile_processor.ipp:2:0,
from ../node_modules/mapnik-vector-tile/src/vector_tile_processor.hpp:202,
from ../src/mapnik_map.cpp:15:
../node_modules/mapnik-vector-tile/src/vector_tile_geometry_clipper.hpp: In function 'ClipperLib::PolyFillType mapnik::vector_tile_impl::detail::get_angus_fill_type(mapnik::vector_tile_impl::polygon_fill_type)':
../node_modules/mapnik-vector-tile/src/vector_tile_geometry_clipper.hpp:47:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
make: *** [Release/obj.target/mapnik/src/mapnik_map.o] Error 1
make: Leaving directory `/systemapic/dev/node_modules/mapnik/build'
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack at ChildProcess.onExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:269:23)
gyp ERR! stack at ChildProcess.emit (events.js:98:17)
gyp ERR! stack at Process.ChildProcess._handle.onexit (child_process.js:820:12)
gyp ERR! System Linux 3.13.0-36-generic
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "build" "--fallback-to-build" "--module=/systemapic/dev/node_modules/mapnik/lib/binding/node-v11-linux-x64/mapnik.node" "--module_name=mapnik" "--module_path=/systemapic/dev/node_modules/mapnik/lib/binding/node-v11-linux-x64"
gyp ERR! cwd /systemapic/dev/node_modules/mapnik
gyp ERR! node -v v0.10.40
gyp ERR! node-gyp -v v2.0.1
gyp ERR! not ok
node-pre-gyp ERR! build error
node-pre-gyp ERR! stack Error: Failed to execute '/usr/local/bin/node /usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --module=/systemapic/dev/node_modules/mapnik/lib/binding/node-v11-linux-x64/mapnik.node --module_name=mapnik --module_path=/systemapic/dev/node_modules/mapnik/lib/binding/node-v11-linux-x64' (1)
node-pre-gyp ERR! stack at ChildProcess.<anonymous> (/systemapic/dev/node_modules/mapnik/node_modules/node-pre-gyp/lib/util/compile.js:83:29)
node-pre-gyp ERR! stack at ChildProcess.emit (events.js:98:17)
node-pre-gyp ERR! stack at maybeClose (child_process.js:766:16)
node-pre-gyp ERR! stack at Process.ChildProcess._handle.onexit (child_process.js:833:5)
node-pre-gyp ERR! System Linux 3.13.0-36-generic
node-pre-gyp ERR! command "node" "/systemapic/dev/node_modules/mapnik/node_modules/.bin/node-pre-gyp" "install" "--fallback-to-build"
node-pre-gyp ERR! cwd /systemapic/dev/node_modules/mapnik
node-pre-gyp ERR! node -v v0.10.40
node-pre-gyp ERR! node-pre-gyp -v v0.6.22
node-pre-gyp ERR! not ok
Failed to execute '/usr/local/bin/node /usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --module=/systemapic/dev/node_modules/mapnik/lib/binding/node-v11-linux-x64/mapnik.node --module_name=mapnik --module_path=/systemapic/dev/node_modules/mapnik/lib/binding/node-v11-linux-x64' (1)
npm ERR! Linux 3.13.0-36-generic
npm ERR! argv "node" "/usr/local/bin/npm" "install" "mapnik" "--build-from-source"
npm ERR! node v0.10.40
npm ERR! npm v2.11.3
npm ERR! code ELIFECYCLE
npm ERR! mapnik@3.5.2 install: `node-pre-gyp install --fallback-to-build`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the mapnik@3.5.2 install script 'node-pre-gyp install --fallback-to-build'.
npm ERR! This is most likely a problem with the mapnik package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! node-pre-gyp install --fallback-to-build
npm ERR! You can get their info via:
npm ERR! npm owner ls mapnik
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! /systemapic/dev/npm-debug.log
Sorry, @strk, perhaps you can figure it out.
I'm on it. Meanwhile the PR is about to be accepted...
I found node uses a local build of at least plugins, possibly even libmapnik itself, see:
/systemapic/prod/pile/mapnik-omnivore/node_modules/mapnik/lib/binding/node-v11-linux-x64/mapnik/input/pgraster.input /systemapic/prod/pile/mapnik/lib/binding/node-v11-linux-x64/mapnik/input/pgraster.input /tmp/node_modules/mapnik-omnivore/node_modules/mapnik/lib/binding/node-v11-linux-x64/mapnik/input/pgraster.input /tmp/node_modules/mapnik/lib/binding/node-v11-linux-x64/mapnik/input/pgraster.input
I'll figure out what "mapnik-ominvore" is ...
digging further I also discovered that the "start.sh" script in pile docker runs another npm install, after the one run at image build time... confusing
So this should be fixed by 6e69319502d5eefc10d0baf7b5ae1ca92a869886
Assuming the fix was good, closing.
Rasters are tiled on import with
raster2pgsql -t $TILESIZE ...
, but are not rendered properly.This is likely due to a Mapnik bug: https://github.com/mapnik/mapnik/issues/2375.
Raster displays properly if tiles are concatted in PostGIS, ie. likely not a problem with the raster2pgsql tiling.
Screendumps
Setting![screen shot 2016-02-26 at 3 12 10 pm](https://cloud.githubusercontent.com/assets/2197944/13354494/a8e56b4c-dc9b-11e5-88a5-f872343ba8ab.png)
$TILESIZE
to "auto" yields this result:Setting![screen shot 2016-02-26 at 3 16 04 pm](https://cloud.githubusercontent.com/assets/2197944/13354529/e4500a3e-dc9b-11e5-914f-7eb617a6b962.png)
$TILESIZE
to "128x128" yields this: