| 35 | } |
| 36 | |
| 37 | Vector3 LocalCollisionTriangle::GetNormal(const std::vector<Vector3>& vertices) const |
| 38 | { |
| 39 | // Get vertices. |
| 40 | const auto& vertex0 = GetVertex0(vertices); |
| 41 | const auto& vertex1 = GetVertex1(vertices); |
| 42 | const auto& vertex2 = GetVertex2(vertices); |
| 43 | |
| 44 | // Calculate edges. |
| 45 | auto edge0 = vertex1 - vertex0; |
| 46 | auto edge1 = vertex2 - vertex0; |
| 47 | |
| 48 | // Calculate edge normal. |
| 49 | auto normal = edge0.Cross(edge1); |
| 50 | normal.Normalize(); |
| 51 | return normal; |
| 52 | } |
| 53 | |
| 54 | BoundingBox LocalCollisionTriangle::GetAabb(const std::vector<Vector3>& vertices) const |
| 55 | { |
no test coverage detected