An implementation of David Eberly's mesh clipping algorithm with demo program in odin. See comment at top of file for controls.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
let totalSize = 0; | |
for (let key in localStorage) { | |
if (localStorage.hasOwnProperty(key)) { | |
let keySize = new Blob([key]).size; // Size of the key | |
let valueSize = new Blob([localStorage[key]]).size; // Size of the value | |
totalSize += keySize + valueSize; | |
} | |
} |
If you've ever used a 3D editor, then you've most likely used a certain thing called "Gizmo", Gizmos are essentially transformation modifiers that's within a world, they let you modify the object's position, orientation and scale. The implementation of a Gizmo is actually fairly straightforward for the most part (or may not be depending on how your application handles things internally, but at the fundamental level it's simple).
This article would only cover Translations and Rotations, Scaling is very easy to implement after understanding how the first two work. And also this may give you a hint into how Blender's robust implementation of Gizmo works as well!
OlderNewer