We need a widget to be built in Javascript, based on WebGL and possibly using Threejs. We are a 3D scanning and printing company and on our website we would like to have a viewer with which several supported 3D file formats can be displayed. Below in short are the main specifications we need for the budget. If you are interested and have knowledge about this, please get in contact. Please end your message with '3D model viewer widget' if you are reading this, otherwise messages won't be responded.
- Viewer must support several 3D file formats including .ply, .obj, .stl, .pcd etc.
- Viewer specifications must be customized so that wherever we use the viewer we would easily like to set the lighting, shading etc.
- Viewer must load files fast.
- Viewer must be able to parse texture and color information from the 3D model file itself or externally given image file (for texture).
- Viewer should initally show a thumbnail/caption of the file initially (details of this will be discussed further).
- A user should be able to interact with the model, like spinning, turning around etc.
- Viewer should be normalizing, scaling and fitting the model to the screen after parsing file.
Sample files will be provided for testing. If you have experience in this and have interest, please get in contact and we can discuss specification in detail further. For someone that has experience with those technologies, this is not a very complex task.
Hi,
we have a good experience in JS coding and we can do it with Threejs. Please can you provide a much more requirements description.
'3D model viewer widget'
While the project is not complex, it is still labor intensive. Here is how I calculated the cost:
- Write javascript (robust and unit tested) parser for 4 3D format, usable in threejs at 80 hours each = 320 hours
- Set up framework display using threejs and angularjs: 40 hours
- Create the interactive widget for user interaction: 120 hours
- All javascript code Unit tested using karma + jasmine: 20 hours
Total hours: 500 hours X 20 euro/hour = 10000
500 hours/30 hours per week ~= 115 days
I have prior experience using threejs and angularjs in prototyping display for proprietary data from my last job.