InStep Studio


Import, Export and Editing

Time to read: ~4 min

A few special options exist for working with the Seed Mesh. These include the option to import a Seed Mesh from an OBJ file, exporting a Seed Mesh that was generated (Auto or Manual) or performing Smoothing Operations on a mesh. These items are discussed in more detail below.

Import Seed MeshImporting a Seed Mesh

It is possible to import a Seed Mesh rather than to generate it within the application. The process for doing so is straight forward and only requires a suitable (Alias WaveFront) OBJ file. The choice of file format is there to allow meshes to be used that support quadrilateral shapes (STL does not). It is also one of the most supported formats for these types of files and therefore a clear choice. Care should be taken to ensure that the data is correctly oriented -Blender, for example, allows the coordinate system to be redefined during export to differ from what the imported file represented.
Beyond this, there are few known limitations that should prevent a successful mesh import. Both Quadrilateral and Triangular meshes can be used, though it is recommended that, if possible, the source file contain only Quadrilateral elements (as this is ultimately a requirement). The application will check for this situation and attempt to intelligently merge any Triangles into Quadrilaterals performing both a Smart-Merge followed by a set of targeted iterations to merge any remaining items. If the pure-Quad requirement cannot be met, the import process will not succeed. For the case where the mesh is a two-manifold, this is all but guaranteed. If the mesh is non-manifold, the process allows for a 'healing' step to force the result into a pure-Quad state but explicitly does not try to make it a solid.
Further, the locations of the corners do not need to be exact, so it is possible to manually move nodes around as the application will re-project all data onto the source body.

Export Seed MeshExporting a Seed Mesh

As the application currently does not provide a method by which individual points and edges can be changed and moved around, the most direct way to provide this is through the option to first generate a starting Seed Mesh (using the automatic option) and to then export this to an OBJ file. There are a vast number of applications that can take this file and then provide an environment more suited to editing the mesh by deleting, moving, creating, etc. the mesh provided in this way. Once any desired changes have been made, the data can be exported to an OBJ file and the Imported back into the application (see above).
This process has been found to be efficient in most cases and also allows for temporarily storing seed mesh data and similar. Having an application such as Blender make changes is usually quite straight forward though the user is free to use any application that can import, modify and export OBJ files. The requirement that the data be processed as Quadrilaterals is avoided as InStep internally uses a set of tools that can convert from triangular data to a pure Quad mesh if some basic requirements are met (either the data needs to represent a water-tight solid with an even number of triangles or be open/non-solid).

Smooth Seed MeshSmoothing a Seed Mesh

The one option that is built-in to provide some amount of editing is the option to Smooth the Seed Mesh. By default, the Automatically generated Seed Mesh consists of Patches that are optimized to meet the internal requirements. In some cases, especially if complex shapes are being highly simplified, there may be regions where surfaces become distorted.
In order to partially help with these situations, the smoothing tool allows corners to be translated so as to 'better' represent a unform mesh. This is done by calculating either a local (per patch) or global (per body) average edge length and then moving the vertices so as to be closer to this idealized location. As any motion is a compromise with its neighbors' desire to do the same, the process consist of iterations where the vertices are moved only a small amount but done several times. The amount and number of iterations-per-click are found in the Settings. The end result of this is that the mesh starts to become 'relaxed' or smoothed. It should be pointed out that this smoothing moves the data away from the point where the original algorithm left it and therefore care should be taken as to not over-smooth the mesh as this has a tendency to try to approximate an equally spaced set of quadrilateral patches, irrespective of how the original data looked (and therefore small regions become overly simplified compared to coarse sections).

Sub Divide Seed MeshSub-Divide a Seed Mesh Cell

This tool toggles on/off the option to split any of the existing (automatically generated) seed mesh cells. Once turned on, hovering the mouse over the seed mesh will highlight (with a red boundary) the cell. Clicking the left mouse button then splits the cell according to a 1:5 rule whereby the cell is broken up into five cells whereby the neighboring cells are unaffected. Though this can look strange, it generates a far more refined local mesh which would otherwise be difficult to achieve.
Note that this tool has a toggle - on, toggle -off state, and will keep dividing cells as long as it is enabled.