User Tools

Site Tools


projects

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
projects [2010/12/09 18:11] bilprojects [2010/12/10 14:54] (current) bil
Line 127: Line 127:
  
 The URL for Algorithmics Animation Workshop (AAW) is [[http://www.cs.yorku.ca/~aaw]].  The main purpose of AAW is to be a pedagogical tool by providing animation of important algorithms and data structures in computer science, especially those studied in courses CSE 3101, 4101, 5101, 6114, 6111. This is an open ended project in the sense that more animations can be added to this site over time. The URL for Algorithmics Animation Workshop (AAW) is [[http://www.cs.yorku.ca/~aaw]].  The main purpose of AAW is to be a pedagogical tool by providing animation of important algorithms and data structures in computer science, especially those studied in courses CSE 3101, 4101, 5101, 6114, 6111. This is an open ended project in the sense that more animations can be added to this site over time.
 +
 +
 +====== Selenium/Eiffel Web Test Driven Development ======
 +
 +
 +**Supervisor**: Jonathan Ostroff
 +
 +**Required background**: General prerequisites, at least a B+ in CSE 3311
 +
 +**Recommended background**: Knowledge of Javascript a plus
 +
 +__Description__
 +
 +The Selenium IDE is an integrated development environment for Selenium scripts. It is implemented as a Firefox extension, and allows you to record, edit, and debug tests of web applications. The Selenium IDE is a recording tool, or you may edit your scripts by hand. With autocomplete support and the ability to move commands around quickly, Selenium IDE is the nice environment for creating webtests no matter what style of tests you prefer.
 +
 +Tests can be translated to Java (JUnit), C#, Python etc. It can be extended to [[http://seleniumhq.org/about/platforms.html|any language]] that can make HTTP calls.
 +
 +The goal of this project is (1) to translate Selenium tests into tests that can be run under Eiffel (e.g. via ESpec or AutoTest), and (2) to provide a complete Eiffel web application creation template (with embedded database such as sqlite) for creating and testing web applications.
  
 ====== Automated Reasoning System for Quantified Propositional Logic ====== ====== Automated Reasoning System for Quantified Propositional Logic ======
Line 198: Line 216:
  
  
-====== Different "snapping" techniques in drawing systems ======+====== Better Layout Mechanisms for User Interfaces Toolkits ======
  
  
 **Supervisor**: Wolfgang Stuerzlinger **Supervisor**: Wolfgang Stuerzlinger
  
 +**Required Background**: General CSE4080 prerequisites
 +
 +__Description__
 +
 +The layout mechanisms for many GUI toolkits are hard to understand and often difficult to use. This project investigates new, easy-to-understand layout mechanisms and evaluates an implementation of one of them in a comparative user study. Platform: any modern GUI toolkit.
 +
 +
 +====== Predicting Visibility Obstructions for a 6DOF Tracker ======
 +
 +
 +**Supervisor**: Wolfgang Stuerzlinger
  
 **Required Background**: General CSE4080 prerequisites **Required Background**: General CSE4080 prerequisites
  
-**Recommended Background**: CSE3461+__Description__ 
 + 
 +Previous work of the supervisor generated a novel and highly accurate Virtual Reality tracking system based on (eye-safe) laser diodes. The speed and accuracy of this system matches or exceeds the specification of all competing commercial systems. However, this system works only in 5 or 6-sided immersive display environment. 
 +Recent work has adapted the system to track successfully with as little as one large display wall and has also characterized the accuracy more comprehensively. 
 +The next step is to generalize the system to work in normal rooms, which may have lamps, shelves, etc. Here, visibility obstructions play a significant role and predicting these obstructions can be used to increase the tracking accuracy. This project will simulate a new method for visibility obstruction prediction to detect how big an increase in accuracy can be expected. 
 + 
 + 
 + 
 +====== Extensions to a 3D Modeling System ====== 
 + 
 + 
 +**Supervisor**: Wolfgang Stuerzlinger 
 + 
 +**Required Background**: General CSE4080 prerequisites
  
 __Description__ __Description__
  
-Many graphics programs implement snapping to facilitate drawingSnapping ensures that end-points of lines meetthat the endpoint of one line correctly "touches" another, that objects align side-to-side, etcOne problem of simple snapping techniques is that one cannot position objects arbitrarily close together otherwise the snapping technique interferesA novel snapping technique "Snap-and-Go" circumvents this problem by slowing the cursor over the line, instead of snapping it close to the lineThe objective of this project is to implement several snapping techniques for two-dimensional drawing systems and then to perform an evaluation with small user study.+[[http://www.k-3d.org|K-3D]] is a successfulopen-source, 3D modeling system, that can even deal with million-polygon models in real-time. This project aims to improve the user interface for K-3D by adding several novel 3D manipulation techniquesWhile all the mentioned operations already exist in in K-3D, the user interfaces are typically fairly inefficient and/or require significant learningDepending on the outcome, the results of each project may even be merged back into the K-3D distribution. 
 +Each of the following two items can be considered separate project:
  
 +  * Integration of an existing implementation of a 3D sliding technique, which greatly facilitates 3D object movement.
 +  * The ability to draw new "lines", rectangles, and other 2D constructs in a simple manner onto surfaces. This ability greatly simplifies many interesting operations, such as the creation of extrusions, holes, etc.
  
  
  
projects.1291918315.txt.gz · Last modified: 2010/12/09 18:11 by bil

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki