osgEarth 2.1.1
Public Member Functions | Protected Attributes

seamless::Geographic Class Reference

Inheritance diagram for seamless::Geographic:
Collaboration diagram for seamless::Geographic:

List of all members.

Public Member Functions

 Geographic (const osgEarth::Map *map, const osgEarth::Drivers::SeamlessOptions &options)
 Geographic (const Geographic &rhs, const osg::CopyOp &copyop=osg::CopyOp::SHALLOW_COPY)
 META_Object (seamless, PatchSet)
virtual ~Geographic ()
virtual osg::Node * createPatchGroup (const std::string &filename, PatchOptions *poptions)
virtual osg::Transform * createPatch (const std::string &filename, PatchOptions *poptions)
virtual osg::Node * createPatchSetGraph (const std::string &filename)
virtual osg::Node * createChild (const PatchOptions *parentOptions, int childNum)
osgEarth::ProfilegetProfile () const
void setEllipsoidModel (osg::EllipsoidModel *eModel)
osg::EllipsoidModel * getEllipsoidModel () const
osg::Vec3d toModel (double cubeX, double cubeY, double elevation)
osgEarth::TaskServicegetHeightFieldService ()
osgEarth::TaskServicegetImageService ()

Protected Attributes

osg::ref_ptr< EulerProfile_profile
osg::ref_ptr< osg::EllipsoidModel > _eModel
osg::ref_ptr
< osgEarth::TaskService
_hfService
osg::ref_ptr
< osgEarth::TaskService
_imageService

Detailed Description

Definition at line 39 of file Geographic.


Constructor & Destructor Documentation

seamless::Geographic::Geographic ( const osgEarth::Map map,
const osgEarth::Drivers::SeamlessOptions options 
)

Definition at line 34 of file Geographic.cpp.

{
    setPrecisionFactor(8);
    setMap(map);
    {
        int maxLevel = 0;
        const ElevationLayerVector& elevations = _mapf->elevationLayers();
        for (ElevationLayerVector::const_iterator itr = elevations.begin(),
                 end = elevations.end();
             itr != end;
             ++itr)
        {
            const TerrainLayerOptions& options
                = (*itr)->getTerrainLayerOptions();
            if (options.maxLevel().isSet()
                && options.maxLevel().get() > maxLevel)
                maxLevel = options.maxLevel().get();
        }
        if (maxLevel > 0)
            setMaxLevel(maxLevel);

    }
    int serviceThreads = computeLoadingThreads(_options.loadingPolicy().get());
    _hfService = new TaskService("Height Field Service", serviceThreads);
    _imageService = new TaskService("Image Service", serviceThreads);
}

Geographic::Geographic(const Geographic& rhs, const osg::CopyOp& copyop)
    : PatchSet(rhs, copyop),

Here is the call graph for this function:

seamless::Geographic::Geographic ( const Geographic rhs,
const osg::CopyOp &  copyop = osg::CopyOp::SHALLOW_COPY 
)

Definition at line 64 of file Geographic.cpp.

seamless::Geographic::~Geographic ( ) [virtual]

Definition at line 72 of file Geographic.cpp.

{

Member Function Documentation

Node * seamless::Geographic::createChild ( const PatchOptions parentOptions,
int  childNum 
) [virtual]

Reimplemented from seamless::PatchSet.

Definition at line 562 of file Geographic.cpp.

{
Transform * seamless::Geographic::createPatch ( const std::string &  filename,
PatchOptions poptions 
) [virtual]

Reimplemented from seamless::PatchSet.

Definition at line 444 of file Geographic.cpp.

{
virtual osg::Node* seamless::Geographic::createPatchGroup ( const std::string &  filename,
PatchOptions poptions 
) [virtual]

Reimplemented from seamless::PatchSet.

Node * seamless::Geographic::createPatchSetGraph ( const std::string &  filename) [virtual]

Reimplemented from seamless::PatchSet.

Definition at line 76 of file Geographic.cpp.

                                  :4326");
    csn->setFormat("WKT");
    csn->setEllipsoidModel(_eModel.get());
    for (int face = 0; face < 6; ++face)
    {
        double x = 0.0, y = 0.0;
        euler::faceToCube(x, y, face);
        PatchOptions* poptions = static_cast<PatchOptions*>(
            osg::clone(getPatchOptionsPrototype()));
        poptions->setPatchSet(this);
        poptions->setTileKey(_profile->createTileKey(x, y, 2));
        Node* node = createPatchGroup("foobar.osgearth_engine_seamless_patch",
                                      poptions);
        csn->addChild(node);
    }
    return csn;
}

namespace
{

Here is the call graph for this function:

osg::EllipsoidModel* seamless::Geographic::getEllipsoidModel ( ) const [inline]

Definition at line 56 of file Geographic.

osgEarth::TaskService* seamless::Geographic::getHeightFieldService ( ) [inline]

Definition at line 59 of file Geographic.

{ return _imageService; }
osgEarth::TaskService* seamless::Geographic::getImageService ( ) [inline]

Definition at line 60 of file Geographic.

:
    osg::ref_ptr<EulerProfile> _profile;
osgEarth::Profile* seamless::Geographic::getProfile ( ) const [inline]

Definition at line 54 of file Geographic.

{ _eModel = eModel; }
seamless::Geographic::META_Object ( seamless  ,
PatchSet   
)

Reimplemented from seamless::PatchSet.

void seamless::Geographic::setEllipsoidModel ( osg::EllipsoidModel *  eModel) [inline]

Definition at line 55 of file Geographic.

{ return _eModel.get(); }
Vec3d seamless::Geographic::toModel ( double  cubeX,
double  cubeY,
double  elevation 
)

Definition at line 548 of file Geographic.cpp.

{

Member Data Documentation

osg::ref_ptr<osg::EllipsoidModel> seamless::Geographic::_eModel [protected]

Definition at line 63 of file Geographic.

Definition at line 64 of file Geographic.

Definition at line 65 of file Geographic.

osg::ref_ptr<EulerProfile> seamless::Geographic::_profile [protected]

Definition at line 62 of file Geographic.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines