Homework Assignments

Final Project

Due in class at time/date of Final Exam (12:20pm, November 24, 2009).

Deliverables

  1. Final Presentation of your working Final Project. (in-class oral presentaion)
    1. Demo of project in real-time
    2. Oral description of visualization features of project and how you implemented them
    3. May be assisted through the use of a powerpoint presentation.
  2. A CD/DVD of the entire code for the project. This should include an electronic version of any powerpoint or other presentation materials you used in the oral report, as well as an electronic version of the final written report (see below).
  3. A final written report.
    Turn in both a hardcopy at the final, and include an electronic version with your CD/DVD. This report should be written in the same basic style as the earlier project proposal, but should be written as a technical summary of the project. You should detail your approach to the problem, the techniques you tried, what worked, and what didn't. The format should be roughly:


Final Project Demos

Due Tue. 11/10/09, by the start of class

In-class presentation of progress on final projects. Please have something visual to show, even if it is not fully functional. If you need special equipment please let me know in advance. If you are developing on your own laptop and want to present from that, also please let me know.


Homework Assignment 5

Due Nov. 3, 2009

Examples:

EG1: Josh
VTK5.4.2/Examples/Annotation/Tcl/xyPlot.tcl
VTK5.4.2/Examples/Annotation/Tcl/annotatePick.tcl

EG2: Bibo
VTK5.4.2/Examples/Medical/Tcl/Medical1.tcl
VTK5.4.2/Examples/Medical/Tcl/Medical2.tcl
VTK5.4.2/Examples/Medical/Tcl/Medical3.tcl

EG3: Lev
VTK5.4.2/Examples/Rendering/Tcl/assembly.tcl
VTK5.4.2/Examples/Rendering/Tcl/CADPart.tcl
VTK5.4.2/Examples/Rendering/Tcl/FilterCADPart.tcl

EG4: Jon
VTK5.4.2/Examples/VisualizationAlgorithms/Tcl/officeTube.tcl
VTK5.4.2/Examples/VisualizationAlgorithms/Tcl/officeTubes.tcl
VTK5.4.2/Examples/VisualizationAlgorithms/Tcl/streamSurface.tcl

EG5: Melih Altun
VTK5.4.2/Examples/Modelling/Tcl/SpherePuzzle.tcl


Homework Assignment 4

Due Oct. 27, 2009

Second example presented in class.


Homework Assignment 3

Due Oct. 20, 2009

Final Project proposals.

This assignment is to develop a proposal for your final projects. The proposal should detail the data sources for your visualization, the experiments or output of the project, and a plan of attack that includes a schedule for the completion of intermediate stages.


Homework Assignment 2

Due Oct. 13, 2009

Clarifications:

Several people have asked for clarification on what are object models, the following should clear this issue up:

In the previous version of the book there is a section on object oriented modeling. This is standard software engineering terminology. Here is an explanation and an example:

Object models (quoted from the book):

"The object model identifies each object in the system, its properties, and its relationships to other objects in the system. For most software systems, the object model dominates the design. The Object modeling technique (OMT) graphical representation uses rectangles to depict object classes, and a variety of connectors to depict inheritance and other object-object relations. Object classes are represented as solid rectangles. Instances are represented as dotted rectangles. The name of the class or instance occupies the top of the rectangle. A line separates the class name from the next section that contains the attributes; a third section describes the methods. Relationships between objects are shown with line segments connecting the two related objects. In OMT, relationships are called associations and they can have various cardinalities: one-to-one, one-to-many, and many-to-many. Special associations that represent containers of other objects are called aggregations. Associations can be labeled with roles. (Roles are names given to associations and are used to further describe the nature of the association.) OMT represents inheritance with a triangle, with the superclass attached to the apex, and subclasses attached to the base of the triangle."

In the book there is an example, and a diagram. Basically they give the example of a locator abstract base class, with locator3d and locator2d as inheriting from the base. The base locator has members device, and functions open and close. The locator2d has a position(x, y) and a locate function. The locator3d has a position(x, y, z), orientation, front and up in one group of functions, and locate as another.

Classes touch screen, and mouse inherits from locator2d, with a single member each position.

Classes flock, pixsys, and logitek inherit from locator3d, with members position and orientation.

Hopefully this clears things up.

In my understanding, I thought the problem1&2 require us to create a set of new objects for the bar graphs. For example, we should design a vtkBarSource.cc to store the original datas; we should design vtkBarFilter.cc to process the input source and we should design vtkBarMapper.cc to display the bar graph? I don't know if it is right?

You are not required to write code, just to design the interfaces and properties of the functionality, and to specify the relationships between any classes you think are required.

Questions 3 and 5 don't explicitly say they want code submitted. For number 3 is just mentions the screen captures. In problem 5 you don't ask for screen shots so I had assumed you wanted code for this one.

For both 3 and 5 you are to write code. For 3, you are to submit screenshots. For 5 you are to submit a working program as assignment prog2, via the submit program.


Homework Assignment 1

Due Tues. Sept. 29 at the start of class.

The assignment is to design a simple visualization in C++ or Tcl of some dataset you have access to. The dataset should have dimension greater than 3.

You are to submit a 1-2 page written report on your assignment.

Clarifications:

How would you like our report to be laid out?

Introduction- what I chose to visualize and why?

Description- what each dimension is and what each symbol in each dimension means

Conclusion- basically, how our visualization worked out and how it could be used?

Your organization for the report sounds good.

How many samples of data should we have? I have currently one, but I can mock up another easily.

One or two is sufficient for this project.

Are you looking for anything in this project particularly or is it just to get an understanding of vtk and to create a simple visualization with arbitrary data?

It is just to get an understanding of vtk and to create a simple visualization, and to explore vtk.


You are to turn in your code electronically by using the submit program on prime. To use to submit this first program:

~cs625/bin/submit prog1 *.h *.cc Makefile
Be sure to limit any single submission to at most 20 files.

There is also an interactive version of the command:

~cs625/bin/submit
Or for help:

/home/cs625/bin/submit -h

Clarifications/Hints


NOTE: Homework assignments are also available on prime/p1/p2 clients (e.g. the odd's and even's). These files are in the same format as the lecture notes. You can find them in ~cs625/assignments. You can print them in the same way as the lecture notes.
Class Homepage

David M. Chelberg <chelberg@ohiou.edu>
Last modified: Thu Nov 5 12:10:40 EST 2009