Hi Igor,
> I have to display some date against time in real-time. Unit of time is a
> milisecond. We use a long to represent time (since the epoch
> (1970-01-01 00:00:00Z) as the temporal reference) in ms. I cannot use VisAD's
> DateTime class Since it uses seconds as units.
>
> If I convert longs to doubles of seconds, VisAD has trouble displaying it.
> For example, it looks like it doesn't make a difference between
> 9.98928586999E11 and 9.98928592627E11.
>
> Does the FlatField only support float precision? What could be the problem?
You can do this if you use RealType.Time as the domain of
your Field, for example MathType:
(Time -> ...)
As Don says, use a Gridded1DDoubleSet for your domain Set.
Also, your Units only have to be convertable with the default
Units of Seconds. So you can construct a Unit of ms with
something like:
Unit ms = CommonUnit.second.scale(0.001);
Then construct your Gridded1DDoubleSet domain Set for your
Field something like:
Set set = new Gridded1DDoubleSet(type, samples, lengthX, null,
new Unit[] {ms}, null);
Note the samples array is double[1][lengthX] and its values
should be in ms.
Good luck,
Bill
----------------------------------------------------------
Bill Hibbard, SSEC, 1225 W. Dayton St., Madison, WI 53706
hibbard@xxxxxxxxxxxxxxxxx 608-263-4427 fax: 608-263-6738
http://www.ssec.wisc.edu/~billh/vis.html