unc.cdva.problems
Interface Problem

All Superinterfaces:
Taggable
All Known Implementing Classes:
ProblemTriangle

public interface Problem
extends Taggable

Interface for problem objects, all problem types must implement this interface.

Author:
Dan Van Atta, Guillaume Conte

Method Summary
 Object3D getDrawable()
          Returns a drawable object that is meant to be drawn when the problem is created.
 float getGunRange()
           
 java.lang.String[] getProblemLabels()
          Used to retrieve labels that the problem would like to show the user.
 float getSolutionRange()
           
 ProblemType getType()
          Returns the problem type.
 void setInputValues(long[] value)
          Used to pass user parameters into the problem
 
Methods inherited from interface unc.cdva.utils.Taggable
getId
 

Method Detail

getDrawable

Object3D getDrawable()
Returns a drawable object that is meant to be drawn when the problem is created. (generally these objects will reside in RAGraphics.models)


getGunRange

float getGunRange()
Returns:
How far the gun is supposed to shoot in logical unit

setInputValues

void setInputValues(long[] value)
Used to pass user parameters into the problem

Parameters:
value - An array of values, the ordering and meaning of the values is dependant upon the exact problem type.

getType

ProblemType getType()
Returns the problem type.


getProblemLabels

java.lang.String[] getProblemLabels()
Used to retrieve labels that the problem would like to show the user.

Returns:
An array of strings representing labels, the value and ordering of the elements is dependant upon the problem type, and are interpretted according to the problem type.

getSolutionRange

float getSolutionRange()
Returns:
the solution of the problem