nlib
nn::nlib::simd::Sphere クラス

3次元空間上の球を扱う静的メンバ関数が集められたクラスです。このクラスはインスタンス化できません。 [詳解]

#include "nn/nlib/simd/SimdGeometry.h"

静的公開メンバ関数

static SimdSphere FromPoints (const Float3 *points, size_t count) noexcept
 count 個の点を包む球を計算します。 [詳解]
 
static SimdSphere Merge (SimdSphereArg sphere0, SimdSphereArg sphere1) noexcept
 2つの球を包む最小の球を計算します。 [詳解]
 
static float GetRadius (SimdSphereArg sphere) noexcept
 球の半径を取得します。 [詳解]
 
static SimdSphere SetRadius (SimdSphereArg sphere, float radius) noexcept
 与えられた球の半径を変更して返します。 [詳解]
 
static SimdVector GetCenter (SimdSphereArg sphere) noexcept
 球の中心を返します。 [詳解]
 
static SimdSphere SetCenter (SimdSphereArg sphere, SimdVectorArg center) noexcept
 与えられた球の中心を変更して返します。 [詳解]
 
static SimdSphere Transform (SimdSphereArg sphere, SimdMatrixArg m) noexcept
 球を行列により変換した図形を包む最小の球を計算します。 [詳解]
 

詳解

3次元空間上の球を扱う静的メンバ関数が集められたクラスです。このクラスはインスタンス化できません。

説明
このクラスで扱う球(SimdSphere)は、レーン0-2が中心のxyz座標、レーン3が半径となります。

SimdGeometry.h53 行目に定義があります。

関数詳解

◆ FromPoints()

nn::nlib::simd::Sphere::FromPoints ( const Float3 points,
size_t  count 
)
staticnoexcept

count 個の点を包む球を計算します。

引数
[in]points3次元空間上の点の集合が格納された領域へのポインタ
[in]count点の数
戻り値
点の集合を包む3次元空間上の球

◆ GetCenter()

nn::nlib::simd::Sphere::GetCenter ( SimdSphereArg  sphere)
staticnoexcept

球の中心を返します。

引数
[in]sphere3次元空間上の球
戻り値
球の中心座標

◆ GetRadius()

nn::nlib::simd::Sphere::GetRadius ( SimdSphereArg  sphere)
staticnoexcept

球の半径を取得します。

引数
[in]sphere3次元空間上の球
戻り値
球の半径

◆ Merge()

nn::nlib::simd::Sphere::Merge ( SimdSphereArg  sphere0,
SimdSphereArg  sphere1 
)
staticnoexcept

2つの球を包む最小の球を計算します。

引数
[in]sphere03次元空間上の球
[in]sphere13次元空間上の球
戻り値
2つの球を包む球

◆ SetCenter()

nn::nlib::simd::Sphere::SetCenter ( SimdSphereArg  sphere,
SimdVectorArg  center 
)
staticnoexcept

与えられた球の中心を変更して返します。

引数
[in]sphere3次元空間上の球
[in]center新しい中心座標
戻り値
新しい中心座標が設定された球

◆ SetRadius()

nn::nlib::simd::Sphere::SetRadius ( SimdSphereArg  sphere,
float  radius 
)
staticnoexcept

与えられた球の半径を変更して返します。

引数
[in]sphere
[in]radius新しい半径
戻り値
新しい半径が設定された球

◆ Transform()

nn::nlib::simd::Sphere::Transform ( SimdSphereArg  sphere,
SimdMatrixArg  m 
)
staticnoexcept

球を行列により変換した図形を包む最小の球を計算します。

引数
[in]sphere3次元空間上の球
[in]m3D変換行列
戻り値
新しい球
説明
行列のスケーリングが等方でない場合、変換結果は球になりません。 その場合、変換結果を包む最小の球を返します。

このクラス詳解は次のファイルから抽出されました: