平面结构

此结构表示使用 3D 矢量法线和距离值的平面。

此类型仅在 C++ 中可用。 其 .NET 等效项为 System.Numerics.Plane

构造函数

名称 说明
plane() 创建未初始化的平面。
plane(float x, float y, float z, float d) 创建具有指定值的平面。
plane(float3 normal, float d) 从 float3 和距离创建平面。
explicit plane(float4 value) 从 float4 创建平面。
plane(Microsoft::Graphics::Canvas::Numerics::Plane const& value) Microsoft.Graphics.Canvas.Numerics.Plane 转换为平面。

函数

名称 说明
plane make_plane_from_vertices(float3 const& point1, float3 const& point2, float3 const& point3) 从一组三个顶点位置创建平面,这些位置必须都不同,而不是在直线中。
plane normalize(plane const& value) 更改平面的法线向量的系数,使其具有单位长度。
plane transform(plane const& plane, float4x4 const& matrix) 通过矩阵转换规范化平面。
plane transform(plane const& plane, quaternion const& rotation) 通过四元数旋转转换规范化平面。
float dot(plane const& plane, float4 const& value) 计算具有向量的平面的点积。
float dot_coordinate(plane const& plane, float3 const& value) 计算具有 float3 坐标的平面的点积。 与dot_normal不同,此计算包括平面 d 值。
float dot_normal(plane const& plane, float3 const& value) 计算具有 float3 法线的平面的点积。 与dot_coordinate不同,此计算忽略平面 d 值。

运算符

名称 说明
bool operator== (plane const& value1, plane const& value2) 确定平面的两个实例是否相等。
bool operator!= (plane const& value1, plane const& value2) 确定平面的两个实例是否不相等。
operator Microsoft::Graphics::Canvas::Numerics::Plane() const 将平面转换为 Microsoft.Graphics.Canvas.Numerics.Plane

字段

名称 说明
float3 normal 平面的法线向量。
float d 平面沿其法线与原点的距离。

要求

要求
命名空间 Windows::Foundation::Numerics
标头
Windowsnumerics.h

另请参阅

windowsnumerics.h API