$Header$
$Log$
+Revision 1.1 2002/09/10 01:14:01 curt
+Initial revision
+
+Revision 1.20 2001/07/30 20:53:54 curt
+Various MSVC tweaks and warning fixes.
+
+Revision 1.19 2001/03/02 21:37:01 curt
+Added a first pass at a C++ sound manager class.
+
+Revision 1.18 2000/12/13 22:02:02 curt
+MacOS changes contributed by Darrell Walisser (12/13/2000)
+
+Revision 1.17 2000/09/14 15:36:25 curt
+Tweaks to ground steering sensitivity.
+
Revision 1.16 2000/09/13 19:51:09 curt
MacOS changes by Darrell Walisser.
#define HEIGHT_AGL_WHEEL d_wheel_rwy_local_v[2]
-static sub3( DATA v1[], DATA v2[], DATA result[] )
+static void sub3( DATA v1[], DATA v2[], DATA result[] )
{
result[0] = v1[0] - v2[0];
result[1] = v1[1] - v2[1];
result[2] = v1[2] - v2[2];
}
-static add3( DATA v1[], DATA v2[], DATA result[] )
+static void add3( DATA v1[], DATA v2[], DATA result[] )
{
result[0] = v1[0] + v2[0];
result[1] = v1[1] + v2[1];
result[2] = v1[2] + v2[2];
}
-static cross3( DATA v1[], DATA v2[], DATA result[] )
+static void cross3( DATA v1[], DATA v2[], DATA result[] )
{
result[0] = v1[1]*v2[2] - v1[2]*v2[1];
result[1] = v1[2]*v2[0] - v1[0]*v2[2];
result[2] = v1[0]*v2[1] - v1[1]*v2[0];
}
-static multtrans3x3by3( DATA m[][3], DATA v[], DATA result[] )
+static void multtrans3x3by3( DATA m[][3], DATA v[], DATA result[] )
{
result[0] = m[0][0]*v[0] + m[1][0]*v[1] + m[2][0]*v[2];
result[1] = m[0][1]*v[0] + m[1][1]*v[1] + m[2][1]*v[2];
result[2] = m[0][2]*v[0] + m[1][2]*v[1] + m[2][2]*v[2];
}
-static mult3x3by3( DATA m[][3], DATA v[], DATA result[] )
+static void mult3x3by3( DATA m[][3], DATA v[], DATA result[] )
{
result[0] = m[0][0]*v[0] + m[0][1]*v[1] + m[0][2]*v[2];
result[1] = m[1][0]*v[0] + m[1][1]*v[1] + m[1][2]*v[2];
result[2] = m[2][0]*v[0] + m[2][1]*v[1] + m[2][2]*v[2];
}
-static clear3( DATA v[] )
+static void clear3( DATA v[] )
{
v[0] = 0.; v[1] = 0.; v[2] = 0.;
}
-c172_gear()
+void c172_gear()
{
char rcsid[] = "$Id$";
#define NUM_WHEELS 4
-char gear_strings[NUM_WHEELS][12]={"nose","right main", "left main", "tail skid"};
+// char gear_strings[NUM_WHEELS][12]={"nose","right main", "left main", "tail skid"};
/*
* Aircraft specific initializations and data goes here
*/
{ -1.47, -3.58, 6.71 }, /*left main*/
{ -15.67, 0, 2.42 } /*tail skid */
};
- static DATA gear_travel[NUM_WHEELS] = /*in Z-axis*/
- { -0.5, 2.5, 2.5, 0};
+ // static DATA gear_travel[NUM_WHEELS] = /*in Z-axis*/
+ // { -0.5, 2.5, 2.5, 0};
static DATA spring_constant[NUM_WHEELS] = /* springiness, lbs/ft */
{ 1200., 900., 900., 10000. };
static DATA spring_damping[NUM_WHEELS] = /* damping, lbs/ft/sec */
DATA d_wheel_cg_local_v[3]; /* wheel offset from cg, N-E-D */
DATA d_wheel_rwy_local_v[3]; /* wheel offset from rwy, N-E-U */
DATA v_wheel_cg_local_v[3]; /*wheel velocity rel to cg N-E-D*/
- DATA v_wheel_body_v[3]; /* wheel velocity, X-Y-Z */
+ // DATA v_wheel_body_v[3]; /* wheel velocity, X-Y-Z */
DATA v_wheel_local_v[3]; /* wheel velocity, N-E-D */
DATA f_wheel_local_v[3]; /* wheel reaction force, N-E-D */
- DATA altitude_local_v[3]; /*altitude vector in local (N-E-D) i.e. (0,0,h)*/
- DATA altitude_body_v[3]; /*altitude vector in body (X,Y,Z)*/
- DATA temp3a[3], temp3b[3], tempF[3], tempM[3];
+ // DATA altitude_local_v[3]; /*altitude vector in local (N-E-D) i.e. (0,0,h)*/
+ // DATA altitude_body_v[3]; /*altitude vector in body (X,Y,Z)*/
+ DATA temp3a[3];
+ // DATA temp3b[3];
+ DATA tempF[3];
+ DATA tempM[3];
DATA reaction_normal_force; /* wheel normal (to rwy) force */
DATA cos_wheel_hdg_angle, sin_wheel_hdg_angle; /* temp storage */
DATA v_wheel_forward, v_wheel_sideward, abs_v_wheel_sideward;
percent_brake[1] = Brake_pct[0];
percent_brake[2] = Brake_pct[1];
- caster_angle_rad[0] = 0.03*Rudder_pedal;
+ caster_angle_rad[0] =
+ (0.01 + 0.04 * (1 - V_calibrated_kts / 130)) * Rudder_pedal;
for (i=0;i<num_wheels;i++) /* Loop for each wheel */
add3( tempM, M_gear_v, M_gear_v );
- }
+ }