> > Digging around in the various examples and docs, I have not been able
> > to figure out how to do the equivalent using the Java units package.
> > Can somebody please provide me with a pointer a specific example or
> > tutorial that covers this?
>
> Regretably, the VisAD units subsystem does not yet contain an equivalent
> of the "valtocal" function. At the moment, the best advice I can give
> is to use the standard Java date and time-handling classes to do what
> you want (e.g. the "Data" and "Calendar" classes in the "java.util"
> package).
i haven't contributed too many answers to the VisAD mailing list. But i do
know how to use a (simple) timer in Java. Here's a simple timer class:
public class QuestionTimer {
private float beginSecond;
private float endSecond;
private Calendar timer;
/**
* constructor
*/
public QuestionTimer() {
setTimer(Calendar.getInstance());
}
/**
* @return the Calendar timer object
*/
private Calendar getTimer() {
return Calendar.getInstance();
}
/**
* @param a timer object
* @return TRUE if the set was successful
*/
private boolean setTimer(Calendar calendar) {
timer = calendar;
return true;
}
/**
* @return the second when the timer started
*/
private float getBeginSecond() { return beginSecond; }
/**
* @param the second when the timer started
*/
private void setBeginSecond(float minute,
float second,
float millisecond) {
beginSecond = (60 * minute) + (second) + (millisecond/1000);
}
/**
* @return the second when the timer ended
*/
private float getEndSecond() { return endSecond; }
/**
* @param the second when the timer ended
*/
private void setEndSecond(float minute,
float second,
float millisecond) {
endSecond = (60 * minute) + (second) + (millisecond/1000);
}
/**
* Starts the timer running
* <P>
* @return TRUE if it's started
*/
public boolean beginTimer() {
setBeginSecond(getTimer().get(Calendar.MINUTE),
getTimer().get(Calendar.SECOND),
getTimer().get(Calendar.MILLISECOND));
return true;
}
/**
* Ends the timer
* <P>
* @return TRUE if it's ended
*/
public boolean endTimer() {
setEndSecond(getTimer().get(Calendar.MINUTE),
getTimer().get(Calendar.SECOND),
getTimer().get(Calendar.MILLISECOND));
computeTotalTime();
return true;
}
/**
* @return TRUE if the total time was computed
*/
private boolean computeTotalTime() {
System.out.println("QuestionTimer.computeTotalTime(), TOTAL TIME is: "
+ (getEndSecond() - getBeginSecond()) +
" seconds.");
return true;
}
}
-cheers, bob
-
Robert S Laramee tel: (603) 868-1361
9 Woodman Road, #314 office: (603) 862-0350
Durham, NH 03824 URL: http://www.cs.unh.edu/~rlaramee