Opened 9 years ago
Last modified 7 years ago
#9066 new Bugs
Add support for MultiPoint WKB format
Reported by: | Mateusz Loskot | Owned by: | Mateusz Loskot |
---|---|---|---|
Milestone: | To Be Determined | Component: | geometry |
Version: | Boost Development Trunk | Severity: | Not Applicable |
Keywords: | wkb | Cc: |
Description
Mats Taraldsvik posted three patches to the list with MultiPoint WKB support:
- 0001-Adds-an-equal-check-for-MultiPoints-with-number-of-p.patch
- 0002-Adds-support-for-reading-MultiPoint-WKB.patch
- 0003-Add-tests-for-MultiPoint-WKB.patch
Those patches have been generated in Git format against the Git mirros. I have refactored them into SVN format using simple command.
So, here is combined version of Mats' changes in more convenient form ready for review.
I also have added Jamfile.v2 files, so it is ready to build and test.
Attachments (6)
Change History (9)
by , 9 years ago
Attachment: | Mats-Taraldsvik-MultiPoint-WKB.patch added |
---|
comment:1 by , 9 years ago
The patch looks good to me. It's a good start for the WKB support for multi-geometries.
The read_wkb tests pass:
$ cd ~/dev/boost/_svn/trunk/libs/geometry/extensions/test/gis/io/wkb $ b2 ...patience... ...patience... ...found 1506 targets... ...updating 4 targets... gcc.compile.c++ ../../../../../../../bin.v2/libs/geometry/extensions/test/gis/io/wkb/read_wkb.test/gcc-4.8.1/debug/read_wkb.o In file included from ../../../../../../../boost/bind/bind.hpp:29:0, from ../../../../../../../boost/bind.hpp:22, from ../../../../../../../boost/test/impl/framework.ipp:46, from ../../../../../../../boost/test/included/test_exec_monitor.hpp:22, from read_wkb.cpp:14: ../../../../../../../boost/bind/arg.hpp: In constructor ‘boost::arg<I>::arg(const T&)’: ../../../../../../../boost/bind/arg.hpp:37:22: warning: typedef ‘T_must_be_placeholder’ locally defined but not used [-Wunused-local-typedefs] typedef char T_must_be_placeholder[ I == is_placeholder<T>::value? 1: -1 ]; ^ In file included from ../../../../../../../boost/tuple/tuple.hpp:33:0, from ../../../../../../../boost/geometry/policies/relate/tupled.hpp:15, from ../../../../../../../boost/geometry/strategies/intersection.hpp:17, from ../../../../../../../boost/geometry/algorithms/detail/overlay/get_turns.hpp:43, from ../../../../../../../boost/geometry/algorithms/disjoint.hpp:32, from ../../../../../../../boost/geometry/algorithms/num_points.hpp:26, from ../../../../../../../boost/geometry/algorithms/equals.hpp:36, from read_wkb.cpp:19: ../../../../../../../boost/tuple/detail/tuple_basic.hpp: In function ‘typename boost::tuples::access_traits<typename boost::tuples::element<N, boost::tuples::cons<HT, TT> >::type>::const_type boost::tuples::get(const boost::tuples::cons<HT, TT>&)’: ../../../../../../../boost/tuple/detail/tuple_basic.hpp:228:45: warning: typedef ‘cons_element’ locally defined but not used [-Wunused-local-typedefs] typedef BOOST_DEDUCED_TYPENAME impl::type cons_element; ^ In file included from ../../../../../../../boost/geometry/extensions/gis/io/wkb/read_wkb.hpp:18:0, from read_wkb.cpp:22: ../../../../../../../boost/geometry/extensions/gis/io/wkb/detail/parser.hpp: In static member function ‘static bool boost::geometry::detail::wkb::linestring_parser<L>::parse(Iterator&, Iterator, L&, boost::geometry::detail::wkb::byte_order_type::enum_t)’: ../../../../../../../boost/geometry/extensions/gis/io/wkb/detail/parser.hpp:239:46: warning: typedef ‘point_type’ locally defined but not used [-Wunused-local-typedefs] typedef typename point_type<L>::type point_type; ^ read_wkb.cpp: In function ‘int test_main(int, char**)’: read_wkb.cpp:74:47: warning: typedef ‘linestring_type’ locally defined but not used [-Wunused-local-typedefs] typedef bg::model::linestring<point_type> linestring_type; ^ gcc.link ../../../../../../../bin.v2/libs/geometry/extensions/test/gis/io/wkb/read_wkb.test/gcc-4.8.1/debug/read_wkb testing.capture-output ../../../../../../../bin.v2/libs/geometry/extensions/test/gis/io/wkb/read_wkb.test/gcc-4.8.1/debug/read_wkb.run **passed** ../../../../../../../bin.v2/libs/geometry/extensions/test/gis/io/wkb/read_wkb.test/gcc-4.8.1/debug/read_wkb.test ...updated 4 targets...
by , 9 years ago
Attachment: | Mats-Taraldsvik-MultiPoint-WKB-linestring-test-fixed.patch added |
---|
This is Mats' patch with missing #include <boost/geometry/strategies/strategies.hpp> added to fix compilation of linestring test case
by , 9 years ago
Previous version of the patch with polygon test added: compiles using GCC 4.8 and clang 3.3. svn diff against trunk r86415
by , 9 years ago
Attachment: | Mats-Taraldsvik-AddMultiWKBSupport.patch added |
---|
Current complete patchset for multigeometry WKB support
by , 9 years ago
Attachment: | Mats-Taraldsvik-AddMultiLineStringMultiPolygonSupport.patch added |
---|
Add support for MultiLinestring and MultiPolygon
comment:2 by , 9 years ago
I have implemented support and tests for MultiLinestring and MultiPolygon as well, and attached a patch for this, as well as a complete diff for the whole WKB support. I have used the git diff command described in the earlier comment to make it svn compatible.
by , 9 years ago
Attachment: | complete-extensions-gis-io-wkb-with-multi.patch added |
---|
Updated last patch from Mats with WKB support for simple and multi-geometries. Added Jamfile.v2 files, fixed compiler warnings and added TODO comment.
comment:3 by , 7 years ago
This ticket can be considered addressed by this PR https://github.com/boostorg/geometry/pull/322
Combined patch with Mats' changes generated against SVN trunk r85516