From 57918533eb6f58543b8343081dba059a289c36c1 Mon Sep 17 00:00:00 2001 From: andy <andy> Date: Mon, 10 Dec 2007 19:25:24 +0000 Subject: [PATCH] Maik: add ROTORBALANCE axis. Fix spelling of ROTORRELTARGET. --- src/FDM/YASim/ControlMap.cpp | 4 +++- src/FDM/YASim/ControlMap.hpp | 4 ++-- src/FDM/YASim/FGFDM.cpp | 3 ++- src/FDM/YASim/Rotor.cpp | 7 +++++++ src/FDM/YASim/Rotor.hpp | 1 + 5 files changed, 15 insertions(+), 4 deletions(-) diff --git a/src/FDM/YASim/ControlMap.cpp b/src/FDM/YASim/ControlMap.cpp index 104f67806..43fcb529d 100644 --- a/src/FDM/YASim/ControlMap.cpp +++ b/src/FDM/YASim/ControlMap.cpp @@ -214,12 +214,14 @@ void ControlMap::applyControls(float dt) case TILTPITCH: ((Rotor*)obj)->setTiltPitch(lval); break; case TILTYAW: ((Rotor*)obj)->setTiltYaw(lval); break; case TILTROLL: ((Rotor*)obj)->setTiltRoll(lval); break; + case ROTORBALANCE: + ((Rotor*)obj)->setRotorBalance(lval); break; case ROTORBRAKE: ((Rotorgear*)obj)->setRotorBrake(lval); break; case ROTORENGINEON: ((Rotorgear*)obj)->setEngineOn((int)lval); break; case ROTORENGINEMAXRELTORQUE: ((Rotorgear*)obj)->setRotorEngineMaxRelTorque(lval); break; - case ROTORELTARGET: + case ROTORRELTARGET: ((Rotorgear*)obj)->setRotorRelTarget(lval); break; case REVERSE_THRUST: ((Jet*)obj)->setReverse(lval != 0); break; case BOOST: diff --git a/src/FDM/YASim/ControlMap.hpp b/src/FDM/YASim/ControlMap.hpp index e9235c65c..70125bbd2 100644 --- a/src/FDM/YASim/ControlMap.hpp +++ b/src/FDM/YASim/ControlMap.hpp @@ -16,8 +16,8 @@ public: BOOST, CASTERING, PROPPITCH, PROPFEATHER, COLLECTIVE, CYCLICAIL, CYCLICELE, ROTORENGINEON, TILTYAW, TILTPITCH, TILTROLL, - ROTORBRAKE, ROTORENGINEMAXRELTORQUE, ROTORELTARGET, - REVERSE_THRUST, WASTEGATE, + ROTORBRAKE, ROTORENGINEMAXRELTORQUE, ROTORRELTARGET, + ROTORBALANCE, REVERSE_THRUST, WASTEGATE, WINCHRELSPEED, HITCHOPEN, PLACEWINCH, FINDAITOW}; enum { OPT_SPLIT = 0x01, diff --git a/src/FDM/YASim/FGFDM.cpp b/src/FDM/YASim/FGFDM.cpp index b0a5be51d..5d68308f1 100644 --- a/src/FDM/YASim/FGFDM.cpp +++ b/src/FDM/YASim/FGFDM.cpp @@ -964,7 +964,8 @@ int FGFDM::parseOutput(const char* name) if(eq(name, "ROTORBRAKE")) return ControlMap::ROTORBRAKE; if(eq(name, "ROTORENGINEMAXRELTORQUE")) return ControlMap::ROTORENGINEMAXRELTORQUE; - if(eq(name, "ROTORRELTARGET")) return ControlMap::ROTORELTARGET; + if(eq(name, "ROTORRELTARGET")) return ControlMap::ROTORRELTARGET; + if(eq(name, "ROTORBALANCE")) return ControlMap::ROTORBALANCE; if(eq(name, "REVERSE_THRUST")) return ControlMap::REVERSE_THRUST; if(eq(name, "WASTEGATE")) return ControlMap::WASTEGATE; if(eq(name, "WINCHRELSPEED")) return ControlMap::WINCHRELSPEED; diff --git a/src/FDM/YASim/Rotor.cpp b/src/FDM/YASim/Rotor.cpp index 6bb69ca49..5e2bf4b4c 100644 --- a/src/FDM/YASim/Rotor.cpp +++ b/src/FDM/YASim/Rotor.cpp @@ -791,6 +791,13 @@ void Rotor::setCyclicail(float lval,float rval) _cyclicail=-(_mincyclicail+(lval+1)/2*(_maxcyclicail-_mincyclicail)); } +void Rotor::setRotorBalance(float lval) +{ + lval = Math::clamp(lval, -1, 1); + int i; + _balance2 = lval; +} + void Rotor::getPosition(float* out) { int i; diff --git a/src/FDM/YASim/Rotor.hpp b/src/FDM/YASim/Rotor.hpp index 5bec0a43f..fcf354391 100644 --- a/src/FDM/YASim/Rotor.hpp +++ b/src/FDM/YASim/Rotor.hpp @@ -93,6 +93,7 @@ public: void setCyclicail(float lval,float rval); void setCyclicele(float lval,float rval); void setCollective(float lval); + void setRotorBalance(float lval); void setAlphaoutput(int i, const char *text); void setCcw(int ccw); int getCcw() {return _ccw;};