12345678910111213141516171819202122232425262728293031323334 |
- /*
- * Copyright (c) Contributors to the Open 3D Engine Project.
- * For complete copyright and license terms please see the LICENSE at the root of this distribution.
- *
- * SPDX-License-Identifier: Apache-2.0 OR MIT
- *
- */
- #ifndef CRYINCLUDE_EDITOR_UTIL_AFFINEPARTS_H
- #define CRYINCLUDE_EDITOR_UTIL_AFFINEPARTS_H
- #pragma once
- struct AffineParts
- {
- Vec3 pos; //!< Translation components
- Quat rot; //!< Essential rotation.
- Quat rotScale; //!< Stretch rotation.
- Vec3 scale; //!< Stretch factors.
- float fDet; //!< Sign of determinant.
- /** Decompose matrix to its affine parts.
- */
- void Decompose(const Matrix34& mat);
- /** Decompose matrix to its affine parts.
- Assume there`s no stretch rotation.
- */
- void SpectralDecompose(const Matrix34& mat);
- };
- #endif // CRYINCLUDE_EDITOR_UTIL_AFFINEPARTS_H
|