私はboost::geometryが初めてで、ドキュメントやここで例を見つけることができません。各行に wkt GEOMETRYCOLLECTION を含むテキスト ファイルがあります。すべてのコレクションは、1 つ以上の MULTIPOINTS を保持します。MULTIPOINTS の解析は問題ありません。
typedef boost::geometry::model::point<double, 3, boost::geometry::cs::cartesian> point;
typedef boost::geometry::model::multi_point<point> multipoint;
multipoint myPoints;
boost::geometry::read_wkt("MULTIPOINT ((123456.123 1234567.123 42.42), (654321.123 7654321.123 123.12))", myPoints);
// do something with myPoints
for (auto &point : myPoints) {
std::cout << point.get<0>() << " " << point.get<1>() << " " << point.get<2>() << std::endl;
}
しかし、私はこのようなものを解析する必要があります:
bg::read_wkt("GEOMETRYCOLLECTION (MULTIPOINT ((1 2 3), (3 2 1)), MULTIPOINT ((4 5 6), (7 8 9)))", myCollection);
これを行う方法はありますか?