OpenSiv3D  v0.6.5
C++20 framework for creative coding
s3d::SphericalBase< Float > Struct Template Reference

#include <Spherical.hpp>

Public Types

using value_type = Float
 
using position_type = Vector3D< value_type >
 

Public Member Functions

SIV3D_NODISCARD_CXX20 SphericalBase ()=default
 
constexpr SIV3D_NODISCARD_CXX20 SphericalBase (value_type _r, value_type _theta, value_type _phi) noexcept
 
constexpr SIV3D_NODISCARD_CXX20 SphericalBase (Arg::r_< value_type > _r, Arg::theta_< value_type > _theta, Arg::phi_< value_type > _phi) noexcept
 
constexpr SIV3D_NODISCARD_CXX20 SphericalBase (Arg::r_< value_type > _r, Arg::phi_< value_type > _phi, Arg::theta_< value_type > _theta) noexcept
 
constexpr SIV3D_NODISCARD_CXX20 SphericalBase (Arg::theta_< value_type > _theta, Arg::r_< value_type > _r, Arg::phi_< value_type > _phi) noexcept
 
constexpr SIV3D_NODISCARD_CXX20 SphericalBase (Arg::theta_< value_type > _theta, Arg::phi_< value_type > _phi, Arg::r_< value_type > _r) noexcept
 
constexpr SIV3D_NODISCARD_CXX20 SphericalBase (Arg::phi_< value_type > _phi, Arg::r_< value_type > _r, Arg::theta_< value_type > _theta) noexcept
 
constexpr SIV3D_NODISCARD_CXX20 SphericalBase (Arg::phi_< value_type > _phi, Arg::theta_< value_type > _theta, Arg::r_< value_type > _r) noexcept
 
SIV3D_NODISCARD_CXX20 SphericalBase (position_type pos) noexcept
 
constexpr SphericalBase operator+ () const noexcept
 
constexpr SphericalBase operator- () const noexcept
 
position_type operator+ (position_type v) const noexcept
 
position_type operator- (position_type v) const noexcept
 
Float3 toFloat3 () const noexcept
 
Vec3 toVec3 () const noexcept
 
Float3 fastToFloat3 () const noexcept
 
Vec3 fastToVec3 () const noexcept
 
position_type toPosition () const noexcept
 
 operator position_type () const noexcept
 
size_t hash () const noexcept
 

Public Attributes

value_type r
 
value_type theta
 
value_type phi
 

Friends

template<class CharType >
std::basic_ostream< CharType > & operator<< (std::basic_ostream< CharType > &output, const SphericalBase &value)
 
template<class CharType >
std::basic_istream< CharType > & operator>> (std::basic_istream< CharType > &input, SphericalBase &value)
 
void Formatter (FormatData &formatData, const SphericalBase &value)
 

Member Typedef Documentation

◆ position_type

template<class Float >
using s3d::SphericalBase< Float >::position_type = Vector3D<value_type>

◆ value_type

template<class Float >
using s3d::SphericalBase< Float >::value_type = Float

Constructor & Destructor Documentation

◆ SphericalBase() [1/9]

template<class Float >
SIV3D_NODISCARD_CXX20 s3d::SphericalBase< Float >::SphericalBase ( )
default

◆ SphericalBase() [2/9]

template<class Float >
constexpr SIV3D_NODISCARD_CXX20 s3d::SphericalBase< Float >::SphericalBase ( value_type  _r,
value_type  _theta,
value_type  _phi 
)
constexprnoexcept

◆ SphericalBase() [3/9]

template<class Float >
constexpr SIV3D_NODISCARD_CXX20 s3d::SphericalBase< Float >::SphericalBase ( Arg::r_< value_type _r,
Arg::theta_< value_type _theta,
Arg::phi_< value_type _phi 
)
constexprnoexcept

◆ SphericalBase() [4/9]

