+
+/******************************************************************/
+
+//begin suma
+ // draws the zenith symbol for highest possible climb angle (i,e 90 degree climb angle)
+
+void HudLadder ::
+drawZenith(float xfirst,float xlast,float yvalue )
+{
+
+ float xcentre = (xfirst + xlast)/2.0;
+ float ycentre = yvalue;
+
+ Line(xcentre-9.0, ycentre, xcentre-3.0, ycentre+1.3);
+ Line(xcentre-9.0, ycentre, xcentre-3.0, ycentre-1.3);
+
+ Line(xcentre+9.0, ycentre, xcentre+3.0, ycentre+1.3);
+ Line(xcentre+9.0, ycentre, xcentre+3.0, ycentre-1.3);
+
+ Line(xcentre, ycentre+9.0, xcentre-1.3, ycentre+3.0);
+ Line(xcentre, ycentre+9.0, xcentre+1.3, ycentre+3.0);
+
+ Line(xcentre-3.9, ycentre+3.9, xcentre-3.0, ycentre+1.3);
+ Line(xcentre-3.9, ycentre+3.9, xcentre-1.3, ycentre+3.0);
+
+ Line(xcentre+3.9, ycentre+3.9, xcentre+1.3, ycentre+3.0);
+ Line(xcentre+3.9, ycentre+3.9, xcentre+3.0, ycentre+1.3);
+
+ Line(xcentre-3.9, ycentre-3.9, xcentre-3.0, ycentre-1.3);
+ Line(xcentre-3.9, ycentre-3.9, xcentre-1.3, ycentre-2.6);
+
+ Line(xcentre+3.9, ycentre-3.9, xcentre+3.0, ycentre-1.3);
+ Line(xcentre+3.9, ycentre-3.9, xcentre+1.3, ycentre-2.6);
+
+ Line(xcentre-1.3, ycentre-2.6, xcentre, ycentre-27.0);
+ Line(xcentre+1.3, ycentre-2.6, xcentre, ycentre-27.0);
+
+
+}
+ //end suma
+
+//begin suma
+ // draws the nadir symbol for lowest possible dive angle (i,e 90 degree dive angle)
+
+
+void HudLadder ::
+drawNadir(float xfirst, float xlast, float yvalue)
+{
+
+ float xcentre = (xfirst + xlast)/2.0;
+ float ycentre = yvalue;
+
+
+ float r = 7.5;
+ float x1,y1,x2,y2;
+
+
+ // to draw a circle
+
+ float xcent1, xcent2, ycent1, ycent2;
+ xcent1 = xcentre + r * cos(0.0);
+ ycent1 = ycentre + r * sin(0.0);
+ for(int count=1; count<=400; count++)
+ {
+ float temp = count * 2 * 3.142 / 400.0;
+ xcent2 = xcentre + r * cos(temp);
+ ycent2 = ycentre + r * sin(temp);
+
+ Line(xcent1, ycent1, xcent2, ycent2);
+
+ xcent1 = xcent2;
+ ycent1 = ycent2;
+ }
+
+ xcent2 = xcentre + r * cos(0.0);
+ ycent2 = ycentre + r * sin(0.0);
+
+ drawOneLine(xcent1, ycent1, xcent2, ycent2); //to connect last point to first point
+ //end circle
+
+
+ Line(xcentre, ycentre+7.5, xcentre, ycentre+22.5); //to draw a line above the circle
+
+ Line(xcentre-7.5, ycentre, xcentre+7.5,ycentre); //line in the middle of circle
+
+ float theta = asin (2.5/7.5);
+ float theta1 = asin(5.0/7.5);
+
+ x1 = xcentre + r * cos(theta);
+ y1 = ycentre + 2.5;
+
+ x2 = xcentre + r * cos((180.0 * SGD_DEGREES_TO_RADIANS) - theta);
+ y2 = ycentre + 2.5;
+
+ Line(x1,y1,x2,y2);
+
+
+ x1 = xcentre + r * cos(theta1);
+ y1 = ycentre + 5.0;
+
+ x2 = xcentre + r * cos((180.0 * SGD_DEGREES_TO_RADIANS)-theta1);
+ y2 = ycentre + 5.0;
+
+ Line(x1,y1,x2,y2);
+
+
+ x1 = xcentre + r * cos((180.0 * SGD_DEGREES_TO_RADIANS) +theta);
+ y1 = ycentre - 2.5;
+
+ x2 = xcentre + r * cos((360.0* SGD_DEGREES_TO_RADIANS)-theta);
+ y2 = ycentre - 2.5;
+
+ Line(x1,y1,x2,y2);
+
+
+ x1 = xcentre + r * cos((180.0* SGD_DEGREES_TO_RADIANS) +theta1);
+ y1 = ycentre - 5.0;
+
+ x2 = xcentre + r * cos((360.0* SGD_DEGREES_TO_RADIANS)-theta1);
+ y2 = ycentre - 5.0;
+
+ Line(x1,y1,x2,y2);
+
+
+}