+ sgdVec3 sc;
+ sgdSetVec3( sc,
+ scenery.get_center()[0],
+ scenery.get_center()[1],
+ scenery.get_center()[2] );
+
+#if 0
+ if ( scenery.center == Point3D(0.0) ) {
+ // initializing
+ cout << "initializing scenery current elevation ... " << endl;
+ sgdVec3 tmp_abs_view_pos;
+
+ Point3D geod_pos = Point3D( longitude * SGD_DEGREES_TO_RADIANS,
+ latitude * SGD_DEGREES_TO_RADIANS,
+ 0.0);
+ Point3D tmp = sgGeodToCart( geod_pos );
+ scenery.center = tmp;
+ sgdSetVec3( tmp_abs_view_pos, tmp.x(), tmp.y(), tmp.z() );
+
+ // cout << "abs_view_pos = " << tmp_abs_view_pos << endl;
+ prep_ssg_nodes();
+
+ double tmp_elev;
+ if ( fgCurrentElev(tmp_abs_view_pos, sc, &hit_list,
+ &tmp_elev, &scenery.cur_radius, scenery.cur_normal) )
+ {
+ scenery.set_cur_elev( tmp_elev );
+ } else {
+ scenery.set_cur_elev( 0.0 );
+ }
+ cout << "result = " << scenery.get_cur_elev() << endl;
+ } else {
+#endif
+ // cout << "abs view pos = " << current_view.abs_view_pos
+ // << " view pos = " << current_view.view_pos << endl;
+ double tmp_elev;
+ double tmp_radius;
+ sgdVec3 tmp_normal;
+ if ( fgCurrentElev(globals->get_current_view()->get_abs_view_pos(),
+ sc, &hit_list,
+ &tmp_elev, &tmp_radius, tmp_normal) )
+ {
+ scenery.set_cur_elev( tmp_elev );
+ scenery.set_cur_radius( tmp_radius );
+ scenery.set_cur_normal( tmp_normal );
+ } else {
+ scenery.set_cur_elev( -9999.0 );
+ }
+ // cout << "Current elevation = " << scenery.get_cur_elev() << endl;
+#if 0
+ }
+#endif
+
+ return 1;
+}