Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения

model::box

Boost , Chapter 1. Geometry , Models

Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

PrevUpHomeNext

Классовая коробка: определяет коробку, состоящую из двух описательных точек.

Description

Коробка всегда описывается точкой min_corner() и max_corner(). Если используется другой прямоугольник, используйте линейное кольцо или полигон.

Model of

Box Concept

Synopsis

template<typename Point>
class model::box
{
  // ...
};

Template parameter(s)

Параметр

Описание

Точка печатания

Тип точки. Коробка принимает тип точки в качестве параметра шаблона. Тип точки может быть любой тип точки. Он может быть 2D, но также может быть 3D или более объемным. Коробка также может принимать тип точки латлонга в качестве параметра шаблона.

Constructor(s)

Функция

Описание

Параметры

box()

Конструктор по умолчанию, без инициализации.

box(Point const & min_corner, Point const & max_corner)

Конструктор берет минимальную угловую точку и максимальную угловую точку.

Пойнт-конст-энд-эмп;:Мин-корнер:

Пойнт-конст-энд-эмп;:max_corner:

Member Function(s)

Функция

Описание

Параметры

Возвращение

Point const & min_corner()

<
Pointconst&max_corner()
>

<
Point&min_corner()
>

Point & max_corner()

Header

Либо

#include <boost/geometry/geometries/geometries.hpp>

Либо

#include <boost/geometry/geometries/box.hpp>

Examples

Декларация и использование Роста. Геометрическая модель: коробка, моделирование концепции коробки

#include <iostream>
#include <boost/geometry.hpp>
namespace bg = boost::geometry;
int main()
{
    typedef bg::model::point<double, 2, bg::cs::cartesian> point_t;
    typedef bg::model::box<point_t> box_t;
    box_t box1; 1
    box_t box2(point_t(0.0, 0.0), point_t(5.0, 5.0)); 2
#ifndef BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX
    box_t box3{{0.0, 0.0}, {5.0, 5.0}}; 3
#endif
    bg::set<bg::min_corner, 0>(box1, 1.0); 4
    bg::set<bg::min_corner, 1>(box1, 2.0);
    box1.max_corner().set<0>(3.0); 5
    box1.max_corner().set<1>(4.0);
    double min_x = bg::get<bg::min_corner, 0>(box1); 6
    double min_y = bg::get<bg::min_corner, 1>(box1);
    double max_x = box1.max_corner().get<0>(); 7
    double max_y = box1.max_corner().get<1>();
    std::cout << min_x << ", " << min_y << ", " << max_x << ", " << max_y << std::endl;
    return 0;
}

1

По умолчанию - построить коробку.

2

Конструкция, назначение мин и макс угловой точки.

3

Конструкция с использованием унифицированного синтаксиса инициализации C++11.

4

Установите координаты, дженерик.

5

Установите координату, специфичную для классаПримечание: предпочесть<bg::set()>.

6

Получи координату, дженерик.

7

Получить координату, специфичную для классаПримечание: предпочесть<bg::get()>.

Результат:

1, 2, 3, 4

PrevUpHomeNext

Статья model::box раздела Chapter 1. Geometry Models может быть полезна для разработчиков на c++ и boost.




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



:: Главная :: Models ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-30 11:47:00
2025-05-19 19:14:28/0.028615951538086/1