Classes | |
| struct | common::PLANE |
| Płaszczyzna. More... | |
Functions | |
| PLANE | common::operator* (float s, const PLANE &p) |
| void | common::swap (PLANE &p1, PLANE &p2) |
| VEC3 & | common::GetPlaneNormal (PLANE &Plane) |
| Daje dostęp do wektora normalnego podanej płaszczyzny, czyli jej składowych a, b, c zrzutowanych jako VEC3. | |
| const VEC3 & | common::GetPlaneNormal (const PLANE &Plane) |
| Zwraca wektor normalny płaszczyzny, czyli jej składowe a, b, c zrzutowane jako VEC3. | |
| void | common::GetPlaneMemberPoint (VEC3 *Out, const PLANE &Plane) |
| Zwraca jakiś punkt leżący na tej płaszczyźnie. | |
| void | common::RecalcPlaneD (PLANE *Plane, const VEC3 &p) |
| Zmienia odległość od początku układu współrzędnych. | |
| bool | common::PlaneEqual (const PLANE &p1, const PLANE &p2) |
| Zwraca true, jeśli podane płaszczyzny są sobie mniej więcej równe. | |
| void | common::PointsToPlane (PLANE *Out, const VEC3 &p1, const VEC3 &p2, const VEC3 &p3) |
| Tworzy płaszczyznę na podstawie trzech punktów. | |
| void | common::PointNormalToPlane (PLANE *Out, const VEC3 &Point, const VEC3 &Normal) |
| Tworzy płaszczyznę z wektora normalnego i punktu leżącego na tej płaszczyźnie. | |
| void | common::Mul (PLANE *Out, const PLANE &p, float s) |
| Skalowanie płaszczyzny. | |
| void | common::Div (PLANE *Out, const PLANE &p, float s) |
| float | common::Dot (const PLANE &p, const VEC4 &pt) |
| Iloczyn skalarny płaszczyzny i punktu we współrzędnych jednorodnych. | |
| float | common::DotCoord (const PLANE &p, const VEC3 &pt) |
| Iloczyn skalarny płaszczyzny z punktem 3D: a*x+b*y+c*z+d*1. | |
| float | common::DotNormal (const PLANE &p, const VEC3 &v) |
| Iloczyn skalarny płaszczyzny z wektorem 3D: a*x+b*y+c*z+d*0. | |
| void | common::Normalize (PLANE *Out, const PLANE &p) |
| Normalizacja płaszczyzny. | |
| void | common::Normalize (PLANE *p) |
| Normalizacja płaszczyzny w miejscu. | |
| void | common::GetBoxPlane (PLANE *out, const BOX &box, uint index) |
| Returns plane of one of 6 possible box faces. | |
Variables | |
| const PLANE | common::PLANE_ZERO |
| const PLANE | common::PLANE_POSITIVE_X |
| Płaszczyzna pionowa, równoległa do Y i Z, wskazująca na prawo na X. | |
| const PLANE | common::PLANE_POSITIVE_Y |
| Płaszczyzna pozioma, równoległa do X i Z, wskazująca do góry na Y. | |
| const PLANE | common::PLANE_POSITIVE_Z |
| Płaszczyzna pionowa, równoległa do X i Y, wskazująca w głąb na Z. | |
| const PLANE | common::PLANE_NEGATIVE_X |
| Płaszczyzna pionowa, równoległa do Y i Z, wskazująca na lewo na X. | |
| const PLANE | common::PLANE_NEGATIVE_Y |
| Płaszczyzna pozioma, równoległa do X i Z, wskazująca w dół na Y. | |
| const PLANE | common::PLANE_NEGATIVE_Z |
| Płaszczyzna pionowa, równoległa do X i Y, wskazująca do gracza na Z. | |
| void common::Div | ( | PLANE * | Out, | |
| const PLANE & | p, | |||
| float | s | |||
| ) | [inline] |
| float common::Dot | ( | const PLANE & | p, | |
| const VEC4 & | pt | |||
| ) | [inline] |
Iloczyn skalarny płaszczyzny i punktu we współrzędnych jednorodnych.
Można użyć do wyznaczenia czy tak zapisany punkt leży na płaszczyźnie, po której stronie i jak daleko.
| float common::DotCoord | ( | const PLANE & | p, | |
| const VEC3 & | pt | |||
| ) | [inline] |
Iloczyn skalarny płaszczyzny z punktem 3D: a*x+b*y+c*z+d*1.
Można użyć do wyznaczenia czy punkt leży na płaszczyźnie, po której stronie i jak daleko.
| float common::DotNormal | ( | const PLANE & | p, | |
| const VEC3 & | v | |||
| ) | [inline] |
Iloczyn skalarny płaszczyzny z wektorem 3D: a*x+b*y+c*z+d*0.
Przydatny do wyznaczania kąta między płaszczyzną (jej normalną) a wektorem.
| void common::GetBoxPlane | ( | PLANE * | out, | |
| const BOX & | box, | |||
| uint | index | |||
| ) |
Returns plane of one of 6 possible box faces.
Face order is: -X, +X, -Y, +Y, -Z, +Z. Returned plane is normalized and points to the outside.
| void common::GetPlaneMemberPoint | ( | VEC3 * | Out, | |
| const PLANE & | Plane | |||
| ) | [inline] |
Zwraca jakiś punkt leżący na tej płaszczyźnie.
| Plane | Musi być znormalizowana. |
| const VEC3& common::GetPlaneNormal | ( | const PLANE & | Plane | ) | [inline] |
Zwraca wektor normalny płaszczyzny, czyli jej składowe a, b, c zrzutowane jako VEC3.
| VEC3& common::GetPlaneNormal | ( | PLANE & | Plane | ) | [inline] |
Daje dostęp do wektora normalnego podanej płaszczyzny, czyli jej składowych a, b, c zrzutowanych jako VEC3.
| void common::Mul | ( | PLANE * | Out, | |
| const PLANE & | p, | |||
| float | s | |||
| ) | [inline] |
Skalowanie płaszczyzny.
| void common::Normalize | ( | PLANE * | p | ) | [inline] |
Normalizacja płaszczyzny w miejscu.
| void common::Normalize | ( | PLANE * | Out, | |
| const PLANE & | p | |||
| ) | [inline] |
Normalizacja płaszczyzny.
Po tej operacji wektor normalny płaszczyzny jest znormalizowany. Płaszczyzna pozostaje położona i zorientowana tam gdzie była.
| PLANE common::operator* | ( | float | s, | |
| const PLANE & | p | |||
| ) | [inline] |
| bool common::PlaneEqual | ( | const PLANE & | p1, | |
| const PLANE & | p2 | |||
| ) | [inline] |
Zwraca true, jeśli podane płaszczyzny są sobie mniej więcej równe.
| void common::PointNormalToPlane | ( | PLANE * | Out, | |
| const VEC3 & | Point, | |||
| const VEC3 & | Normal | |||
| ) | [inline] |
Tworzy płaszczyznę z wektora normalnego i punktu leżącego na tej płaszczyźnie.
Czy Normal musi być znormalizowany? Nie wiem.
| void common::PointsToPlane | ( | PLANE * | Out, | |
| const VEC3 & | p1, | |||
| const VEC3 & | p2, | |||
| const VEC3 & | p3 | |||
| ) | [inline] |
Tworzy płaszczyznę na podstawie trzech punktów.
Płaszczyzna będzie zorientowana dodatnio w kierunku tej półprzestrzeni, z której wierzchołki trójkąta są widoczne jako zorientowane zgodnie z ruchem wskazówek zegara w układzie LH.
| void common::RecalcPlaneD | ( | PLANE * | Plane, | |
| const VEC3 & | p | |||
| ) | [inline] |
Zmienia odległość od początku układu współrzędnych.
Płaszczyzna pozostając tak samo zorientowana została przesunięta tak, żeby zawierać w sobie podany punkt.
| [in,out] | Plane | Musi być znormalizowana. |
| void common::swap | ( | PLANE & | p1, | |
| PLANE & | p2 | |||
| ) | [inline] |
| const PLANE common::PLANE_NEGATIVE_X |
Płaszczyzna pionowa, równoległa do Y i Z, wskazująca na lewo na X.
| const PLANE common::PLANE_NEGATIVE_Y |
Płaszczyzna pozioma, równoległa do X i Z, wskazująca w dół na Y.
| const PLANE common::PLANE_NEGATIVE_Z |
Płaszczyzna pionowa, równoległa do X i Y, wskazująca do gracza na Z.
| const PLANE common::PLANE_POSITIVE_X |
Płaszczyzna pionowa, równoległa do Y i Z, wskazująca na prawo na X.
| const PLANE common::PLANE_POSITIVE_Y |
Płaszczyzna pozioma, równoległa do X i Z, wskazująca do góry na Y.
| const PLANE common::PLANE_POSITIVE_Z |
Płaszczyzna pionowa, równoległa do X i Y, wskazująca w głąb na Z.
| const PLANE common::PLANE_ZERO |
1.6.1