osgTerrain.TerrainTile是OpenSceneGraph中的类,用于表示地形上的一个小块瓦片。
继承自:osg::Referenced
派生自:osgTerrain::TerrainTile
TerrainTile(int level, int row, int col, double minX, double minY, double maxX, double maxY)
构造函数。创建一个地形块瓦片,并初始化其层级、行列号以及包含的范围。
void setHeightField(osgTerrain::HeightField* height)
设置该地形块的高度场。
osgTerrain::HeightField* getHeightField() const
获取该地形块的高度场。
float getElevation(float x, float y) const
获取给定位置的高程值。
void setNormalArray(osg::Vec3Array* normals)
设置法向量数组。
osg::Vec3Array* getNormalArray() const
获取法向量数组。
void setSurface(osgTerrain::SurfaceNode* surface)
设置该地形块的表面节点。
osgTerrain::SurfaceNode* getSurface() const
获取该地形块的表面节点。
int getLevelOfDetail() const
获取该地形块的详细程度。
int getRow() const
获取该地形块在行方向的编号。
int getColumn() const
获取该地形块在列方向的编号。
int getNumFaces() const
获取该地形块包含的面片数。
const osg::BoundingSphere& getBound() const
获取该地形块的边界球。
void computeBound() const
计算该地形块的边界球。
void setRequiresUpdateCall(bool flag)
设置该地形块是否需要进行更新回调。
bool getRequiresUpdateCall() const
获取该地形块是否需要进行更新回调。
osg::ref_ptr<osgTerrain::HeightField> heightField = new osgTerrain::HeightField;
osg::ref_ptr<osgTerrain::TerrainTile> terrainTile = new osgTerrain::TerrainTile(0, 0, 0, 0, 0, 1, 1);
terrainTile->setHeightField(heightField);