![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
model::ringBoost , Chapter 1. Geometry , Models
|
Параметр |
по умолчанию |
Описание |
---|---|---|
Точка печатания | Тип точки | |
Буль ClockWise | Правда | истинно для направления по часовой стрелке, ложно для направления CounterClockWise |
Буль закрыт | Правда | истинно для замкнутых многоугольников (последняя точка == первая точка), ложнооткрытые точки |
template< typename, typename >class Container | std::vector | Тип контейнера, например std::vector, std::deque |
шаблон< имя типа >распределитель классов | std::allocator | контейнер-аллокатор |
Функция |
Описание |
Параметры |
---|---|---|
ring()
| По умолчанию конструктор, создающий пустое кольцо. | |
template<typename Iterator> ring(Iterator begin, Iterator end)
| Конструктор с началом и концом, заполняющий кольцо. | Итератор:начать: Итератор:конец: |
ring(std::initializer_list< Point > l)
| Конструктор, принимающий std::initializer_list, заполняющий кольцо. | std::initializer_list< Точка >:l: |
Или
#include <boost/geometry/geometries/geometries.hpp>
Или
#include <boost/geometry/geometries/ring.hpp>
Декларация и использование Роста. Геометрическая модель: ринг, моделирование концепции кольца
#include <iostream> #include <boost/geometry.hpp> #include <boost/geometry/geometries/geometries.hpp> namespace bg = boost::geometry; int main() { typedef bg::model::point<double, 2, bg::cs::cartesian> point_t; typedef bg::model::ring<point_t> ring_t;ring_t ring1;
#if !defined(BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX) \ && !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST) ring_t ring2{{0.0, 0.0}, {0.0, 5.0}, {5.0, 5.0}, {5.0, 0.0}, {0.0, 0.0}};
#endif bg::append(ring1, point_t(0.0, 0.0));
bg::append(ring1, point_t(0.0, 5.0)); bg::append(ring1, point_t(5.0, 5.0)); bg::append(ring1, point_t(5.0, 0.0)); bg::append(ring1, point_t(0.0, 0.0)); double a = bg::area(ring1); std::cout << a << std::endl; return 0; }
Параметры по умолчанию, по часовой стрелке, замкнутое кольцо. | |
По умолчанию - построить кольцо. | |
Постройте кольцо, содержащее четыре точки плюс одну точку закрытия, используя унифицированный синтаксис инициализации C++11. | |
Добавить пункт. |
Результат:
25
Статья model::ring раздела Chapter 1. Geometry Models может быть полезна для разработчиков на c++ и boost.
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
реклама |