de.micromata.opengis.kml.v_2_2_0.ImagePyramid Maven / Gradle / Ivy
Show all versions of JavaAPIforKml Show documentation
package de.micromata.opengis.kml.v_2_2_0;
import de.micromata.opengis.kml.v_2_2_0.annotations.Obvious;
import jakarta.xml.bind.annotation.*;
import java.util.ArrayList;
import java.util.List;
/**
* {@code }
*
* For very large images, you'll need to construct an image pyramid, which is a hierarchical
* set of images, each of which is an increasingly lower resolution version of the
* original image. Each image in the pyramid is subdivided into tiles, so that only
* the portions in view need to be loaded. Google Earth calculates the current viewpoint
* and loads the tiles that are appropriate to the user's distance from the image.
* As the viewpoint moves closer to the PhotoOverlay, Google Earth loads higher resolution
* tiles. Since all the pixels in the original image can't be viewed on the screen
* at once, this preprocessing allows Google Earth to achieve maximum performance because
* it loads only the portions of the image that are in view, and only the pixel details
* that can be discerned by the user at the current viewpoint.
*
*
* When you specify an image pyramid, you also modify the {@code }in the {@code }element
* to include specifications for which tiles to load.
*
*
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "ImagePyramidType", propOrder = {
"tileSize",
"maxWidth",
"maxHeight",
"gridOrigin",
"imagePyramidSimpleExtension",
"imagePyramidObjectExtension"
})
@XmlRootElement(name = "ImagePyramid", namespace = "http://www.opengis.net/kml/2.2")
public class ImagePyramid
extends AbstractObject
implements Cloneable
{
/**
* {@code }
*
* Size of the tiles, in pixels. Tiles must be square, and {@code } must be a power
* of 2. A tile size of 256 (the default) or 512 is recommended. The original image
* is divided into tiles of this size, at varying resolutions.
*
*
*
*
*/
@XmlElement(defaultValue = "256")
protected int tileSize;
/**
* {@code }
*
* Width in pixels of the original image.
*
*
*
*
*/
@XmlElement(defaultValue = "0")
protected int maxWidth;
/**
* {@code }
*
* Height in pixels of the original image.
*
*
*
*
*/
@XmlElement(defaultValue = "0")
protected int maxHeight;
/**
* GridOrigin
*
* lowerLeft, upperLeft
*
*
* See Also:
* See {@code }
*
*
*
*/
@XmlElement(defaultValue = "lowerLeft")
protected GridOrigin gridOrigin;
@XmlElement(name = "ImagePyramidSimpleExtensionGroup")
@XmlSchemaType(name = "anySimpleType")
protected List