![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
length (with strategy)Boost , Chapter 1. Geometry , length
|
Тип |
Концепция |
Имя |
Описание |
---|---|---|---|
Geometry const & | Любой тип, выполняющий концепцию геометрии | геометрия | Модель указанной концепции |
Любой тип, выполняющий концепцию стратегии расстояния | стратегия |
Расчетная длина
Или
#include <boost/geometry.hpp>
Или
#include <boost/geometry/algorithms/length.hpp>
Длина функции реализована из OGC Simple Feature Specification.
Дело |
Поведение |
---|---|
areal (например, многоугольник) |
Линейный
Следующий пример показывает длину, измеренную над сферой, выраженную в километрах. Для этого радиус сферы должен быть указан в конструкторе стратегии.
#include <iostream> #include <boost/geometry.hpp> #include <boost/geometry/geometries/linestring.hpp> int main() { using namespace boost::geometry; typedef model::point<float, 2, cs::spherical_equatorial<degree> > P; model::linestring<P> line; line.push_back(P(2, 41)); line.push_back(P(2, 48)); line.push_back(P(5, 52)); double const mean_radius = 6371.0;std::cout << "length is " << length(line, strategy::distance::haversine<float>(mean_radius) ) << " kilometers " << std::endl; return 0; }
Результат:
length is 1272.03 kilometers
Статья length (with strategy) раздела Chapter 1. Geometry length может быть полезна для разработчиков на c++ и boost.
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
реклама |