]> git.mxchange.org Git - flightgear.git/commitdiff
A couple clean ups ...
authorcurt <curt>
Thu, 2 Nov 2000 00:59:39 +0000 (00:59 +0000)
committercurt <curt>
Thu, 2 Nov 2000 00:59:39 +0000 (00:59 +0000)
src/Scenery/scenery.cxx
src/Scenery/scenery.hxx
src/Scenery/tilemgr.cxx
src/Scenery/tilemgr.hxx

index 0294de24d792f1af40dac5a8a302bc5b38b2665b..2c0bf3f0d74227fcd89034533d6565a16593b36a 100644 (file)
 #include "scenery.hxx"
 
 
-// Temporary hack until we get a better texture management system running
-GLint area_texture;
-
-
 // Shared structure to hold current scenery parameters
 struct fgSCENERY scenery;
 
@@ -56,17 +52,3 @@ int fgSceneryInit( void ) {
 
     return 1;
 }
-
-
-// Tell the scenery manager where we are so it can load the proper data, and
-// build the proper structures.
-void fgSceneryUpdate(double lon, double lat, double elev) {
-    // does nothing;
-}
-
-
-// Render out the current scene
-void fgSceneryRender( void ) {
-}
-
-
index ae40e27099a40ee29a41dff0e131f64fbe198886..a0fc95e8ae10794948d0af944cd64b67e0e830f9 100644 (file)
@@ -64,15 +64,6 @@ extern struct fgSCENERY scenery;
 int fgSceneryInit( void );
 
 
-// Tell the scenery manager where we are so it can load the proper
-// data, and build the proper structures.
-void fgSceneryUpdate(double lon, double lat, double elev);
-
-
-// Render out the current scene
-void fgSceneryRender( void );
-
-
 #endif // _SCENERY_HXX
 
 
index 9c59da5e15ac63eb8132390346f4b9dfc0d68824..0266ca5b65508c10d5ebb9f0f55774a0f276d150 100644 (file)
@@ -168,7 +168,8 @@ static void CurrentNormalInLocalPlane(sgVec3 dst, sgVec3 src) {
 // explicitely.  lat & lon are in radians.  view_pos in current world
 // coordinate translated near (0,0,0) (in meters.)  Returns result in
 // meters.
-bool FGTileMgr::current_elev_ssg( sgdVec3 abs_view_pos, sgVec3 view_pos ) {
+bool FGTileMgr::current_elev_ssg( sgdVec3 abs_view_pos, sgVec3 view_pos,
+                                 double *terrain_elev ) {
     sgdVec3 orig, dir;
 
     sgdSetVec3(orig, view_pos );
@@ -193,7 +194,7 @@ bool FGTileMgr::current_elev_ssg( sgdVec3 abs_view_pos, sgVec3 view_pos ) {
     }
 
     if ( result > -9000 ) {
-       scenery.cur_elev = result;
+       *terrain_elev = result;
        scenery.cur_radius = geoc.radius();
        sgVec3 tmp;
        sgSetVec3(tmp, hit_list.get_normal(this_hit));
@@ -205,7 +206,7 @@ bool FGTileMgr::current_elev_ssg( sgdVec3 abs_view_pos, sgVec3 view_pos ) {
        return true;
     } else {
        FG_LOG( FG_TERRAIN, FG_INFO, "no terrain intersection" );
-       scenery.cur_elev = 0.0;
+       *terrain_elev = 0.0;
        float *up = globals->get_current_view()->get_world_up();
        sgdSetVec3(scenery.cur_normal, up[0], up[1], up[2]);
        return false;
@@ -479,12 +480,24 @@ int FGTileMgr::update( double lon, double lat ) {
        // cout << "abs_view_pos = " << tmp_abs_view_pos << endl;
        prep_ssg_nodes();
        sgSetVec3( tmp_view_pos, 0.0, 0.0, 0.0 );
-       current_elev_ssg( tmp_abs_view_pos, tmp_view_pos );
+       double tmp_elev;
+       if ( current_elev_ssg(tmp_abs_view_pos, tmp_view_pos, &tmp_elev) ) {
+           scenery.cur_elev = tmp_elev;
+       } else {
+           scenery.cur_elev = 0.0;
+       }
     } else {
        // cout << "abs view pos = " << current_view.abs_view_pos
        //      << " view pos = " << current_view.view_pos << endl;
-       current_elev_ssg( globals->get_current_view()->get_abs_view_pos(),
-                         globals->get_current_view()->get_view_pos() );
+       double tmp_elev;
+       if ( current_elev_ssg(globals->get_current_view()->get_abs_view_pos(),
+                             globals->get_current_view()->get_view_pos(),
+                             &tmp_elev) )
+       {
+           scenery.cur_elev = tmp_elev;
+       } else {
+           scenery.cur_elev = 0.0;
+       }  
     }
 
     // cout << "current elevation (ssg) == " << scenery.cur_elev << endl;
index 39b8103c521b350df3078f355e13dde67ea9039b..dacc376344e071cebdf4e7fc7b88e86902f7c93d 100644 (file)
@@ -165,7 +165,8 @@ public:
                     FGHitList *list );
 
     bool current_elev_ssg( sgdVec3 abs_view_pos, 
-                          sgVec3 view_pos );
+                          sgVec3 view_pos,
+                          double *terrain_elev );
        
     // Prepare the ssg nodes ... for each tile, set it's proper
     // transform and update it's range selector based on current