![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
is_simpleBoost , Chapter 1. Geometry , Algorithms
|
Тип |
Концепция |
Имя |
Описание |
---|---|---|---|
Geometry const & | Любой тип, выполняющий концепцию геометрии | геометрия | Модель указанной концепции |
Вернется, если геометрия проста
Или
#include <boost/геометрия.hpp>
Или
#include <boost/geometry/algorithms/is_simple.hpp>
Функция is_simple реализует функцию IsSimple от OGC Simple Feature Specification.
Геометрия |
Статус |
---|---|
Точка | |
Сегмент | |
Box | |
Линии | |
Кольцо | |
Полигон | |
MultiPoint | |
MultiLinestring | |
MultiPolygon | |
Вариант | |
Постоянное время для точек, сегментов и боксов
Линейный для колец, многоугольников и многополигонов
Linearithmic для многоточечных, линейных и многолинейных линий
Проверьте, является ли геометрия простой
#include <iostream> #include <boost/geometry.hpp> #include <boost/geometry/geometries/point_xy.hpp> #include <boost/geometry/geometries/linestring.hpp> #include <boost/geometry/geometries/multi_linestring.hpp> int main() { typedef boost::geometry::model::d2::point_xy<double> point_type; typedef boost::geometry::model::linestring<point_type> linestring_type; typedef boost::geometry::model::multi_linestring<linestring_type> multi_linestring_type; multi_linestring_type multi_linestring; boost::geometry::read_wkt("MULTILINESTRING((0 0,0 10,10 10,10 0,0 0),(10 10,20 20))", multi_linestring); std::cout << "is simple? " << (boost::geometry::is_simple(multi_linestring) ? "yes" : "no") << std::endl; return 0; }
Результат:
is simple? no![]()
Статья is_simple раздела Chapter 1. Geometry Algorithms может быть полезна для разработчиков на c++ и boost.
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
:: Главная :: Algorithms ::
реклама |