コード例 #1
0
PlanetRenderer* PlanetRendererBuilder::create() {
  PlanetRenderer* planetRenderer = new PlanetRenderer(getTileTessellator(),
                                                      getElevationDataProvider(),
                                                      getVerticalExaggeration(),
                                                      getTexturizer(),
                                                      getTileRasterizer(),
                                                      getLayerSet(),
                                                      getParameters(),
                                                      getShowStatistics(),
                                                      getTexturePriority(),
                                                      getRenderedSector());

  for (int i = 0; i < getVisibleSectorListeners()->size(); i++) {
    planetRenderer->addVisibleSectorListener(getVisibleSectorListeners()->at(i),
                                             TimeInterval::fromMilliseconds(getStabilizationMilliSeconds()->at(i)));
  }

  _parameters = NULL;
  _layerSet = NULL;
  _texturizer = NULL;
  _tileTessellator = NULL;
  delete _visibleSectorListeners;
  _visibleSectorListeners = NULL;
  delete _stabilizationMilliSeconds;
  _stabilizationMilliSeconds = NULL;

  _elevationDataProvider = NULL;

  delete _renderedSector;
  _renderedSector = NULL;

  _tileRasterizers.clear();

  return planetRenderer;
}
コード例 #2
0
TileTessellator* PlanetRendererBuilder::createTileTessellator() {
//#warning Testing Terrain Normals
  const bool skirted = true;
  return new PlanetTileTessellator(skirted, getRenderedSector());
}
コード例 #3
0
TileTessellator* PlanetRendererBuilder::createTileTessellator() {
  return new PlanetTileTessellator(true, getRenderedSector());
}