// Boost.Geometry // Copyright (c) 2022 Oracle and/or its affiliates. // Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle // Use, modification and distribution is subject to the Boost Software License, // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at // http://www.boost.org/LICENSE_1_0.txt) #include "test_crosses.hpp" using pt_t = bg::model::point; using ls_t = bg::model::linestring; using po_t = bg::model::polygon; using mpt_t = bg::model::multi_point; using mls_t = bg::model::multi_linestring; using mpo_t = bg::model::multi_polygon; using var_t = boost::variant; //using var_t = boost::variant2::variant; using gc_t = bg::model::geometry_collection; void test_gc() { test_geometry("GEOMETRYCOLLECTION(LINESTRING(0 0, 10 10))", "GEOMETRYCOLLECTION(POLYGON((0 0,0 5,5 5,5 0,0 0)))", true); test_geometry("GEOMETRYCOLLECTION(LINESTRING(0 0, 10 0))", "GEOMETRYCOLLECTION(POLYGON((0 0,0 5,5 5,5 0,0 0)))", false); test_geometry("GEOMETRYCOLLECTION(LINESTRING(0 0, 10 0), POINT(1 1))", "GEOMETRYCOLLECTION(POLYGON((0 0,0 5,5 5,5 0,0 0)))", true); test_geometry("GEOMETRYCOLLECTION(LINESTRING(0 0, 10 0))", "GEOMETRYCOLLECTION(POLYGON((0 0,0 5,5 5,5 0,0 0)), POINT(9 0))", true); test_geometry("GEOMETRYCOLLECTION(LINESTRING(0 0, 10 0))", "GEOMETRYCOLLECTION(POLYGON((0 0,0 5,5 5,5 0,0 0)), POINT(10 0))", false); test_geometry("LINESTRING(0 0, 10 10)", "GEOMETRYCOLLECTION(POLYGON((0 0,0 5,5 5,5 0,0 0)))", true); test_geometry("GEOMETRYCOLLECTION(LINESTRING(0 0, 10 0))", "POLYGON((0 0,0 5,5 5,5 0,0 0))", false); test_geometry("LINESTRING(0 0,2 2,4 4)", "GEOMETRYCOLLECTION(LINESTRING(0 1,2 1,3 1))", true); test_geometry("GEOMETRYCOLLECTION(LINESTRING(0 0,2 2,4 4))", "LINESTRING(0 1,1 1,2 2,3 2)", false); } int test_main(int , char* []) { test_gc(); return 0; }