Differences From Artifact [f8bbebd161]:
- File
src/OFMatrix4x4.h
— part of check-in
[44eb35b212]
at
2023-02-12 22:20:39
on branch trunk
— Add OFMatrix4x4 and OFVector3D
These will be useful for 3D graphics. (user: js, size: 1898) [annotate] [blame] [check-ins using] [more...]
To Artifact [6444eb96ee]:
- File src/OFMatrix4x4.h — part of check-in [1e550fabe3] at 2023-02-15 21:54:40 on branch trunk — OFMatrix4x4: Add -[transformedVector3D:] (user: js, size: 2461) [annotate] [blame] [check-ins using]
︙ | ︙ | |||
66 67 68 69 70 71 72 73 74 75 | /** * @brief Mulitplies the receiver with the specified matrix on the left side * and the receiver on the right side. * * @param matrix The matrix to multiply the receiver with */ - (void)multiplyWithMatrix: (OFMatrix4x4 *)matrix; @end OF_ASSUME_NONNULL_END | > > > > > > > > > > > > > > | 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 | /** * @brief Mulitplies the receiver with the specified matrix on the left side * and the receiver on the right side. * * @param matrix The matrix to multiply the receiver with */ - (void)multiplyWithMatrix: (OFMatrix4x4 *)matrix; /** * @brief Transforms the specified 3D vector according to the matrix. * * As multiplying a 4x4 matrix with a 3D vector is not defined, this extends * the 3D vector to a 4D vector with its `w` value being set to 0 and just * discards the `w` value of the resulting 4D vector for the returned 3D * vector. This allows reducing the number number of calculations performed and * is mostly useful for 3D graphics. * * @param vector The 3D vector to transform * @return The transformed 3D vector */ - (OFVector3D)transformedVector3D: (OFVector3D)vector; @end OF_ASSUME_NONNULL_END |