cesium-examples/map/3d/static/Cesium/Build/Documentation/KmlDataSource.html

1847 lines
69 KiB
HTML
Raw Normal View History

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>KmlDataSource - Cesium Documentation</title>
<!--[if lt IE 9]>
<script src="javascript/html5.js"></script>
<![endif]-->
<link href="styles/jsdoc-default.css" rel="stylesheet">
<link href="styles/prism.css" rel="stylesheet">
</head>
<body>
<div id="main">
<h1 class="page-title">
<a href="index.html"><img src="Images/CesiumLogo.png" class="cesiumLogo"></a>
KmlDataSource
<div class="titleCenterer"></div>
</h1>
<section>
<header>
</header>
<article>
<div class="container-overview">
<div class="nameContainer">
<h4 class="name" id="KmlDataSource">
<a href="#KmlDataSource" class="doc-link"></a>
new Cesium.KmlDataSource<span class="signature">(options)</span>
<div class="source-link rightLinks">
<a href="https://github.com/AnalyticalGraphicsInc/cesium/blob/1.58/Source/DataSources/KmlDataSource.js#L2491">DataSources/KmlDataSource.js 2491</a>
</div>
</h4>
</div>
<div class="description">
A <a href="DataSource.html"><code>DataSource</code></a> which processes Keyhole Markup Language 2.2 (KML). <p> KML support in Cesium is incomplete, but a large amount of the standard, as well as Google's <code>gx</code> extension namespace, is supported. See Github issue <a href="https://github.com/AnalyticalGraphicsInc/cesium/issues/873">#873</a> for a detailed list of what is and isn't support. Cesium will also write information to the console when it encounters most unsupported features. </p> <p> Non visual feature data, such as <code>atom:author</code> and <code>ExtendedData</code> is exposed via an instance of <a href="KmlFeatureData.html"><code>KmlFeatureData</code></a>, which is added to each <a href="Entity.html"><code>Entity</code></a> under the <code>kml</code> property. </p>
</div>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>options</code></td>
<td class="type">
<span class="param-type">Object</span>
</td>
<td class="description last">
An object with the following properties:
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Default</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>camera</code></td>
<td class="type">
<span class="param-type"><a href="Camera.html">Camera</a></span>
</td>
<td class="default">
</td>
<td class="description last">
The camera that is used for viewRefreshModes and sending camera properties to network links.</td>
</tr>
<tr>
<td class="name"><code>canvas</code></td>
<td class="type">
<span class="param-type">Canvas</span>
</td>
<td class="default">
</td>
<td class="description last">
The canvas that is used for sending viewer properties to network links.</td>
</tr>
<tr>
<td class="name"><code>ellipsoid</code></td>
<td class="type">
<span class="param-type"><a href="Ellipsoid.html">Ellipsoid</a></span>
</td>
<td class="default">
<code class="language-javascript">Ellipsoid.WGS84</code>
</td>
<td class="description last">
<span class="optional">optional</span>
The global ellipsoid used for geographical calculations.</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
<dl class="details">
<h5>Example:</h5>
<pre><code class="language-javascript">var viewer = new Cesium.Viewer('cesiumContainer'); viewer.dataSources.add(Cesium.KmlDataSource.load('../../SampleData/facilities.kmz', { camera: viewer.scene.camera, canvas: viewer.scene.canvas }) );</code></pre>
<h5>Demo:</h5>
<ul class="see-list">
<li><a href="https://cesiumjs.org/Cesium/Apps/Sandcastle/index.html?src=KML.html">Cesium Sandcastle KML Demo</a></li>
</ul>
<h5>See:</h5>
<ul class="see-list">
<li><a href="http://www.opengeospatial.org/standards/kml/">Open Geospatial Consortium KML Standard</a></li>
<li><a href="https://developers.google.com/kml/">Google KML Documentation</a></li>
</ul>
</dl>
</div>
<h3 class="subsection-title">Members</h3>
<div class="nameContainer">
<h4 class="name" id="changedEvent">
<a href="#changedEvent" class="doc-link"></a>
changedEvent<span class="type-signature"> : <a href="Event.html">Event</a></span>
<div class="source-link rightLinks">
<a href="https://github.com/AnalyticalGraphicsInc/cesium/blob/1.58/Source/DataSources/KmlDataSource.js#L2605">DataSources/KmlDataSource.js 2605</a>
</div>
</h4>
</div>
<div class="description">
Gets an event that will be raised when the underlying data changes.
</div>
<dl class="details">
</dl>
<div class="nameContainer">
<h4 class="name" id="clock">
<a href="#clock" class="doc-link"></a>
clock<span class="type-signature"> : <a href="DataSourceClock.html">DataSourceClock</a></span>
<div class="source-link rightLinks">
<a href="https://github.com/AnalyticalGraphicsInc/cesium/blob/1.58/Source/DataSources/KmlDataSource.js#L2575">DataSources/KmlDataSource.js 2575</a>
</div>
</h4>
</div>
<div class="description">
Gets the clock settings defined by the loaded KML. This represents the total availability interval for all time-dynamic data. If the KML does not contain time-dynamic data, this value is undefined.
</div>
<dl class="details">
</dl>
<div class="nameContainer">
<h4 class="name" id="clustering">
<a href="#clustering" class="doc-link"></a>
clustering<span class="type-signature"> : <a href="EntityCluster.html">EntityCluster</a></span>
<div class="source-link rightLinks">
<a href="https://github.com/AnalyticalGraphicsInc/cesium/blob/1.58/Source/DataSources/KmlDataSource.js#L2670">DataSources/KmlDataSource.js 2670</a>
</div>
</h4>
</div>
<div class="description">
Gets or sets the clustering options for this data source. This object can be shared between multiple data sources.
</div>
<dl class="details">
</dl>
<div class="nameContainer">
<h4 class="name" id="entities">
<a href="#entities" class="doc-link"></a>
entities<span class="type-signature"> : <a href="EntityCollection.html">EntityCollection</a></span>
<div class="source-link rightLinks">
<a href="https://github.com/AnalyticalGraphicsInc/cesium/blob/1.58/Source/DataSources/KmlDataSource.js#L2585">DataSources/KmlDataSource.js 2585</a>
</div>
</h4>
</div>
<div class="description">
Gets the collection of <a href="Entity.html"><code>Entity</code></a> instances.
</div>
<dl class="details">
</dl>
<div class="nameContainer">
<h4 class="name" id="errorEvent">
<a href="#errorEvent" class="doc-link"></a>
errorEvent<span class="type-signature"> : <a href="Event.html">Event</a></span>
<div class="source-link rightLinks">
<a href="https://github.com/AnalyticalGraphicsInc/cesium/blob/1.58/Source/DataSources/KmlDataSource.js#L2615">DataSources/KmlDataSource.js 2615</a>
</div>
</h4>
</div>
<div class="description">
Gets an event that will be raised if an error is encountered during processing.
</div>
<dl class="details">
</dl>
<div class="nameContainer">
<h4 class="name" id="isLoading">
<a href="#isLoading" class="doc-link"></a>
isLoading<span class="type-signature"> : Boolean</span>
<div class="source-link rightLinks">
<a href="https://github.com/AnalyticalGraphicsInc/cesium/blob/1.58/Source/DataSources/KmlDataSource.js#L2595">DataSources/KmlDataSource.js 2595</a>
</div>
</h4>
</div>
<div class="description">
Gets a value indicating if the data source is currently loading data.
</div>
<dl class="details">
</dl>
<div class="nameContainer">
<h4 class="name" id="loadingEvent">
<a href="#loadingEvent" class="doc-link"></a>
loadingEvent<span class="type-signature"> : <a href="Event.html">Event</a></span>
<div class="source-link rightLinks">
<a href="https://github.com/AnalyticalGraphicsInc/cesium/blob/1.58/Source/DataSources/KmlDataSource.js#L2625">DataSources/KmlDataSource.js 2625</a>
</div>
</h4>
</div>
<div class="description">
Gets an event that will be raised when the data source either starts or stops loading.
</div>
<dl class="details">
</dl>
<div class="nameContainer">
<h4 class="name" id="name">
<a href="#name" class="doc-link"></a>
name<span class="type-signature"> : String</span>
<div class="source-link rightLinks">
<a href="https://github.com/AnalyticalGraphicsInc/cesium/blob/1.58/Source/DataSources/KmlDataSource.js#L2557">DataSources/KmlDataSource.js 2557</a>
</div>
</h4>
</div>
<div class="description">
Gets or sets a human-readable name for this instance. This will be automatically be set to the KML document name on load.
</div>
<dl class="details">
</dl>
<div class="nameContainer">
<h4 class="name" id="refreshEvent">
<a href="#refreshEvent" class="doc-link"></a>
refreshEvent<span class="type-signature"> : <a href="Event.html">Event</a></span>
<div class="source-link rightLinks">
<a href="https://github.com/AnalyticalGraphicsInc/cesium/blob/1.58/Source/DataSources/KmlDataSource.js#L2635">DataSources/KmlDataSource.js 2635</a>
</div>
</h4>
</div>
<div class="description">
Gets an event that will be raised when the data source refreshes a network link.
</div>
<dl class="details">
</dl>
<div class="nameContainer">
<h4 class="name" id="show">
<a href="#show" class="doc-link"></a>
show<span class="type-signature"> : Boolean</span>
<div class="source-link rightLinks">
<a href="https://github.com/AnalyticalGraphicsInc/cesium/blob/1.58/Source/DataSources/KmlDataSource.js#L2655">DataSources/KmlDataSource.js 2655</a>
</div>
</h4>
</div>
<div class="description">
Gets whether or not this data source should be displayed.
</div>
<dl class="details">
</dl>
<div class="nameContainer">
<h4 class="name" id="unsupportedNodeEvent">
<a href="#unsupportedNodeEvent" class="doc-link"></a>
unsupportedNodeEvent<span class="type-signature"> : <a href="Event.html">Event</a></span>
<div class="source-link rightLinks">
<a href="https://github.com/AnalyticalGraphicsInc/cesium/blob/1.58/Source/DataSources/KmlDataSource.js#L2645">DataSources/KmlDataSource.js 2645</a>
</div>
</h4>
</div>
<div class="description">
Gets an event that will be raised when the data source finds an unsupported node type.
</div>
<dl class="details">
</dl>
<h3 class="subsection-title">Methods</h3>
<div class="nameContainer">
<h4 class="name" id=".load">
<a href="#.load" class="doc-link"></a>
<span class="type-signature attribute-static">static</span>Cesium.KmlDataSource.load<span class="signature">(data, options)</span> &rarr; <span class="type-signature returnType">Promise.&lt;<a href="KmlDataSource.html">KmlDataSource</a>></span>
<div class="source-link rightLinks">
<a href="https://github.com/AnalyticalGraphicsInc/cesium/blob/1.58/Source/DataSources/KmlDataSource.js#L2544">DataSources/KmlDataSource.js 2544</a>
</div>
</h4>
</div>
<div class="description">
Creates a Promise to a new instance loaded with the provided KML data.
</div>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>data</code></td>
<td class="type">
<span class="param-type"><a href="Resource.html">Resource</a></span>
|
<span class="param-type">String</span>
|
<span class="param-type">Document</span>
|
<span class="param-type">Blob</span>
</td>
<td class="description last">
A url, parsed KML document, or Blob containing binary KMZ data or a parsed KML document.</td>
</tr>
<tr>
<td class="name"><code>options</code></td>
<td class="type">
<span class="param-type">Object</span>
</td>
<td class="description last">
An object with the following properties:
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Default</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>camera</code></td>
<td class="type">
<span class="param-type"><a href="Camera.html">Camera</a></span>
</td>
<td class="default">
</td>
<td class="description last">
The camera that is used for viewRefreshModes and sending camera properties to network links.</td>
</tr>
<tr>
<td class="name"><code>canvas</code></td>
<td class="type">
<span class="param-type">Canvas</span>
</td>
<td class="default">
</td>
<td class="description last">
The canvas that is used for sending viewer properties to network links.</td>
</tr>
<tr>
<td class="name"><code>sourceUri</code></td>
<td class="type">
<span class="param-type">String</span>
</td>
<td class="default">
</td>
<td class="description last">
<span class="optional">optional</span>
Overrides the url to use for resolving relative links and other KML network features.</td>
</tr>
<tr>
<td class="name"><code>clampToGround</code></td>
<td class="type">
<span class="param-type">Boolean</span>
</td>
<td class="default">
<code class="language-javascript">false</code>
</td>
<td class="description last">
<span class="optional">optional</span>
true if we want the geometry features (Polygons, LineStrings and LinearRings) clamped to the ground.</td>
</tr>
<tr>
<td class="name"><code>ellipsoid</code></td>
<td class="type">
<span class="param-type"><a href="Ellipsoid.html">Ellipsoid</a></span>
</td>
<td class="default">
<code class="language-javascript">Ellipsoid.WGS84</code>
</td>
<td class="description last">
<span class="optional">optional</span>
The global ellipsoid used for geographical calculations.</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<div class="param-desc">
A promise that will resolve to a new KmlDataSource instance once the KML is loaded.
</div>
<dl class="details">
</dl>
<div class="nameContainer">
<h4 class="name" id="load">
<a href="#load" class="doc-link"></a>
load<span class="signature">(data, <span class="optional">options</span>)</span> &rarr; <span class="type-signature returnType">Promise.&lt;<a href="KmlDataSource.html">KmlDataSource</a>></span>
<div class="source-link rightLinks">
<a href="https://github.com/AnalyticalGraphicsInc/cesium/blob/1.58/Source/DataSources/KmlDataSource.js#L2696">DataSources/KmlDataSource.js 2696</a>
</div>
</h4>
</div>
<div class="description">
Asynchronously loads the provided KML data, replacing any existing data.
</div>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>data</code></td>
<td class="type">
<span class="param-type"><a href="Resource.html">Resource</a></span>
|
<span class="param-type">String</span>
|
<span class="param-type">Document</span>
|
<span class="param-type">Blob</span>
</td>
<td class="description last">
A url, parsed KML document, or Blob containing binary KMZ data or a parsed KML document.</td>
</tr>
<tr>
<td class="name"><code>options</code></td>
<td class="type">
<span class="param-type">Object</span>
</td>
<td class="description last">
<span class="optional">optional</span>
An object with the following properties:
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Default</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>sourceUri</code></td>
<td class="type">
<span class="param-type"><a href="Resource.html">Resource</a></span>
|
<span class="param-type">String</span>
</td>
<td class="default">
</td>
<td class="description last">
<span class="optional">optional</span>
Overrides the url to use for resolving relative links and other KML network features.</td>
</tr>
<tr>
<td class="name"><code>clampToGround</code></td>
<td class="type">
<span class="param-type">Boolean</span>
</td>
<td class="default">
<code class="language-javascript">false</code>
</td>
<td class="description last">
<span class="optional">optional</span>
true if we want the geometry features (Polygons, LineStrings and LinearRings) clamped to the ground. If true, lines will use corridors so use Entity.corridor instead of Entity.polyline.</td>
</tr>
<tr>
<td class="name"><code>ellipsoid</code></td>
<td class="type">
<span class="param-type"><a href="Ellipsoid.html">Ellipsoid</a></span>
</td>
<td class="default">
<code class="language-javascript">Ellipsoid.WGS84</code>
</td>
<td class="description last">
<span class="optional">optional</span>
The global ellipsoid used for geographical calculations.</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<div class="param-desc">
A promise that will resolve to this instances once the KML is loaded.
</div>
<dl class="details">
</dl>
<div class="nameContainer">
<h4 class="name" id="update">
<a href="#update" class="doc-link"></a>
update<span class="signature">(time)</span> &rarr; <span class="type-signature returnType">Boolean</span>
<div class="source-link rightLinks">
<a href="https://github.com/AnalyticalGraphicsInc/cesium/blob/1.58/Source/DataSources/KmlDataSource.js#L2914">DataSources/KmlDataSource.js 2914</a>
</div>
</h4>
</div>
<div class="description">
Updates any NetworkLink that require updating
</div>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>time</code></td>
<td class="type">
<span class="param-type"><a href="JulianDate.html">JulianDate</a></span>
</td>
<td class="description last">
The simulation time.</td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<div class="param-desc">
True if this data source is ready to be displayed at the provided time, false otherwise.
</div>
<dl class="details">
</dl>
</article>
</section>
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.2</a>
</footer>
</div>
<div class="nav">
<div class="menu">
<input type="text" class="classFilter" id="ClassFilter" placeholder="Search">
<ul id="ClassList"><li data-name="Animation"><a href="Animation.html">Animation</a></li><li data-name="AnimationViewModel"><a href="AnimationViewModel.html">AnimationViewModel</a></li><li data-name="Appearance"><a href="Appearance.html">Appearance</a></li><li data-name="ArcGisMapServerImageryProvider"><a href="ArcGisMapServerImageryProvider.html">ArcGisMapServerImageryProvider</a></li><li data-name="ArcType"><a href="ArcType.html">ArcType</a></li><li data-name="AssociativeArray"><a href="AssociativeArray.html">AssociativeArray</a></li><li data-name="AxisAlignedBoundingBox"><a href="AxisAlignedBoundingBox.html">AxisAlignedBoundingBox</a></li><li data-name="barycentricCoordinates"><a href="barycentricCoordinates.html">barycentricCoordinates</a></li><li data-name="BaseLayerPicker"><a href="BaseLayerPicker.html">BaseLayerPicker</a></li><li data-name="BaseLayerPickerViewModel"><a href="BaseLayerPickerViewModel.html">BaseLayerPickerViewModel</a></li><li data-name="Billboard"><a href="Billboard.html">Billboard</a></li><li data-name="BillboardCollection"><a href="BillboardCollection.html">BillboardCollection</a></li><li data-name="BillboardGraphics"><a href="BillboardGraphics.html">BillboardGraphics</a></li><li data-name="BillboardVisualizer"><a href="BillboardVisualizer.html">BillboardVisualizer</a></li><li data-name="binarySearch"><a href="binarySearch.html">binarySearch</a></li><li data-name="BingMapsApi"><a href="BingMapsApi.html">BingMapsApi</a></li><li data-name="BingMapsGeocoderService"><a href="BingMapsGeocoderService.html">BingMapsGeocoderService</a></li><li data-name="BingMapsImageryProvider"><a href="BingMapsImageryProvider.html">BingMapsImageryProvider</a></li><li data-name="BingMapsStyle"><a href="BingMapsStyle.html">BingMapsStyle</a></li><li data-name="BlendEquation"><a href="BlendEquation.html">BlendEquation</a></li><li data-name="BlendFunction"><a href="BlendFunction.html">BlendFunction</a></li><li data-name="BlendingState"><a href="BlendingState.html">BlendingState</a></li><li data-name="BlendOption"><a href="BlendOption.html">BlendOption</a></li><li data-name="BoundingRectangle"><a href="BoundingRectangle.html">BoundingRectangle</a></li><li data-name="BoundingSphere"><a href="BoundingSphere.html">BoundingSphere</a></li><li data-name="BoxEmitter"><a href="BoxEmitter.html">BoxEmitter</a></li><li data-name="BoxGeometry"><a href="BoxGeometry.html">BoxGeometry</a></li><li data-name="BoxGeometryUpdater"><a href="BoxGeometryUpdater.html">BoxGeometryUpdater</a></li><li data-name="BoxGraphics"><a href="BoxGraphics.html">BoxGraphics</a></li><li data-name="BoxOutlineGeometry"><a href="BoxOutlineGeometry.html">BoxOutlineGeometry</a></li><li data-name="CallbackProperty"><a href="CallbackProperty.html">CallbackProperty</a></li><li data-name="Camera"><a href="Camera.html">Camera</a></li><li data-name="CameraEventAggregator"><a href="CameraEventAggregator.html">CameraEventAggregator</a></li><li data-name="CameraEventType"><a href="CameraEventType.html">CameraEventType</a></li><li data-name="cancelAnimationFrame"><a href="cancelAnimationFrame.html">cancelAnimationFrame</a></li><li data-name="Cartesian2"><a href="Cartesian2.html">Cartesian2</a></li><li data-name="Cartesian3"><a href="Cartesian3.html">Cartesian3</a></li><li data-name="Cartesian4"><a href="Cartesian4.html">Cartesian4</a></li><li data-name="Cartographic"><a href="Cartographic.html">Cartographic</a></li><li data-name="CartographicGeocoderService"><a href="CartographicGeocoderService.html">CartographicGeocoderService</a></li><li data-name="CatmullRomSpline"><a href="CatmullRomSpline.html">CatmullRomSpline</a></li><li data-name="Cesium3DTile"><a href="Cesium3DTile.html">Cesium3DTile</a></li><li data-name="Cesium3DTileColorBlendMode"><a href="Cesium3DTileColorBlendMode.html">Cesium3DTileColorBlendMode</a></li><li data-name="Cesium3DTileContent"><a href="Cesium3DTileContent.html">Cesium3DTileContent</a></li><li data-name="Cesium3DTileFeature"><a href="Cesium3DTileFeature.html">Cesium3DTileFeature</a></li><li data-name="Cesium3DTilePointFeature"><a href="Cesium3
</div>
</div>
<script>
if (window.frameElement) {
document.body.className = 'embedded';
var ele = document.createElement('a');
ele.className = 'popout';
ele.target = '_blank';
ele.href = window.location.href;
ele.title = 'Pop out';
document.getElementById('main').appendChild(ele);
}
// Set targets on external links. Sandcastle and GitHub shouldn't be embedded in any iframe.
Array.prototype.forEach.call(document.getElementsByTagName('a'), function(a) {
if (/^https?:/i.test(a.getAttribute('href'))) {
a.target='_blank';
}
});
</script>
<script src="javascript/prism.js"></script>
<script src="javascript/cesiumDoc.js"></script>
</body>
</html>