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

within (with strategy)

Boost , Chapter 1. Geometry , within

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

Свободная функция проверяет, находится ли первая геометрия полностью внутри второй геометрии, используя указанную стратегию. Причины для определения стратегии включают в себя: использовать другую систему координат для расчетов; построить стратегию заранее (например, с радиусом Земли); выбрать стратегию, когда для расчета доступно более одного.

Synopsis

template<typename Geometry1, typename Geometry2, typename Strategy>
bool within(Geometry1 const & geometry1, Geometry2 const & geometry2, Strategy const & strategy)

Parameters

Тип

Концепция

Имя

Описание

Геометрия1 const &

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

Геометрия1

A model of the specified concept which might be within the second geometry

Геометрия2 const &

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

geometry2

Модель указанного понятия, которая может содержать первую геометрию

Стратегия const &

strategy

Стратегия должна быть использована

Returns

истинно, если геометрия1 полностью содержится в геометрии2, то ложно

Header

Либо

#include <boost/geometry.hpp>

Либо

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

Conformance

Функция внутри реализует функцию внутри изOGC Simple Feature Specification.

[Note]Note

ОГК определяет внутри как полностью внутри, а не на границе. См. примечания для внутри / на границе

Supported geometries

Точка<-- [ORIG_BEGIN] ТочкаPoint

[ORIG_END] -->

Сегмент[ORIG_BEGIN]Сегмент

[ORIG_END] -->

Коробка

Струнный

КольцоКольцо

[ORIG_END] -->

[[ORIG_BEGIN]] ПолигонПолигон

[ORIG_END] -->

MultiPointMultiPoint

[ORIG_END] -->

MultiLinestringMultiLinestring

[ORIG_END] -->

МультиполигонMultiPolygon

[ORIG_END] -->

Вариант

Точка<-- [ORIG_BEGIN] ТочкаPoint

[ORIG_END] -->

ok

nyi

nyi

nyi

nyi

nyi

nyi

nyi

nyi

nyi

Сегмент[ORIG_BEGIN]Сегмент

[ORIG_END] -->

ok

nyi

nyi

nyi

nyi

nyi

nyi

nyi

nyi

nyi

Коробка

ok

nyi

ok

nyi

nyi

nyi

nyi

nyi

nyi

nyi

Струнный

ok

nyi

nyi

ok

nyi

nyi

nyi

ok

nyi

nyi

КольцоКольцо

[ORIG_END] -->

ok

nyi

nyi

ok

ok

ok

nyi

ok

ok

ok

[[ORIG_BEGIN]] ПолигонПолигон

[ORIG_END] -->

ok

nyi

nyi

ok

ok

ok

nyi

ok

ok

ok

MultiPointMultiPoint

[ORIG_END] -->

ok

nyi

nyi

nyi

nyi

nyi

nyi

nyi

nyi

nyi

MultiLinestringMultiLinestring

[ORIG_END] -->

ok

nyi

nyi

ok

nyi

nyi

nyi

ok

nyi

nyi

МультиполигонMultiPolygon

[ORIG_END] -->

ok

nyi

nyi

ok

ok

ok

nyi

ok

ok

ok

Вариант

ok

nyi

nyi

nyi

nyi

nyi

nyi

nyi

nyi

nyi

[Note]Note

В этой матрице статуса выше: столбцы являются типами первого параметра, а строки - типами второго параметра. Таким образом, точка может быть проверена на полигоне, но не наоборот.

Notes

Если точка расположена точно на границе геометрии, то результат зависит от стратегии. Стратегия по умолчанию (Winding (координатная система агностика)) в этом случае возвращается ложной.

Если многоугольник имеет обратную ориентацию (например, против часовой стрелки для многоугольника по часовой стрелке), результат также зависит от стратегии. Стратегия по умолчанию возвращается по-прежнему верной, если точка полностью находится в пределах обратного многоугольника. Существует определенная стратегия, которая в данном случае является ложной.

Complexity

линейный

See also
Available Strategies
Example

[within_strategy] [within_strategy_output]


PrevUpHomeNext

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




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



:: Главная :: within ::


реклама


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

Время компиляции файла: 2024-08-30 11:47:00
2025-07-05 04:12:32/0.0044658184051514/0