de.micromata.opengis.kml.v_2_2_0.Model 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 }
*
* A 3D object described in a COLLADA file (referenced in the {@code } tag). COLLADA
* files have a .dae file extension. Models are created in their own coordinate space
* and then located, positioned, and scaled in Google Earth. See the "Topics in KML"
* page on Regions for more detail.
*
*
* Google Earth supports only triangles and lines as primitive types. The maximum number
* of triangles allowed is 21845. Google Earth does not support animation or skinning.
* Google Earth does not support external geometry references.
*
*
* Google Earth supports the COLLADA common profile, with the following exceptions:
*
*
* Syntax:
* <Model id="ID">
* <!-- specific to Model -->
* <altitudeMode>clampToGround</altitudeMode>
* <!-- kml:altitudeModeEnum: clampToGround,relativeToGround,or absolute -->
* <!-- or, substitute gx:altitudeMode: clampToSeaFloor, relativeToSeaFloor -->
* <Location>
* <longitude></longitude> <!-- kml:angle180 -->
* <latitude></latitude> <!-- kml:angle90 -->
* <altitude>0</altitude> <!-- double -->
* </Location>
* <Orientation>
* <heading>0</heading> <!-- kml:angle360 -->
* <tilt>0</tilt> <!-- kml:angle360 -->
* <roll>0</roll> <!-- kml:angle360 -->
* </Orientation>
* <Scale>
* <x>1</x> <!-- double -->
* <y>1</y> <!-- double -->
* <z>1</z> <!-- double -->
* </Scale>
* <Link>...</Link>
* <ResourceMap>
* <Alias>
* <targetHref>...</targetHref> <!-- anyURI -->
* <sourceHref>...</sourceHref> <!-- anyURI -->
* </Alias>
* </ResourceMap>
* </Model>
*
* Extends:
*
*
* Contained By:
*
*
*
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "ModelType", propOrder = {
"altitudeMode",
"location",
"orientation",
"scale",
"link",
"resourceMap",
"modelSimpleExtension",
"modelObjectExtension"
})
@XmlRootElement(name = "Model", namespace = "http://www.opengis.net/kml/2.2")
public class Model
extends Geometry
implements Cloneable
{
/**
* AltitudeMode
*
* clampToGround, relativeToGround, absolute
*
*
* See Also:
* See LookAt and {@code }
*
*
*
*/
@XmlElement(defaultValue = "clampToGround")
protected AltitudeMode altitudeMode;
/**
* {@code }
*
* Specifies the exact coordinates of the Model's origin in latitude, longitude, and
* altitude. Latitude and longitude measurements are standard lat-lon projection with
* WGS84 datum. Altitude is distance above the earth's surface, in meters, and is interpreted
* according to altitudeMode or gx:altitudeMode. {@code 39.55375305703105
* -118.9813220168456 1223 }
*
*
*
*
*/
@XmlElement(name = "Location")
protected Location location;
/**
* {@code }
*
* Describes rotation of a 3D model's coordinate system to position the object in Google
* Earth. See diagram below. {@code 45.0 10.0
* 0.0 }
*
*
*
*
*/
@XmlElement(name = "Orientation")
protected Orientation orientation;
/**
* {@code }
*
* Note: The {@code } tag has been deprecated. Use {@code } instead.
*
*
* Resizes the icon.
*
*
* Scales a model along the x, y, and z axes in the model's coordinate space. {@code
* 2.5 2.5 3.5 }
*
*
*
*
*/
@XmlElement(name = "Scale")
protected Scale scale;
/**
* {@code } (required). see {@code }.
*
* {@code } specifies the location of any of the following:
*
*
* If the file specified in {@code }is a local file, the {@code } and {@code }
* elements are not used.
*
*
* KML files fetched by network links Image files used in any Overlay (the {@code }element
* specifies the image in an Overlay; {@code }has the same fields as {@code }) Model files
* used in the {@code } element
*
*
* Specifies the URL of the website containing this KML or KMZ file. Be sure to include
* the namespace for this element in any KML file that uses it: xmlns:atom="http://www.w3.org/2005/Atom"
* (see the sample that follows).
*
*
* Specifies the file to load and optional refresh parameters. See {@code }.
*
*
* The {@code } element replaces the {@code } element of NetworkLink contained in earlier
* KML releases and adds functionality for the {@code } element (introduced in KML
* 2.1). In Google Earth releases 3.0 and earlier, the {@code } element is ignored.
*
*
* The file is conditionally loaded and refreshed, depending on the refresh parameters
* supplied here. Two different sets of refresh parameters can be specified: one set
* is based on time ({@code } and {@code }) and one is based on the current
* "camera" view ({@code } and {@code }). In addition, Link specifies
* whether to scale the bounding box parameters that are sent to the server ({@code }
* and provides a set of optional viewing parameters that can be sent to the server
* ({@code }) as well as a set of optional parameters containing version and language
* information.
*
*
* Tip: To display the top-level Folder or Document within a Network Link in the List
* View, assign an ID to the Folder or Document. Without this ID, only the child object
* names are displayed in the List View.
*
*
* When a file is fetched, the URL that is sent to the server is composed of three
* pieces of information:
*
*
* the href (Hypertext Reference) that specifies the file to load. an arbitrary format
* string that is created from (a) parameters that you specify in the {@code }
* element or (b) bounding box parameters (this is the default and is used if no {@code }
* element is included in the file). a second format string that is specified in the
* {@code } element.
*
*
* Syntax:
* <Link id="ID">
* <!-- specific to Link -->
* <href>...</href> <!-- string -->
* <refreshMode>onChange</refreshMode>
* <!-- refreshModeEnum: onChange, onInterval, or onExpire -->
* <refreshInterval>4</refreshInterval> <!-- float -->
* <viewRefreshMode>never</viewRefreshMode>
* <!-- viewRefreshModeEnum: never, onStop, onRequest, onRegion -->
* <viewRefreshTime>4</viewRefreshTime> <!-- float -->
* <viewBoundScale>1</viewBoundScale> <!-- float -->
* <viewFormat>BBOX=[bboxWest],[bboxSouth],[bboxEast],[bboxNorth]</viewFormat>
* <!-- string -->
* <httpQuery>...</httpQuery> <!-- string -->
* </Link>
*
* Extends:
*
*
* Contained By:
*
*
*
* See Also:
* {@code }
* {@code }
*
*
*
*/
@XmlElement(name = "Link")
protected Link link;
/**
* {@code }
*
*
*/
@XmlElement(name = "ResourceMap")
protected ResourceMap resourceMap;
@XmlElement(name = "ModelSimpleExtensionGroup")
@XmlSchemaType(name = "anySimpleType")
protected List