|
|
# Nomad 3D Editor
|
|
|
|
|
|
## Features
|
|
|
|
|
|
*TODO*
|
|
|
|
|
|
* Axes
|
|
|
* Modification
|
|
|
* Calibration
|
|
|
* Link to Nomad
|
|
|
* Material modification
|
|
|
* Model
|
|
|
* Regroup components
|
|
|
* Subdivide component
|
|
|
* Remove components
|
|
|
* Configurations
|
|
|
* Add current configuration
|
|
|
* Add special configurations from axes values : median, min, max
|
|
|
* Remove configurations
|
|
|
* Analyze configurations : if the median/min/max configurations and the axes are defined, computes the median/min/max values for all axes based on these configurations
|
|
|
* Toggle components visibility in configurations
|
|
|
|
|
|
## Interface
|
|
|
|
|
|
![Editor interface](interface.png)
|
... | ... | @@ -30,6 +10,18 @@ The editor interface is composed of 3 parts : |
|
|
2. Hierarchical view of the components of the model
|
|
|
3. Menu bar
|
|
|
|
|
|
### Mouse
|
|
|
|
|
|
The components can be manually moved around their axis by pressing them with mouse left and dragging the mouse.
|
|
|
|
|
|
The camera is controlled by the mouse :
|
|
|
* Middle click + drag : rotate around the point of reference
|
|
|
* Right click + drag : translate in the view plane
|
|
|
* Scroll up : zoom in
|
|
|
* Scroll down : zoom out
|
|
|
* Control down : increase the sensitivity of translation and zoom
|
|
|
* Shift down : decrease the sensitivity of translation and zoom
|
|
|
|
|
|
## Nomad 3D file format
|
|
|
|
|
|
See [the converter wiki](https://code.ill.fr/instrument-control/protos/nomad-3d/nomad-3d-converter/wikis/home).
|
... | ... | @@ -50,7 +42,9 @@ The typical workflow in the editor is to modify the model in order to make it co |
|
|
|
|
|
*TODO : advices about config management : only median/min/max eventually, hide duplicates, etc*
|
|
|
|
|
|
## Material
|
|
|
## Miscellaneous
|
|
|
|
|
|
### Material
|
|
|
|
|
|
The visual properties of a Nomad 3D model are stored as [Phong materials](https://en.wikipedia.org/wiki/Phong_shading), one for each component. However the viewer uses [Physically based Rendering (PBR)](https://www.marmoset.co/posts/basic-theory-of-physically-based-rendering/) to get a more realistic result. The conversion between the two illumination models is not usual so a simple and arbitrary conversion is applied :
|
|
|
|
... | ... | @@ -59,3 +53,21 @@ The visual properties of a Nomad 3D model are stored as [Phong materials](https: |
|
|
* $`pbr.roughness = 1 - cap \left( \frac{phong.shininess}{maxShininess}, 0, 1 \right) `$, where $`maxShininess = 250`$.
|
|
|
|
|
|
The Phong diffuse color defines the base color of the object. The specular color (which is usually a shade of gray) defines the metalness of the object : white for metallic components, black for non-metal ones. The shininess defines the roughness of the object : the more it is shiny the less it is rough (with an arbitrary maximum shininess).
|
|
|
|
|
|
### Features list
|
|
|
|
|
|
* Axes
|
|
|
* Modification
|
|
|
* Calibration
|
|
|
* Link to Nomad
|
|
|
* Material modification
|
|
|
* Model
|
|
|
* Regroup components
|
|
|
* Subdivide component
|
|
|
* Remove components
|
|
|
* Configurations
|
|
|
* Add current configuration
|
|
|
* Add special configurations from axes values : median, min, max
|
|
|
* Remove configurations
|
|
|
* Analyze configurations : if the median/min/max configurations and the axes are defined, computes the median/min/max values for all axes based on these configurations
|
|
|
* Toggle components visibility in configurations |