instancevariables
ws : WorkSpace := new WorkSpace()
types
public
Input = seqofnat inv inp == len inp = 9;
public
ThrusterMatrix = seqofseqofbool inv tm == len tm = 4 andforall i insetinds tm & len tm(i) = 6
operations
public
SetupTopology: () ==> ()
SetupTopology () ==
ws.SetupTopology();
public
RunControlCycle: Input ==> ThrusterMatrix
RunControlCycle (inp) == let mk_(x,p,y,z,m,ab,ah) = TransformInput (inp) in let ts = ws.ControlCycle (x,p,y,z,m,ab,ah) in return GenerateThrusterMatrix (ts);
functions
TransformInput: Input -> Command`Direction * Command`Direction *
Command`Direction * Command`Direction *
HandControlUnit`Mode * HandControlUnit`Button *
Command`AxisMap
TransformInput (inp) == let [mode,aah,horiz,trans,vert,twist,roll,pitch,yaw] = inp in
mk_( ConvertAxisCmd(horiz),
ConvertAxisCmd(twist),
ConvertAxisCmd(trans),
ConvertAxisCmd(vert), if mode = 1 then <Tran> else <Rot>, if aah = 0 then <Up> else <Down>,
{ <axis3> |-> ConvertAxisCmd(roll),
<axis1> |-> ConvertAxisCmd(pitch),
<axis2> |-> ConvertAxisCmd(yaw) } );
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung ist noch experimentell.