src/util/Tile.js
function (sector, level, row, column) {
            if (!sector) {
                throw new ArgumentError(
                    Logger.logMessage(Logger.LEVEL_SEVERE, "Tile", "constructor", "missingSector"));
            }

            if (!level) {
                throw new ArgumentError(
                    Logger.logMessage(Logger.LEVEL_SEVERE, "Tile", "constructor",
                        "The specified level is null or undefined."));
            }

            if (row < 0 || column < 0) {
                throw new ArgumentError(
                    Logger.logMessage(Logger.LEVEL_SEVERE, "Tile", "constructor",
                        "The specified row or column is less than zero."));
            }

            /**
             * The sector represented by this tile.
             * @type {Sector}
             * @readonly
             */
            this.sector = sector;

            /**
             * The level at which this tile lies in a tile pyramid.
             * @type {Number}
             * @readonly
             */
            this.level = level;

            /**
             * The row in this tile's level in which this tile lies in a tile pyramid.
             * @type {Number}
             * @readonly
             */
            this.row = row;

            /**
             * The column in this tile's level in which this tile lies in a tile pyramid.
             * @type {Number}
             * @readonly
             */
            this.column = column;

            /**
             * The width in pixels or cells of this tile's associated resource.
             * @type {Number}
             */
            this.tileWidth = level.tileWidth;

            /**
             * The height in pixels or cells of this tile's associated resource.
             * @type {Number}
             */
            this.tileHeight = level.tileHeight;

            /**
             * The size in radians of pixels or cells of this tile's associated resource.
             * @type {Number}
             */
            this.texelSize = level.texelSize;

            /**
             * A key that uniquely identifies this tile within a level set.
             * @type {String}
             * @readonly
             */
            this.tileKey = Tile.computeTileKey(level.levelNumber, row, column);

            /**
             * The Cartesian bounding box of this tile.
             * @type {BoundingBox}
             */
            this.extent = null;

            /**
             * The tile's local origin in model coordinates. Any model coordinate points associates with the tile
             * should be relative to this point.
             * @type {Vec3}
             */
            this.referencePoint = null;

            /**
             * This tile's opacity.
             * @type {Number}
             * @default 1
             */
            this.opacity = 1;

            // Internal use only. Intentionally not documented.
            this.samplePoints = null;

            // Internal use only. Intentionally not documented.
            this.sampleElevations = null;

            // Internal use only. Intentionally not documented.
            this.updateTimestamp = null;

            // Internal use only. Intentionally not documented.
            this.updateVerticalExaggeration = null;

            // Internal use only. Intentionally not documented.
            this.updateGlobeStateKey = null;
        }
function (sector, level, row, column) {
            if (!sector) {
                throw new ArgumentError(
                    Logger.logMessage(Logger.LEVEL_SEVERE, "Tile", "constructor", "missingSector"));
            }

            if (!level) {
                throw new ArgumentError(
                    Logger.logMessage(Logger.LEVEL_SEVERE, "Tile", "constructor",
                        "The specified level is null or undefined."));
            }

            if (row < 0 || column < 0) {
                throw new ArgumentError(
                    Logger.logMessage(Logger.LEVEL_SEVERE, "Tile", "constructor",
                        "The specified row or column is less than zero."));
            }

            /**
             * The sector represented by this tile.
             * @type {Sector}
             * @readonly
             */
            this.sector = sector;

            /**
             * The level at which this tile lies in a tile pyramid.
             * @type {Number}
             * @readonly
             */
            this.level = level;

            /**
             * The row in this tile's level in which this tile lies in a tile pyramid.
             * @type {Number}
             * @readonly
             */
            this.row = row;

            /**
             * The column in this tile's level in which this tile lies in a tile pyramid.
             * @type {Number}
             * @readonly
             */
            this.column = column;

            /**
             * The width in pixels or cells of this tile's associated resource.
             * @type {Number}
             */
            this.tileWidth = level.tileWidth;

            /**
             * The height in pixels or cells of this tile's associated resource.
             * @type {Number}
             */
            this.tileHeight = level.tileHeight;

            /**
             * The size in radians of pixels or cells of this tile's associated resource.
             * @type {Number}
             */
            this.texelSize = level.texelSize;

            /**
             * A key that uniquely identifies this tile within a level set.
             * @type {String}
             * @readonly
             */
            this.tileKey = Tile.computeTileKey(level.levelNumber, row, column);

            /**
             * The Cartesian bounding box of this tile.
             * @type {BoundingBox}
             */
            this.extent = null;

            /**
             * The tile's local origin in model coordinates. Any model coordinate points associates with the tile
             * should be relative to this point.
             * @type {Vec3}
             */
            this.referencePoint = null;

            /**
             * This tile's opacity.
             * @type {Number}
             * @default 1
             */
            this.opacity = 1;

            // Internal use only. Intentionally not documented.
            this.samplePoints = null;

            // Internal use only. Intentionally not documented.
            this.sampleElevations = null;

            // Internal use only. Intentionally not documented.
            this.updateTimestamp = null;

            // Internal use only. Intentionally not documented.
            this.updateVerticalExaggeration = null;

            // Internal use only. Intentionally not documented.
            this.updateGlobeStateKey = null;
        }
