#include <simgear/misc/fgstream.hxx>
#include <simgear/misc/fgpath.hxx>
-#include <Main/options.hxx>
-#include <Main/views.hxx>
+#include <Main/globals.hxx>
#include <Objects/obj.hxx>
#include <Scenery/scenery.hxx> // for scenery.center
//
// target_cache_size >= (current.options.tile_diameter + 1) ** 2
//
- int side = current_options.get_tile_diameter() + 2;
+ int side = globals->get_options()->get_tile_diameter() + 2;
int target_cache_size = (side*side);
FG_LOG( FG_TERRAIN, FG_DEBUG, " target cache size = "
<< target_cache_size );
tile_cache[index].tile_bucket = p;
FGPath tile_path;
- if ( current_options.get_fg_scenery() != "" ) {
- tile_path.set( current_options.get_fg_scenery() );
+ if ( globals->get_options()->get_fg_scenery() != "" ) {
+ tile_path.set( globals->get_options()->get_fg_scenery() );
} else {
- tile_path.set( current_options.get_fg_root() );
+ tile_path.set( globals->get_options()->get_fg_root() );
tile_path.append( "Scenery" );
}
tile_path.append( p.gen_base_path() );
while ( ! in.eof() ) {
in >> token;
in >> name;
-#if defined ( MACOS ) || defined ( _MSC_VER )
+#if defined ( macintosh ) || defined ( _MSC_VER )
in >> ::skipws;
#else
in >> skipws;
FGTileCache::next_avail( void )
{
// Point3D delta;
- Point3D abs_view_pos;
+ sgdVec3 abs_view_pos;
int i;
// float max, med, min, tmp;
float dist, max_dist;
return(i);
} else if ( tile_cache[i].is_loaded() || tile_cache[i].is_cached() ) {
// calculate approximate distance from view point
- abs_view_pos = current_view.get_abs_view_pos();
+ sgdCopyVec3( abs_view_pos,
+ globals->get_current_view()->get_abs_view_pos() );
- FG_LOG( FG_TERRAIN, FG_DEBUG,
- "DIST Abs view pos = " << abs_view_pos );
+ FG_LOG( FG_TERRAIN, FG_DEBUG, "DIST Abs view pos = "
+ << abs_view_pos[0] << ","
+ << abs_view_pos[1] << ","
+ << abs_view_pos[2] );
FG_LOG( FG_TERRAIN, FG_DEBUG,
" ref point = " << tile_cache[i].center );
dist = max + (med + min) / 4;
*/
- dist = tile_cache[i].center.distance3D( abs_view_pos );
+ sgdVec3 center;
+ sgdSetVec3( center,
+ tile_cache[i].center[0],
+ tile_cache[i].center[1],
+ tile_cache[i].center[2] );
+ dist = sgdDistanceVec3( center, abs_view_pos );
FG_LOG( FG_TERRAIN, FG_DEBUG, " distance = " << dist );