Data 类
google.maps.Data 类
用于显示地理空间数据的图层。可以显示点、线串和多边形。
每个 Map 默认都有一个 Data 对象,因此大多数情况下无需构建一个。例如:
var myMap = new google.maps.Map(...);
myMap.data.addGeoJson(...);
myMap.data.setStyle(...);
Data 对象是 Features 的集合。
此类扩展了 MVCObject。
通过调用 const {Data} = await google.maps.importLibrary("maps") 进行访问。
请参阅 Maps JavaScript API 中的库。
构造函数 | |
|---|---|
Data |
Data([options])参数:
使用给定的 DataOptions 创建一个空集合。 |
方法 | |
|---|---|
add |
add([feature])参数:
返回值:
Data.Feature向集合添加一个地图项,并返回添加的地图项。 如果该要素具有 ID,则它将替换集合中具有相同 ID 的任何现有要素。如果未提供任何要素,系统将创建一个具有 null 几何图形且不含任何属性的新要素。如果提供了 请注意,ID |
addGeoJson |
addGeoJson(geoJson[, options])参数:
返回值:
Array<Data.Feature>向集合添加 GeoJSON 要素。为此方法提供已解析的 JSON。返回导入的特征。如果无法导入 GeoJSON,则会抛出异常。 |
contains |
contains(feature)参数:
返回值:
boolean检查给定功能是否位于集合中。 |
forEach |
forEach(callback)参数:
返回值:无
重复调用指定函数,并在每次调用时将集合中的一个要素传递给该函数。遍历特征的顺序未定义。 |
getControlPosition |
getControlPosition()参数:无
返回值:
ControlPosition返回绘图控件在地图上的位置。 |
getControls |
getControls()参数:无
返回值:
Array<string>返回用户可选择的绘制模式(按显示顺序)。这不包括默认添加的 null 绘制模式。可能的绘制模式有 "Point"、"LineString" 或 "Polygon"。 |
getDrawingMode |
getDrawingMode()参数:无
返回值:
string|null返回指定数据层的当前绘制模式。绘制模式为 null 表示用户可以像往常一样与地图互动,点击操作不会绘制任何内容。可能的绘制模式为 null、"Point"、"LineString" 或 "Polygon"。 |
getFeatureById |
getFeatureById(id)参数:
返回值:
Data.Feature|undefined返回具有指定 ID 的功能(如果该功能存在于集合中)。否则返回 undefined。 请注意,ID |
getMap |
getMap()参数:无
返回值:
Map返回显示相应要素的地图。 |
getStyle |
getStyle()参数:无
获取集合中所有地图项的样式。 |
loadGeoJson |
loadGeoJson(url[, options, callback])参数:
返回值:无
从网址加载 GeoJSON,并将相应地图项添加到集合中。 注意:GeoJSON 是使用 XHR 提取的,可能无法跨网域使用。如果您遇到问题,建议您使用所选的 AJAX 库获取 GeoJSON,然后调用 |
overrideStyle |
overrideStyle(feature, style)参数:
返回值:无
更改要素的样式。这些更改会应用在 setStyle() 指定的样式之上。设置为 null 的样式属性会恢复为通过 setStyle() 指定的值。 |
remove |
remove(feature)参数:
返回值:无
从集合中移除某个功能。 |
revertStyle |
revertStyle([feature])参数:
返回值:无
移除之前 overrideStyle() 调用的效果。指定地图项的样式会恢复为 setStyle() 指定的样式。如果未提供任何地图项,则所有地图项的样式都会恢复。 |
setControlPosition |
setControlPosition(controlPosition)参数:
返回值:无
设置绘图控件在地图上的位置。 |
setControls |
setControls(controls)参数:
返回值:无
设置用户可选择的绘制模式(按显示顺序)。此参数不应包含默认添加的 null 绘制模式。如果值为 null,则绘图控件处于停用状态,且不会显示。可能的绘制模式有 "Point"、"LineString" 或 "Polygon"。 |
setDrawingMode |
setDrawingMode(drawingMode)参数:
返回值:无
设置指定数据层的当前绘制模式。绘制模式为 null 表示用户可以像往常一样与地图互动,点击操作不会绘制任何内容。可能的绘制模式为 null、"Point"、"LineString" 或 "Polygon"。 |
setMap |
setMap(map)参数:
返回值:无
在指定地图上渲染地图项。如果地图设置为 null,则相应功能将从地图中移除。 |
setStyle |
setStyle(style)参数:
返回值:无
为集合中的所有地图项设置样式。通过 overrideStyle() 为每个地图项指定的样式会继续应用。传递包含所需样式选项的对象,或用于计算每个地图项样式的函数。每次更新地图项的属性时,系统都会调用此函数。 |
toGeoJson |
toGeoJson(callback)参数:
返回值:无
将集合中的要素导出到 GeoJSON 对象。 |
继承自:
addListener、bindTo、get、notify、set、setValues、unbind、unbindAll
| |
事件 | |
|---|---|
addfeature |
function(event)实参:
当向集合添加要素时,系统会触发此事件。 |
click |
function(event)实参:
此事件在点击几何图形时触发。 |
contextmenu |
function(event)实参:
当在几何图形上触发 DOM contextmenu 事件时,会触发此事件。 |
dblclick |
function(event)实参:
此事件在双击几何图形时触发。 |
mousedown |
function(event)实参:
此事件在几何图形上发生鼠标按下事件时触发。 |
mouseout |
function(event)实参:
当鼠标离开几何图形区域时,系统会触发此事件。 |
mouseover |
function(event)实参:
当鼠标进入几何图形区域时,系统会触发此事件。 |
mouseup |
function(event)实参:
此事件在几何图形上发生 mouseup 时触发。 |
removefeature |
function(event)实参:
当从集合中移除某项功能时,系统会触发此事件。 |
removeproperty |
function(event)实参:
当移除某个功能的属性时,系统会触发此事件。 |
setgeometry |
function(event)实参:
当设置了要素的几何图形时,会触发此事件。 |
setproperty |
function(event)实参:
当设置了某项功能的属性时,系统会触发此事件。 |
|
function(event)实参:
此事件在右键点击几何图形时触发。 |
Data.DataOptions 接口
google.maps.Data.DataOptions
接口
用于定义开发者可在 Data 对象上设置的属性的 DataOptions 对象。
属性 | |
|---|---|
map |
类型:
Map要在其上显示集合中要素的地图。 |
controlPosition optional |
类型:
ControlPosition optional绘图控件在地图上的位置。 |
controls optional |
类型:
Array<string> optional默认值:
null描述了哪些绘制模式可供用户选择,以及这些模式的显示顺序。此参数不应包含默认添加的 null 绘制模式。如果值为 null,则绘图控件处于停用状态,且不会显示。可能的绘制模式有 "Point"、"LineString" 或 "Polygon"。 |
drawingMode optional |
类型:
string optional默认值:
null指定数据层的当前绘制模式。绘制模式为 null 表示用户可以像往常一样与地图互动,点击操作不会绘制任何内容。可能的绘制模式为 null、"Point"、"LineString" 或 "Polygon"。 |
featureFactory optional |
类型:
function(Data.Geometry): Data.Feature optional启用绘制功能后,当用户绘制几何图形(点、线串或多边形)时,系统会调用此函数并传入相应几何图形,该函数应返回要添加到数据层的要素。如果未提供 featureFactory,则会改为从该几何图形创建一个没有 ID 和属性的 Feature。默认为 null。 |
style optional |
类型:
Data.StylingFunction|Data.StyleOptions optional集合中所有要素的样式。如需了解详情,请参阅上文中的 setStyle() 方法。 |
Data.GeoJsonOptions 接口
google.maps.Data.GeoJsonOptions
接口
用于导入 GeoJSON 的可选参数。
属性 | |
|---|---|
idPropertyName optional |
类型:
string optional要用作功能 ID 的 Feature 属性的名称。如果未指定,则使用 GeoJSON 要素 ID。 |
Data.StyleOptions 接口
google.maps.Data.StyleOptions
接口
这些选项用于指定地图项在地图上显示时的外观。
属性 | |
|---|---|
animation optional |
类型:
Animation optional在向地图添加标记时播放的动画。仅适用于点几何图形。 |
clickable optional |
类型:
boolean optional默认值:
true如果为 true,则标记会接收鼠标和触摸事件。 |
cursor optional |
类型:
string optional鼠标悬停时显示的鼠标光标。仅适用于点几何图形。 |
draggable optional |
类型:
boolean optional默认值:
false如果为 true,则对象可在地图上拖动,并且底层要素的几何图形将随之更新。 |
editable optional |
类型:
boolean optional默认值:
false如果为 true,则可以通过拖动控制点来修改对象,并且底层要素的几何图形将随之更新。仅适用于 LineString 和 Polygon 几何图形。 |
fillColor optional |
类型:
string optional填充色。支持所有CSS3颜色,扩展命名的颜色除外。仅适用于多边形几何图形。 |
fillOpacity optional |
类型:
number optional介于 0.0 和 1.0 之间的填充不透明度。仅适用于多边形几何图形。 |
icon optional |
前景图标。如果提供的是字符串,则会将其视为 Icon,并将该字符串作为 url。仅适用于点几何图形。 |
icons optional |
类型:
Array<IconSequence> optional要沿多段线渲染的图标。仅适用于线几何图形。 |
label optional |
类型:
string|MarkerLabel optional向标记添加标签。标签可以是字符串,也可以是 MarkerLabel 对象。仅适用于点几何图形。 |
opacity optional |
类型:
number optional标记的不透明度,介于 0.0 和 1.0 之间。仅适用于点几何图形。 |
shape optional |
类型:
MarkerShape optional定义用于检测命中的图像地图。仅适用于点几何图形。 |
strokeColor optional |
类型:
string optional笔触颜色。支持所有CSS3颜色,扩展命名的颜色除外。仅适用于线和多边形几何图形。 |
strokeOpacity optional |
类型:
number optional描边不透明度,介于 0.0 和 1.0 之间。仅适用于线和多边形几何图形。 |
strokeWeight optional |
类型:
number optional描边宽度(以像素为单位)。仅适用于线和多边形几何图形。 |
title optional |
类型:
string optional鼠标悬停时显示的文本。仅适用于点几何图形。 |
visible optional |
类型:
boolean optional默认值:
true相应功能是否可见。 |
zIndex optional |
类型:
number optional所有地图项按照其 zIndex 的顺序显示在地图上,值较高的地图项会显示在值较低的地图项前面。标记始终显示在线串和多边形前面。 |
Data.StylingFunction typedef
google.maps.Data.StylingFunction
typedef
一种用于计算特征外观的函数。
Data.setStyle() 方法可以接受样式设置函数。当功能应根据其属性以不同方式显示时,请使用此属性。如需详细了解样式设置功能,请参阅开发者指南。
function(Data.Feature): Data.StyleOptions
Data.Feature 类
google.maps.Data.Feature 类
地图项具有几何图形、ID 和一组属性。
通过调用 const {Data} = await google.maps.importLibrary("maps") 进行访问。
请参阅 Maps JavaScript API 中的库。
构造函数 | |
|---|---|
Data.Feature |
Data.Feature([options])参数:
使用给定的选项构造 Feature。 |
方法 | |
|---|---|
forEachProperty |
forEachProperty(callback)参数:
返回值:无
重复调用指定函数,并在每次调用时传递属性值和名称。遍历属性的顺序未定义。 |
getGeometry |
getGeometry()参数:无
返回值:
Data.Geometry返回地图项的几何图形。 |
getId |
getId()参数:无
返回值:
number|string|undefined返回功能 ID。 |
getProperty |
getProperty(name)参数:
返回值:
*返回所请求属性的值;如果该属性不存在,则返回 undefined。 |
removeProperty |
removeProperty(name)参数:
返回值:无
移除具有指定名称的属性。 |
setGeometry |
setGeometry(newGeometry)参数:
返回值:无
设置地图项的几何图形。 |
setProperty |
setProperty(name, newValue)参数:
返回值:无
设置指定属性的值。如果 newValue 为 undefined,则这相当于调用 removeProperty。 |
toGeoJson |
toGeoJson(callback)参数:
返回值:无
将要素导出为 GeoJSON 对象。 |
事件 | |
|---|---|
removeproperty |
function(event)实参:
当移除某个功能的属性时,系统会触发此事件。 |
setgeometry |
function(event)实参:
当设置了要素的几何图形时,会触发此事件。 |
setproperty |
function(event)实参:
当设置了某项功能的属性时,系统会触发此事件。 |
Data.FeatureOptions 接口
google.maps.Data.FeatureOptions
接口
用于创建 Data.Feature 对象的可选参数。
属性 | |
|---|---|
geometry optional |
类型:
Data.Geometry|LatLng|LatLngLiteral optional功能几何图形。如果在构建要素时未指定任何几何图形,则要素的几何图形将为 null。如果提供 LatLng 对象或 LatLngLiteral,则会将其转换为 Data.Point 几何图形。 |
id optional |
类型:
number|string optional特征 ID 是可选的。如果提供,则可以使用 getFeatureById() 方法在 Data 对象中查找相应功能。请注意,功能的 ID 之后无法更改。 |
properties optional |
类型:
Object optional功能属性。这是属性名称到值的任意映射。 |
Data.Geometry 接口
google.maps.Data.Geometry
接口
各种几何对象的超类。
方法 | |
|---|---|
forEachLatLng |
forEachLatLng(callback)参数:
返回值:无
重复调用给定函数,并在每次调用时将几何图形中的一个点传递给该函数。 |
getType |
getType()参数:无
返回值:
string返回几何图形对象的类型。可能的值包括 "Point"、"MultiPoint"、"LineString"、"MultiLineString"、"LinearRing"、"Polygon"、"MultiPolygon" 或 "GeometryCollection"。 |
Data.Point 类
google.maps.Data.Point 类
点几何图形包含单个 LatLng。
此类实现了 Data.Geometry。
通过调用 const {Data} = await google.maps.importLibrary("maps") 进行访问。
请参阅 Maps JavaScript API 中的库。
构造函数 | |
|---|---|
Data.Point |
Data.Point(latLng)参数:
根据给定的 LatLng 或 LatLngLiteral 构造 Data.Point。 |
方法 | |
|---|---|
forEachLatLng |
forEachLatLng(callback)参数:
返回值:无
|
get |
get()参数:无
返回值:
LatLng返回所含的 LatLng。 |
getType |
getType()参数:无
返回值:
string返回字符串 "Point"。 |
Data.MultiPoint 类
google.maps.Data.MultiPoint 类
MultiPoint 几何图形包含多个 LatLng。
此类实现了 Data.Geometry。
通过调用 const {Data} = await google.maps.importLibrary("maps") 进行访问。
请参阅 Maps JavaScript API 中的库。
构造函数 | |
|---|---|
Data.MultiPoint |
Data.MultiPoint(elements)参数:
根据给定的 LatLng 或 LatLngLiteral 构建 Data.MultiPoint。 |
方法 | |
|---|---|
forEachLatLng |
forEachLatLng(callback)参数:
返回值:无
|
getArray |
getArray()参数:无
返回所含 LatLng 的数组。每次调用 getArray() 时,都会返回一个新数组。 |
getAt |
getAt(n)参数:
返回值:
LatLng返回第 n 个包含的 LatLng。 |
getLength |
getLength()参数:无
返回值:
number返回所含 LatLng 的数量。 |
getType |
getType()参数:无
返回值:
string返回字符串 "MultiPoint"。 |
Data.LineString 类
google.maps.Data.LineString 类
LineString 几何图形包含多个 LatLng。
此类实现了 Data.Geometry。
通过调用 const {Data} = await google.maps.importLibrary("maps") 进行访问。
请参阅 Maps JavaScript API 中的库。
构造函数 | |
|---|---|
Data.LineString |
Data.LineString(elements)参数:
根据给定的 LatLng 或 LatLngLiteral 构建 Data.LineString。 |
方法 | |
|---|---|
forEachLatLng |
forEachLatLng(callback)参数:
返回值:无
|
getArray |
getArray()参数:无
返回所含 LatLngs 的数组。每次调用 getArray() 时,都会返回一个新数组。 |
getAt |
getAt(n)参数:
返回值:
LatLng返回第 n 个包含的 LatLng。 |
getLength |
getLength()参数:无
返回值:
number返回所含 LatLng 的数量。 |
getType |
getType()参数:无
返回值:
string返回字符串 "LineString"。 |
Data.MultiLineString 类
google.maps.Data.MultiLineString 类
MultiLineString 几何图形包含多个 LineString。
此类实现了 Data.Geometry。
通过调用 const {Data} = await google.maps.importLibrary("maps") 进行访问。
请参阅 Maps JavaScript API 中的库。
构造函数 | |
|---|---|
Data.MultiLineString |
Data.MultiLineString(elements)参数:
根据给定的 Data.LineString 或位置数组构造 Data.MultiLineString。 |
方法 | |
|---|---|
forEachLatLng |
forEachLatLng(callback)参数:
返回值:无
|
getArray |
getArray()参数:无
返回值:
Array<Data.LineString>返回所含 Data.LineString 的数组。每次调用 getArray() 时,都会返回一个新数组。 |
getAt |
getAt(n)参数:
返回值:
Data.LineString返回第 n 个包含的 Data.LineString。 |
getLength |
getLength()参数:无
返回值:
number返回所含 Data.LineString 的数量。 |
getType |
getType()参数:无
返回值:
string返回字符串 "MultiLineString"。 |
Data.LinearRing 类
google.maps.Data.LinearRing 类
LinearRing 几何图形包含多个 LatLng,表示闭合的 LineString。无需使第一个 LatLng 等于最后一个 LatLng。LinearRing 是隐式闭合的。
此类实现了 Data.Geometry。
通过调用 const {Data} = await google.maps.importLibrary("maps") 进行访问。
请参阅 Maps JavaScript API 中的库。
构造函数 | |
|---|---|
Data.LinearRing |
Data.LinearRing(elements)参数:
根据给定的 LatLng 或 LatLngLiteral 构建 Data.LinearRing。 |
方法 | |
|---|---|
forEachLatLng |
forEachLatLng(callback)参数:
返回值:无
|
getArray |
getArray()参数:无
返回所含 LatLng 的数组。每次调用 getArray() 时,都会返回一个新数组。 |
getAt |
getAt(n)参数:
返回值:
LatLng返回第 n 个包含的 LatLng。 |
getLength |
getLength()参数:无
返回值:
number返回所含 LatLng 的数量。 |
getType |
getType()参数:无
返回值:
string返回字符串 "LinearRing"。 |
Data.Polygon 类
google.maps.Data.Polygon 类
一个多边形几何图形包含多个 Data.LinearRing。第一个线性环必须是多边形外边界,后续线性环必须是内边界(也称为孔)。请参阅带孔的多边形示例。
此类实现了 Data.Geometry。
通过调用 const {Data} = await google.maps.importLibrary("maps") 进行访问。
请参阅 Maps JavaScript API 中的库。
构造函数 | |
|---|---|
Data.Polygon |
Data.Polygon(elements)参数:
根据给定的 Data.LinearRing 或位置数组构造 Data.Polygon。 |
方法 | |
|---|---|
forEachLatLng |
forEachLatLng(callback)参数:
返回值:无
|
getArray |
getArray()参数:无
返回值:
Array<Data.LinearRing>返回所含 Data.LinearRing 的数组。每次调用 getArray() 时,都会返回一个新数组。 |
getAt |
getAt(n)参数:
返回值:
Data.LinearRing返回第 n 个包含的 Data.LinearRing。 |
getLength |
getLength()参数:无
返回值:
number返回所含 Data.LinearRing 的数量。 |
getType |
getType()参数:无
返回值:
string返回字符串 "Polygon"。 |
Data.MultiPolygon 类
google.maps.Data.MultiPolygon 类
MultiPolygon 几何图形包含多个 Data.Polygon。
此类实现了 Data.Geometry。
通过调用 const {Data} = await google.maps.importLibrary("maps") 进行访问。
请参阅 Maps JavaScript API 中的库。
构造函数 | |
|---|---|
Data.MultiPolygon |
Data.MultiPolygon(elements)参数:
根据给定的 Data.Polygon 或位置数组构造 Data.MultiPolygon。 |
方法 | |
|---|---|
forEachLatLng |
forEachLatLng(callback)参数:
返回值:无
|
getArray |
getArray()参数:无
返回值:
Array<Data.Polygon>返回所含 Data.Polygon 的数组。每次调用 getArray() 时,都会返回一个新数组。 |
getAt |
getAt(n)参数:
返回值:
Data.Polygon返回第 n 个包含的 Data.Polygon。 |
getLength |
getLength()参数:无
返回值:
number返回所含 Data.Polygon 的数量。 |
getType |
getType()参数:无
返回值:
string返回字符串 "MultiPolygon"。 |
Data.GeometryCollection 类
google.maps.Data.GeometryCollection 类
GeometryCollection 包含多个几何图形对象。任何 LatLng 或 LatLngLiteral 对象都会自动转换为 Data.Point 几何图形对象。
此类实现了 Data.Geometry。
通过调用 const {Data} = await google.maps.importLibrary("maps") 进行访问。
请参阅 Maps JavaScript API 中的库。
构造函数 | |
|---|---|
Data.GeometryCollection |
Data.GeometryCollection(elements)参数:
根据给定的几何图形对象或 LatLng 构造 Data.GeometryCollection。 |
方法 | |
|---|---|
forEachLatLng |
forEachLatLng(callback)参数:
返回值:无
|
getArray |
getArray()参数:无
返回值:
Array<Data.Geometry>返回所含几何对象的数组。每次调用 getArray() 时,都会返回一个新数组。 |
getAt |
getAt(n)参数:
返回值:
Data.Geometry返回第 n 个包含的几何对象。 |
getLength |
getLength()参数:无
返回值:
number返回所含几何图形对象的数量。 |
getType |
getType()参数:无
返回值:
string返回字符串 "GeometryCollection"。 |
Data.MouseEvent 接口
google.maps.Data.MouseEvent
接口
此对象会传递给 Data 对象上的鼠标事件处理程序。
此接口扩展了 MapMouseEvent。
属性 | |
|---|---|
feature |
类型:
Data.Feature生成鼠标事件的功能。 |
继承自:
domEvent、
latLng
| |
方法 | |
|---|---|
继承自:
stop
|
Data.AddFeatureEvent 接口
google.maps.Data.AddFeatureEvent
接口
addfeature 事件的属性。
属性 | |
|---|---|
feature |
类型:
Data.Feature已添加到 FeatureCollection 的功能。 |
Data.RemoveFeatureEvent 接口
google.maps.Data.RemoveFeatureEvent
接口
removefeature 事件的属性。
属性 | |
|---|---|
feature |
类型:
Data.Feature已从 FeatureCollection 中移除的功能。 |
Data.SetGeometryEvent 接口
google.maps.Data.SetGeometryEvent
接口
setgeometry 事件的属性。
属性 | |
|---|---|
feature |
类型:
Data.Feature设置了几何图形的地图项。 |
newGeometry optional |
类型:
Data.Geometry optional新要素的几何图形。 |
oldGeometry optional |
类型:
Data.Geometry optional上一个要素的几何图形。 |
Data.SetPropertyEvent 接口
google.maps.Data.SetPropertyEvent
接口
setproperty 事件的属性。
属性 | |
|---|---|
feature |
类型:
Data.Feature设置了属性的要素。 |
name |
类型:
string属性名称。 |
newValue |
类型:
*新值。 |
oldValue |
类型:
*之前的值。如果添加了该属性,则为 undefined。 |
Data.RemovePropertyEvent 接口
google.maps.Data.RemovePropertyEvent
接口
removeproperty 事件的属性。
属性 | |
|---|---|
feature |
类型:
Data.Feature移除了属性的要素。 |
name |
类型:
string属性名称。 |
oldValue |
类型:
*之前的值。 |