Assignment

  1. Rasterization:

In your git-lab project, in the class RImage, implement rasterization. Make sure that the code is the master branch at the deadline.

  1. Dataset study (Practice Slicer)

Prepare 5 or 6 slides as described in Practice Slicer. Upload them as a pdf document at the task that will be visible in Atenea (Section last week of the course)

  1. image_viewer (Extend image_viewer)

Modify your git project adding the new files as described in Extend image_viewer. Add as many as possible of the following new features:

  • In the Images menu, add an option to create a fantasy image (the ones you did for Lab work 1).

  • In the Images menu, add an option to compute the histogram and another to compute the cdf. Automatically, show them together with the image. It should work if you use the method RImage.render_matplotlib() provided.

  • In the Images menu, add as many options for filtering, segmenting extracting contours as your implementation of RImage in Lab work 1 provides.

  • In the Surfaces menu, option create a cone, add a widget to prompt the user for the parameters of the cone.

  • In the Surfaces menu, add at least one other method for creating a parametric surface (and add accordingly the method in the class Surface).

  • In the Volumes menu, add at least one other method for creating a volume surface (and add accordingly the method in the class Volume).

  • In the Volumes class, modify shading to support surface + emission + opacity shading.

  • In the Material menu, add more and more meaningful surface materials (you can remove the two basic ones). Add accordingly the methods in the class SufaceMaterial).

  • In the Material menu, add a list of volume materials. Add accordingly the methods in the class VolumeMaterial.

  • In the Material menu, add widgets to create either surface or volume materials.

Make sure that the code is the master branch at the deadline.