function ( sector , level , row , column ) { if ( ! sector ) { throw new ArgumentError ( Logger . logMessage ( Logger . LEVEL_SEVERE , "Tile" , "constructor" , "missingSector" ) ) ; } if ( ! level ) { throw new ArgumentError ( Logger . logMessage ( Logger . LEVEL_SEVERE , "Tile" , "constructor" , "The specified level is null or undefined." ) ) ; } if ( row < 0 || column < 0 ) { throw new ArgumentError ( Logger . logMessage ( Logger . LEVEL_SEVERE , "Tile" , "constructor" , "The specified row or column is less than zero." ) ) ; } /**
             * The sector represented by this tile.
             * @type {Sector}
             * @readonly
             */ this . sector = sector ; /**
             * The level at which this tile lies in a tile pyramid.
             * @type {Number}
             * @readonly
             */ this . level = level ; /**
             * The row in this tile's level in which this tile lies in a tile pyramid.
             * @type {Number}
             * @readonly
             */ this . row = row ; /**
             * The column in this tile's level in which this tile lies in a tile pyramid.
             * @type {Number}
             * @readonly
             */ this . column = column ; /**
             * The width in pixels or cells of this tile's associated resource.
             * @type {Number}
             */ this . tileWidth = level . tileWidth ; /**
             * The height in pixels or cells of this tile's associated resource.
             * @type {Number}
             */ this . tileHeight = level . tileHeight ; /**
             * The size in radians of pixels or cells of this tile's associated resource.
             * @type {Number}
             */ this . texelSize = level . texelSize ; /**
             * A key that uniquely identifies this tile within a level set.
             * @type {String}
             * @readonly
             */ this . tileKey = Tile . computeTileKey ( level . levelNumber , row , column ) ; /**
             * The Cartesian bounding box of this tile.
             * @type {BoundingBox}
             */ this . extent = null ; /**
             * The tile's local origin in model coordinates. Any model coordinate points associates with the tile
             * should be relative to this point.
             * @type {Vec3}
             */ this . referencePoint = null ; /**
             * This tile's opacity.
             * @type {Number}
             * @default 1
             */ this . opacity = 1 ; // Internal use only. Intentionally not documented. this . samplePoints = null ; // Internal use only. Intentionally not documented. this . sampleElevations = null ; // Internal use only. Intentionally not documented. this . updateTimestamp = null ; // Internal use only. Intentionally not documented. this . updateVerticalExaggeration = null ; // Internal use only. Intentionally not documented. this . updateGlobeStateKey = null ; }
Constructs a tile for a specified sector, level, row and column.
@alias Tile
@constructor
@classdesc Represents a tile of terrain or imagery.
Provides a base class for texture tiles used by tiled image layers and elevation tiles used by elevation models.
Applications typically do not interact with this class.
@param {Sector} sector The sector represented by this tile.
@param {Level} level This tile's level in a tile pyramid.
@param {Number} row This tile's row in the specified level in a tile pyramid.
@param {Number} column This tile's column in the specified level in a tile pyramid.
@throws {ArgumentError} If the specified sector or level is null or undefined or the row or column arguments
are less than zero.
Constructs a tile for a specified sector level row and column .