Hi Don
Thanks for your help and the new 'IdentityCoordinateSystem' class you
have attached to your last mail.
Meanwhile I've tried to map a RealType object to a logarithmical scaled
ZAxis. I 've abided exactly to your solution, anyhow nothing occurs on
the display. I've found out that I have never invoke the 'toReference'
method from IdentityCS and LogCS. Maybe that's the fault. But where do I
have to do this ?
Hereafter I've attached some code from my application.
Patrick
/** This method sets up DisplayTupleType and creates a
CartesianProductCoordinateSystem with IdentityCS
and LogCS. */
private void setLogScaledZAxis(RealType col, RealType row, RealType
height) throws VisADException, RemoteException
{
SimpleXAxis = new DisplayRealType("SimpleXAxis", true, -1.0,
1.0, 0.0, null);
SimpleYAxis = new DisplayRealType("SimpleYAxis", true, -1.0,
1.0, 0.0, null);
DisplayTupleType simpleTupleType= new DisplayTupleType(new
DisplayRealType[] {
SimpleXAxis,
SimpleYAxis});
IdentityCoordinateSystem ics = new IdentityCoordinateSystem(new
RealTupleType(col, row));
LogZAxis = new DisplayRealType("LogZAxis", true, -1.0, 1.0, 0.0,
null);
LogCoordinateSystem lcs = new LogCoordinateSystem(new
RealTupleType(height));
CartesianProductCoordinateSystem cpcs = new
CartesianProductCoordinateSystem(ics, lcs);
displayTupleType = new DisplayTupleType(new DisplayRealType[] {
SimpleXAxis,
SimpleYAxis,
LogZAxis }, cpcs);
}
/** This method maps the RealTypes to the self defined
DisplayRealTypes */
public void set_hill_map() throws VisADException, RemoteException
{
setLogScaledZAxis(col, row, err_val);
h_col_map = new ScalarMap(col, SimpleXAxis);
h_row_map = new ScalarMap(row, SimpleYAxis);
h_err_map = new ScalarMap(err_val, LogZAxis);
//h_err_range_map = new ScalarMap(err_val, Display.SelectRange);
h_exp_map = new ScalarMap(exp_val, Display.RGB);
}