* Invert a transform * @param t Transform to invert * @return Inverted transform */
| 122 | * @return Inverted transform |
| 123 | */ |
| 124 | inline TransformS1 Inv(const TransformS1& t) |
| 125 | { |
| 126 | assert(t.GetScale() != 0.0f && "Transform can not be inverted (0 scale)."); |
| 127 | TransformS1 res; |
| 128 | res.SetRotation(conj(t.GetRotation())); |
| 129 | res.SetScale(1.0f / t.GetScale()); |
| 130 | res.SetTranslation(rotate(res.GetRotation(), -t.GetTranslation()) * res.GetScale()); |
| 131 | return res; |
| 132 | } |
| 133 | |
| 134 | /** |
| 135 | * Convert a transform into a 4-dim matrix |