Files
ViewDesignEngine/include/vde/core/point.h
T

54 lines
1.3 KiB
C++
Raw Normal View History

#pragma once
#include "vde/foundation/math_types.h"
#include "vde/foundation/tolerance.h"
/**
* @defgroup core 核心几何模块
*
* 核心模块提供 VDE 引擎的几何操作 API:
* - 基础几何体(AABB、直线、射线、线段、平面、三角形、多边形)
* - 几何计算(距离、最近点、凸包、变换)
* - 点云配准(ICP
* - Voronoi 图
*
* @{
*/
namespace vde::core {
/**
* @brief 通用 N 维点类型(重新导出,便于 core 模块使用)
*
* @tparam T 标量类型
* @tparam Dim 维度
*/
template <typename T, size_t Dim>
using Point = foundation::Point<T, Dim>;
/// 双精度二维点(重新导出)
using Point2D = foundation::Point2D;
/// 双精度三维点(重新导出)
using Point3D = foundation::Point3D;
/// 单精度二维点(重新导出)
using Point2f = foundation::Point2f;
/// 单精度三维点(重新导出)
using Point3f = foundation::Point3f;
/**
* @brief 通用 N 维向量类型(重新导出)
*
* @tparam T 标量类型
* @tparam Dim 维度
*/
template <typename T, size_t Dim>
using Vector = foundation::Vector<T, Dim>;
/// 双精度二维向量(重新导出)
using Vector2D = foundation::Vector2D;
/// 双精度三维向量(重新导出)
using Vector3D = foundation::Vector3D;
} // namespace vde::core
/** @} */ // end of core group