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

make (2 coordinate values)

Boost , Chapter 1. Geometry , make

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

Постройте геометрию.

Synopsis

template<typename Geometry, typename Type>
Geometry make(Type const & c1, Type const & c2)

Parameters

Тип

Концепция

Имя

Описание

Геометрия

Любой тип, выполняющий концепцию геометрии

-

Должен быть указан

Тип const &

числовой тип (int, double, ttmath, ...) для указания координат

с1

Первая координата (обычно x-координата)

Тип const &

числовой тип (int, double, ttmath, ...) для указания координат

с2

Вторая координата (обычно Y-координата)

Returns

Сконструированная геометрия: 2D точка

Header

Либо

#include <boost/geometry.hpp>

Либо

#include <boost/geometry/algorithms/make.hpp>

Example

Показывает использование макияжа в качестве общего конструктора для различных типов точек

#include <iostream>
#include <boost/geometry.hpp>
#include <boost/geometry/geometries/point_xy.hpp>
#include <boost/geometry/geometries/register/point.hpp>
#include <boost/geometry/geometries/adapted/boost_tuple.hpp>
#include <boost/geometry/geometries/adapted/boost_polygon/point.hpp>
BOOST_GEOMETRY_REGISTER_BOOST_TUPLE_CS(cs::cartesian)
struct mypoint { float _x, _y; };
BOOST_GEOMETRY_REGISTER_POINT_2D(mypoint, float, cs::cartesian, _x, _y)
template <typename Point>
void construct_and_display()
{
    using boost::geometry::make;
    using boost::geometry::get;
    Point p = make<Point>(1, 2);
    std::cout << "x=" << get<0>(p) << " y=" << get<1>(p)
        << " (" << typeid(Point).name() << ")"
        << std::endl;
}
int main()
{
    construct_and_display<boost::geometry::model::d2::point_xy<double> >();
    construct_and_display<boost::geometry::model::d2::point_xy<int> >();
    construct_and_display<boost::tuple<double, double> >();
    construct_and_display<boost::polygon::point_data<int> >();
    construct_and_display<mypoint>();
    return 0;
}

Выход (составлен с использованием gcc):

x=1 y=2 (N5boost8geometry5model2d28point_xyIdNS0_2cs9cartesianEEE)
x=1 y=2 (N5boost8geometry5model2d28point_xyIiNS0_2cs9cartesianEEE)
x=1 y=2 (N5boost6tuples5tupleIddNS0_9null_typeES2_S2_S2_S2_S2_S2_S2_EE)
x=1 y=2 (N5boost7polygon10point_dataIiEE)
x=1 y=2 (7mypoint)
See also

PrevUpHomeNext

Статья make (2 coordinate values) раздела Chapter 1. Geometry make может быть полезна для разработчиков на c++ и boost.




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



:: Главная :: make ::


реклама


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

Время компиляции файла: 2024-08-30 11:47:00
2025-05-19 22:26:32/0.0066180229187012/0