template<class Float >
constexpr SIV3D_NODISCARD_CXX20 s3d::SphericalBase< Float >::SphericalBase ( Arg::r_< value_type _r,
Arg::phi_< value_type _phi,
Arg::theta_< value_type _theta 
)
constexprnoexcept

◆ SphericalBase() [5/9]

template<class Float >
constexpr SIV3D_NODISCARD_CXX20 s3d::SphericalBase< Float >::SphericalBase ( Arg::theta_< value_type _theta,
Arg::r_< value_type _r,
Arg::phi_< value_type _phi 
)
constexprnoexcept

◆ SphericalBase() [6/9]

template<class Float >
constexpr SIV3D_NODISCARD_CXX20 s3d::SphericalBase< Float >::SphericalBase ( Arg::theta_< value_type _theta,
Arg::phi_< value_type _phi,
Arg::r_< value_type _r 
)
constexprnoexcept

◆ SphericalBase() [7/9]

template<class Float >
constexpr SIV3D_NODISCARD_CXX20 s3d::SphericalBase< Float >::SphericalBase ( Arg::phi_< value_type _phi,
Arg::r_< value_type _r,
Arg::theta_< value_type _theta 
)
constexprnoexcept

◆ SphericalBase() [8/9]

template<class Float >
constexpr SIV3D_NODISCARD_CXX20 s3d::SphericalBase< Float >::SphericalBase ( Arg::phi_< value_type _phi,
Arg::theta_< value_type _theta,
Arg::r_< value_type _r 
)
constexprnoexcept

◆ SphericalBase() [9/9]

template<class Float >
SIV3D_NODISCARD_CXX20 s3d::SphericalBase< Float >::SphericalBase ( position_type  pos)
noexcept

Member Function Documentation

◆ fastToFloat3()

template<class Float >
Float3 s3d::SphericalBase< Float >::fastToFloat3 ( ) const
noexcept

◆ fastToVec3()

template<class Float >
Vec3 s3d::SphericalBase< Float >::fastToVec3 ( ) const
noexcept

◆ hash()

template<class Float >
size_t s3d::SphericalBase< Float >::hash ( ) const
noexcept

◆ operator position_type()

template<class Float >
s3d::SphericalBase< Float >::operator position_type ( ) const
noexcept

◆ operator+() [1/2]

template<class Float >
constexpr SphericalBase s3d::SphericalBase< Float >::operator+ ( ) const
constexprnoexcept

◆ operator+() [2/2]

template<class Float >
position_type s3d::SphericalBase< Float >::operator+ ( position_type  v) const
noexcept

◆ operator-() [1/2]

template<class Float >
constexpr SphericalBase s3d::SphericalBase< Float >::operator- ( ) const
constexprnoexcept

◆ operator-() [2/2]

template<class Float >
position_type s3d::SphericalBase< Float >::operator- ( position_type  v) const
noexcept

◆ toFloat3()

template<class Float >
Float3 s3d::SphericalBase< Float >::toFloat3 ( ) const
noexcept

◆ toPosition()

template<class Float >
position_type s3d::SphericalBase< Float >::toPosition ( ) const
noexcept

◆ toVec3()

template<class Float >
Vec3 s3d::SphericalBase< Float >::toVec3 ( ) const
noexcept

Friends And Related Function Documentation

◆ Formatter

template<class Float >
void Formatter ( FormatData formatData,
const SphericalBase< Float > &  value 
)
friend

◆ operator<<

template<class Float >
template<class CharType >
std::basic_ostream<CharType>& operator<< ( std::basic_ostream< CharType > &  output,
const SphericalBase< Float > &  value 
)
friend

◆ operator>>

template<class Float >
template<class CharType >
std::basic_istream<CharType>& operator>> ( std::basic_istream< CharType > &  input,
SphericalBase< Float > &  value 
)
friend

Member Data Documentation

◆ phi

template<class Float >
value_type s3d::SphericalBase< Float >::phi

◆ r

template<class Float >
value_type s3d::SphericalBase< Float >::r

◆ theta

template<class Float >
value_type s3d::SphericalBase< Float >::theta

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