MeshLib C++ Docs
Loading...
Searching...
No Matches
MR::Plane3< T > Struct Template Reference

#include <MRPlane3.h>

Public Member Functions

constexpr Plane3 () noexcept=default
 
constexpr Plane3 (const Vector3< T > &n, T d) noexcept
 
template<typename U >
 MR_REQUIRES_IF_SUPPORTED (!std::is_same_v< T, U >) const expr explicit Plane3(const Plane3< U > &p) noexcept
 
distance (const Vector3< T > &x) const
 returns distance from given point to this plane (if n is a unit vector)
 
Plane3 operator- () const
 returns same plane represented with flipped direction of n-vector
 
const Plane3operator+ () const
 returns same representation
 
Plane3 normalized () const
 returns same plane represented with unit n-vector
 
Vector3< T > project (const Vector3< T > &p) const
 finds the closest point on plane
 

Static Public Member Functions

static constexpr Plane3 fromDirAndPt (const Vector3< T > &n, const Vector3< T > &p)
 

Public Attributes

Vector3< T > n
 
d = 0
 

Friends

std::ostream & operator<< (std::ostream &s, const Plane3 &pl)
 
std::istream & operator>> (std::istream &s, Plane3 &pl)
 

Related Symbols

(Note that these are not member symbols.)

template<typename T >
Plane3< T > invTransformed (const Plane3< T > &pl, const AffineXf3< T > &ixf)
 
template<typename T >
Plane3< T > transformed (const Plane3< T > &plane, const AffineXf3< T > &xf)
 Fixes ambiguity in the old bindings on VS2019 only. TODO remove when wropping old bindings. Remove #if MR_HAS_CONCEPTS above too.
 

Detailed Description

template<typename T>
struct MR::Plane3< T >

3-dimensional plane: dot(n,x) - d = 0


The documentation for this struct was generated from the following file: