Reduced minimum FOV to 0.01 degrees.

Modified FOV display to show value in degrees/minutes/seconds.
ver1_5_1
Clint Weisbrod 2001-11-28 16:14:56 +00:00
parent fd1465819a
commit d43c339c9a
1 changed files with 11 additions and 2 deletions

View File

@ -478,7 +478,7 @@ void CelestiaCore::charEntered(char c)
break;
case ',':
if (renderer->getFieldOfView() > 1.0f)
if (renderer->getFieldOfView() > 0.01f)
renderer->setFieldOfView(renderer->getFieldOfView() / 1.1f);
break;
@ -1055,6 +1055,10 @@ void CelestiaCore::renderOverlay()
if (hudDetail > 0)
{
float fov = renderer->getFieldOfView();
int degrees, minutes;
double seconds;
astro::decimalToDegMinSec((double)fov, degrees, minutes, seconds);
Simulation::ObserverMode mode = sim->getObserverMode();
char* modeName = "";
@ -1085,7 +1089,12 @@ void CelestiaCore::renderOverlay()
glColor4f(0.6f, 0.6f, 1.0f, 1);
*overlay << modeName << '\n';
glColor4f(0.7f, 0.7f, 1.0f, 1.0f);
overlay->printf("FOV: %6.2f\n", fov);
if(degrees > 0)
overlay->printf("FOV: %d° %02d' %.1f\"\n", degrees, minutes, seconds);
else if(minutes > 0)
overlay->printf("FOV: %02d' %.1f\"\n", minutes, seconds);
else
overlay->printf("FOV: %.1f\"\n", seconds);
overlay->endText();
glPopMatrix();
}