3#include "ClipmapState.h"
4#include "ClipmapLevel.h"
5#include "Raster/RasterLevel.h"
11 const int imageryWest = (int)imageryLevel.rasterLevel->longitudeToIndex(terrainLevel.rasterLevel->indexToLongitude(terrainLevel.nextExtent.west));
12 const int imagerySouth = (int)imageryLevel.rasterLevel->latitudeToIndex(terrainLevel.rasterLevel->indexToLatitude(terrainLevel.nextExtent.south));
14 imageryLevel.nextExtent.west = imageryWest;
15 imageryLevel.nextExtent.east = imageryWest + imageryLevel.renderTexture.width - 1;
16 imageryLevel.nextExtent.south = imagerySouth;
17 imageryLevel.nextExtent.north = imagerySouth + imageryLevel.renderTexture.height - 1;
22 const double longitudeIndex = firstTerrainLevel.rasterLevel->longitudeToIndex(longitude);
23 const double latitudeIndex = firstTerrainLevel.rasterLevel->latitudeToIndex(latitude);
25 int west = (int)(longitudeIndex - clipmapState.clipmapPosts / 2);
26 int south = (int)(latitudeIndex - clipmapState.clipmapPosts / 2);
29 if ((west % 2) != 0) ++west;
30 if ((south % 2) != 0) ++south;
32 firstTerrainLevel.nextExtent.west = west;
33 firstTerrainLevel.nextExtent.east = west +
static_cast<int>(clipmapState.clipmapSegments);
34 firstTerrainLevel.nextExtent.south = south;
35 firstTerrainLevel.nextExtent.north = south +
static_cast<int>(clipmapState.clipmapSegments);
40 terrainLevel.nextExtent.west = finerLevel.nextExtent.west / 2 -
static_cast<int>(clipmapState.fillPatchSegments);
41 terrainLevel.offsetStripOnEast = (terrainLevel.nextExtent.west % 2) == 0;
43 if (!terrainLevel.offsetStripOnEast) {
44 --terrainLevel.nextExtent.west;
47 terrainLevel.nextExtent.east = terrainLevel.nextExtent.west +
static_cast<int>(clipmapState.clipmapSegments);
49 terrainLevel.nextExtent.south = finerLevel.nextExtent.south / 2 -
static_cast<int>(clipmapState.fillPatchSegments);
50 terrainLevel.offsetStripOnNorth = (terrainLevel.nextExtent.south % 2) == 0;
52 if (!terrainLevel.offsetStripOnNorth) {
53 --terrainLevel.nextExtent.south;
56 terrainLevel.nextExtent.north = terrainLevel.nextExtent.south +
static_cast<int>(clipmapState.clipmapSegments);
Contains all Cogs related functionality.