1. On the main menu bar, add a menu item with title ‘Volume Rendering’ and create pull-down submenus with titles ‘Read Volume File’, ‘X-Ray’, ‘MIP’;
2. For ‘Read Volume File’, load the .vol datasets. Please download the volume datasets from the course webpage, as well as the code ([login to view URL]) of the functions for loading vol files and computing intersections of a ray and a volume bounding box.
3. Show your volume rendering results in the rendering window for ‘X-Ray’ and ‘MIP’ rendering. A volume rendering should only be initiated when the user selects the ‘X-Ray’ or ‘MIP’ menu items. To keep things simple, the volumes will be restricted to cubic volumes, and you will only need to perform orthographic projections.
Your program will support scaling and rotation. You should implement scaling and rotation with correct coordinate transform from volume data coordinates to world coordinates.
4. Use fltk sliders to control rotation. Add three sliders in your GUI for rotate_x, rotate_y and rotate_z. You should study how to use slider yourself from fltk documents. Each slider returns the angle of rotation along x, y or z coordinate axis. Use them in your coordination transform.
5. Use another slider to control image size of your results. You can use this to control the resolution of your image (delta_i and delta_j), while you fix the positions of image plane and volume in your world coordinate system.
After change rotation angles and image size, select the two menu items of ‘X-Ray’ and ‘MIP’ to render the new results.
hello sir/mam
I have read the project description and i am very much interested in this project. Kindly message me so we can discuss and start the project.
Thanks