To create a 3D rendered viewer to read Intergraph SmartPlant Review .dri file format (this is a list of 3D Microstation DGN files that? need to be? loaded into the 3D viewer concurrently)
## Deliverables
The 3D viewer needs to be able to read in model component information from a seperate Intergraph DRV file.
The requirements of viewer functionality:
1) Needs to be rendered
2) When the model is rotated, zoomed etc. the rendering quality must reduce whilst the model is being manipulated and then rerender in high quality when static
3) Need to be rendered all the time e.g. the model file need to be displayed as solid elements NOT wireline
4) Manipulation of model requirements: Zoom in / out, zoom to window area, zoom to item, rotate in all axis, pan, fit models extent
5) Needs to be able to create section planes (these allow you to cut through the model)
6) Be able to move the position of the camera/eye point allowing the user to be able to view the model from positioned inside the model.
7) Needs measuring tool to measure between 3D elements, this needs to display a true 1:1 dimension NOT pixels etc. Needs to have linear and? angular dimensioning. The dimension needs to be able to snap to points on the 3D element to allow easy measurement.
8) Needs to be able to select any 3D element from screen
9) Display a treeview of all 3D elements naming them as per the previously read in model information.
10) 3D elements need to be able to be diaplayed on/off from treeview
Requirements of 3D viewer application
1) 3D coordinate of selected 3D element needs to be able to be transfered out of the application to another application, along with component name
2) A 3D coordinate needs to be able to be passed into the 3D viewer and for the model to zoom to this coordinate.
3) A node element needs to be displayed/placed by the user so that they can visually see the location of the 3D coordinate.
Deliverables
1) The application needs to be supplied with all source code and also this needs to be packaged into a .Net dll for use in another application
Supplied
1) Unable to supply any of the file formats required, so therefore coder will have to source the formats