Hi,
I would like to know if the following statements about
terminologies used in VisAD unit system are correct:
* "quantity name" is something like "length"
* "unit name" is like "meter"
* for BaseUnit "unit symbol" is "unit identifier", and is like "m"
* "identifier" for derived unit is the same as the BaseUnit if
derived from one BaseUnit otherwise "null", unless assigned
explicitely
* "unit defination" is "unit identifier" for BaseUnit and
PromiscuousUnit
* "unit defination" is composed by getIdentifier() for Derived
and ScaledUnit
Say if I creat a unit
foo=SI.meter.multiply(2);
and another unit
bar= DerivedUnit({SI.meter},{2});
Are foo and bar actually the same class objects? If yes,
why does DerivedUnit.multiply() return Unit instead of
DerivedUnit? If not, why not?
What should I do if I want to give foo an identifier?
Why doesn't the Unit class have a method to set identifier?
More generally, I would like to know why are BaseUnit, DerivedUnit
and ScaledUnit on the same level of inheritance hierarchy?
Conceptually a BaseUnit is a DerivedUnit that has undergon
zero/no derivation, therefore can be treated "a kind
of", or "a subset of", or a subclass of what is now called
the DerivedUnit, and ScaledUnit can be also seen as a
special case of DerivedUnit. The Developers Guide (2.5 years
old) doesn't mention what is the thinking behind the DerivedUnit
and ScaledUnit.
__________________________________________________
Do you Yahoo!?
Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
http://mailplus.yahoo.com