App: Pplates
Developer: The Virtual Explorer Pty Ltd
Genres: Education, Business

Tectonic reconstruction using deformable and tearable meshes to simulate the behaviour of the Earth's lithospheric plates. Pplates utilises SceneKit and the MacOS metal framework, with orthographic and perspective projections of the Virtual Earth representation of the planet. Perspective enables the user to fly beneath slabs to image the earthquake distribution for example. Calculations "under the hood" in the Pplates math engine now use quaternions, and the rotation of individual mesh objects is calculated, for any specific time, from a collapsed pole sequence. This reduces the overhead for the calculation, and thus enhances interactivity. However, the collapsed pole sequence must be calculated before moving back or forward through time. 3D mesh objects to be mapped to the 2D mesh window and re-associated with texture images.

Pplates adopts measures to reduce the number of vertices in any scene graph, thereby considerably enhancing application performance. Nodes and edges will not be 'enhanced' unless they are selected. The PPML stores the reference state as well as the current location so it is possible to recompute areal distortion and the 2D-finite strain tensors. This is facilitated using the Orpheus panel, otherwise used to resurrect 3D models of subjected lithospheric slabs from the mantle graveyard and to return them to the planet surface.

Release notes:
Version §8 improves 3D navigation with different options available using key strokes such as 'd' to descend or 'u' to ascend. Hit the 's' key to stop motion. Version §8.1.3 allows the import of a GPlates .ROT file. Due to inconsistencies in respect to how a Euler Pole Sequence is constructed, the .ROT file must then be conditioned to allow proper calculation of the rotation tree. To allow this a menu item has been added in the toolbox. Version §8.2.0 introduces options to smooth a mesh created externally and imported using the DXF option. This is accomplished by allowing Pplates to identify pyramidal nodes in a conditioned mesh (with the proximity lists already determined). Problem nodes can be identified interactively or programmatically. Identified nodes are then able to be 'relaxed' until the apical angle is within a specified tolerance. Version §8.3.0 addresses issues associated with 'blitting' to the GPU buffers, so that mesh objects can be split and their size adjusted.