TPOINT3D: различия между версиями
Перейти к навигации
Перейти к поиску
(не показана 1 промежуточная версия этого же участника) | |||
Строка 21: | Строка 21: | ||
===Типы=== | ===Типы=== | ||
{{ | {{type_list_begin_old_1}} | ||
{{ | {{type_list_add_old_1|allocator_type|<tt>alloc_t</tt> - тип [http://en.cppreference.com/w/cpp/concept/Allocator менеджера памяти] для хранения элементов вектора.}} | ||
{{ | {{type_list_add_old_1|value_type|<tt>unit_t</tt> - тип элемента вектора.}} | ||
{{ | {{type_list_add_old_1|size_type|Беззнаковый целочисленный тип для описания размеров.}} | ||
{{ | {{type_list_add_old_1|random_composition_access_tag|<tt>[http://en.cppreference.com/w/cpp/types/integral_constant std::true_type]</tt> - типовая метка для оптимизации [[package|запаковщика]], говорящая о произвольном доступе к запакованному массиву экземпляров класса.}} | ||
{{ | {{type_list_add_old_1|[http://www.chusov.org/doxygen/chsvlib_concepts.html#algebraic_type algebraic_category]|[http://www.chusov.org/doxygen/struct_chusov_1_1_math_1_1additive__group__algebraic__tag.html additive_group_algebraic_tag] - типовая метка алгебраической структуры, которую реализует множество всех возможных экземпляров класса. Соответствует аддитивной группе.}} | ||
{{ | {{type_list_end_old_1}} | ||
===Методы=== | ===Методы=== |
Текущая версия на 21:15, 3 декабря 2017
Трехкомпонентный вектор-столбец для описания координат точки в пространстве или радиус-вектора.
template <class unit_t, class alloc_t = std::allocator<unit_t>>
struct __TPOINT3D: ::Chusov::Math::FixedMatrix<unit_t, 1, 3, alloc_t, __TPOINT3D<unit_t, alloc_t>>;
Параметры шаблона
unit_t | Тип элемента вектора. |
alloc_t | Тип менеджера памяти элементов вектора. По умолчанию - std::allocator. |
Специализации шаблона
__TPOINT3D<double>
|
POINT3DEXT - тип для выражения внешних единиц измерения длины. |
__TPOINT3D<std::uint32_t>
|
POINT3DINT - тип для выражения внутрисистемных единиц измерения длины. В настоящее время не используется. |
Типы
Тип | Описание |
---|---|
allocator_type | alloc_t - тип менеджера памяти для хранения элементов вектора. |
value_type | unit_t - тип элемента вектора. |
size_type | Беззнаковый целочисленный тип для описания размеров. |
random_composition_access_tag | std::true_type - типовая метка для оптимизации запаковщика, говорящая о произвольном доступе к запакованному массиву экземпляров класса. |
algebraic_category | additive_group_algebraic_tag - типовая метка алгебраической структуры, которую реализует множество всех возможных экземпляров класса. Соответствует аддитивной группе. |
Методы
__TPOINT3D | Создают экземпляр объекта класса. |
Marshal | Функция маршаллинга вектора. |
MarshalSize | Возвращает размер запакованного вектора. |
x | Возвращает первую компоненту вектора. |
y | Возвращает вторую компоненту вектора. |
z | Возвращает третью компоненту вектора. |
Компонент является матрицей-столбцом Chusov::Math::FixedMatrix 1x3. Класс матрицы реализует двумерный контейнер (т.е. контейнер столбцов-контейнеров элементов) с поддержкой итераторов с произвольным доступом к столбцам и элементам, а также алгебраическим типом, реализующим аддитивную группу. Также поддерживаются некоторые стандартные операции над матрицами.