Closed TMink closed 7 months ago
Updated: Zoom on Objects: Now the zoom is based on the cursor position, rather than the center of the place-object as it was before
Update: Outsourcing and simplyfing to prevent redundandcy: Most of the functions, like object loaders and garbage collection, has been outsourced. These functions were grouped in classes. In addition a parameter list was implemented to centralize them.
3DView:
CameraSetting (file):
ControlSetting (file):
GarbageCollection (file):
Initialisations (file):
ObjectFilter (file):
ObjectLoaders (file):
Tools (file):
UpdateIndexedDB (file):
UpdateLoaclVariables (file):
Utilities (file):
Update: Make functions like loaders more universaly usable. like outside of the 3D-Part The new class Objectloaders inside Objectloaders.js, includes the load function, which will do exactly that. Through the utialization of the different loader types provided by three.js, it is possible to process different postfixes. The differences between the usage of these loaders are often minor, but still so impactfull, that they differ. Beside that, the loader function can now be implemented in every part of the code and used the same way, like places and positions, where models can be loaded in the system.
This image shows the minor impactful difference between both loaders, as an example.
Update: Create an overall more stable enviroment wich isn't subsceptible to bugs All knowen bugs are fixed and the new, more structured, layout of the code can be tested and maintained more easily.
Update: support future development processes By choosing simple, easy-to-understand names for variables and functions, in addition to a detailed dokumentation, new features can be implemented musch faster.
Update: Make it easier to create a proper class hierarchy diagram for the code documentation
Update: Zoom on objects The new zoom function lets the user zoom on the cursor position. This should support the interaction.
Every task was processed and documented.
Over the last development period the 3D Part was adjusted many times, often more sporadicly, because of the direct demand. This lead to an unhealthy layering of code, which was often not optimized performance wise . In order to provide a stabel Enviroment wich enables the user to use different data types of 3D-Models, functions to manipulate Objects or simply view multiple 3D-Objects at once, the whole 3D-Part will be restructured.
This means: