stim::plane struct

A plane.

Public types

using scalar_type = float
The scalar type used for planes.
using vector_type = vector<float, 3>
The 3D vector type used for planes.

Public static functions

static auto normalize(const plane& p) -> plane noexcept
Normalizes a plane.

Constructors, destructors, conversion operators

operator bool() const explicit constexpr noexcept
Returns true if any of the plane's scalar components are non-zero.
plane() defaulted noexcept
Default constructor. Does not initialize the plane.
plane(const plane&) defaulted constexpr noexcept
Copy constructor.
plane(const vector_type& n_, scalar_type d_) constexpr noexcept
Constructs a plane from n and d terms.
plane(const vector_type& pos, const vector_type& dir) constexpr noexcept
Constructs a plane from a position and normal direction.
plane(const vector_type& p0, const vector_type& p1, const vector_type& p2) noexcept
Constructs a plane from a triangle.

Public functions

auto normalize() -> plane& noexcept
Normalizes the plane (in-place).
auto operator=(const plane&) -> plane& defaulted noexcept
Copy-assignment operator.

Public variables

vector_type normal
The plane's normal.
scalar_type d
The d term of the plane equation.

Compatibility with UE4

operator::FPlane() const noexcept
Converts a plane into a UE4 FPlane.
plane(const ::FPlane& p) noexcept
Constructs a plane from a UE4 FPlane.