Coordinates

LatLng 類別

class google.maps.LatLng
library "core"

LatLng 是地理座標 (經緯度) 中的一個點。

  • 緯度範圍介於正負 90 度 (含首尾)。凡是超出這個範圍,都會調整為範圍 [-90, 90] 內的值。也就是說,如果指定的值小於 -90,就會設為 -90。如果值大於 90,則會設為 90。
  • 經度-180度到180度(含)之間的範圍。凡是超出這個範圍,都會換算為範圍內的值。舉例來說,-190 會轉換為 170。190 會轉換為 -170。這反映出經度環繞地球的事實。
雖然預設的地圖投影會將經度與地圖的 X 座標建立關聯,並將緯度與 Y 座標建立關聯,但緯度座標一律會寫在前面,後面才是經度。
請注意,您無法修改 LatLng 的座標。如要計算其他點,請建立新的點。

大多數接受 LatLng 物件的方法也接受 LatLngLiteral 物件,因此下列兩者等效:

 map.setCenter(new google.maps.LatLng(-34, 151));
map.setCenter({lat: -34, lng: 151});

建構函式也接受 LatLngLiteral 和 LatLng 物件。如果將 LatLng 例項傳遞至建構函式,系統會建立副本。

以下是建構函式的可能呼叫:

 new google.maps.LatLng(-34, 151);
new google.maps.LatLng(-34, 151, true);
new google.maps.LatLng({lat: -34, lng: 151});
new google.maps.LatLng({lat: -34, lng: 151}, true);
new google.maps.LatLng(new google.maps.LatLng(-34, 151));
new google.maps.LatLng(new google.maps.LatLng(-34, 151), true);

const {LatLng} = await google.maps.importLibrary("core");
LatLng
LatLng(latOrLatLngOrLatLngLiteral[, lngOrNoClampNoWrap, noClampNoWrap])
參數:
  • latOrLatLngOrLatLngLiteral: number|LatLngLiteral|LatLng
  • lngOrNoClampNoWrap: number|boolean optional
  • noClampNoWrap: boolean optional
建立代表地理位置點的 LatLng 物件。緯度以度為單位,範圍為 [-90, 90]。經度以度為單位,範圍為 [-180, 180)。將 noClampNoWrap 設為 true,即可啟用這個範圍以外的值。請注意經緯度的順序。
equals
equals(other)
參數:
傳回值: boolean
兩個 LatLng 的比較函式。如果座標彼此相差 1e-9 以內,則傳回 true,否則傳回 false。
lat
lat()
參數:無
傳回值: number
傳回緯度 (以度為單位)。
lng
lng()
參數:無
傳回值: number
傳回經度 (以度為單位)。
toJSON
toJSON()
參數:無
傳回值: LatLngLiteral
轉換為 JSON 表示法。這個函式應透過 JSON.stringify 使用。
toString
toString()
參數:無
傳回值: string
轉換為字串形式。
toUrlValue
toUrlValue([precision])
參數:
  • precision: number optional
傳回值: string
以「lat,lng」形式傳回此 LatLng 的字串。根據預設,我們會將 lat/lng 值取到小數點後第 6 位。

LatLngLiteral 介面

介面 google.maps.LatLngLiteral
由 DirectionalLocationLiteral, LatLngAltitudeLiteral 擴充
由 DirectionalLocation, LatLngAltitude 實作

在許多情況下,物件常值可取代 LatLng 物件,方便您使用。Maps API 遇到這些物件時,會將其轉換為 LatLng 物件。

範例:

 map.setCenter({lat: -34, lng: 151});
new google.maps.Marker({position: {lat: -34, lng: 151}, map: map});

Geometry 程式庫不支援 LatLng 物件常值。

lat
類型: number
緯度度數。值會限制在 [-90, 90] 範圍內。也就是說,如果指定的值小於 -90,就會設為 -90。如果值大於 90,則會設為 90。
lng
類型: number
經度度數。超出 [-180, 180] 範圍的值會換算為範圍內的值。舉例來說,-190 會轉換為 170。190 會轉換為 -170。這反映出經度環繞地球的事實。

LatLngBounds 類別

class google.maps.LatLngBounds
library "core"

LatLngBounds 執行個體代表地理座標中的矩形,包括跨越 180 度經線的矩形。

const {LatLngBounds} = await google.maps.importLibrary("core");
LatLngBounds
LatLngBounds([swOrLatLngBounds, ne])
參數:
從西南角和東北角的點建構矩形。
MAX_BOUNDS 地球最大邊界的 LatLngBounds。這些邊界會涵蓋整個地球。
contains
contains(latLng)
參數:
傳回值: boolean
如果指定的經緯度位於這個邊界內,則傳回 true。
equals
equals(other)
參數:
傳回值: boolean
如果這個邊界與指定邊界大致相等,則傳回 true。
extend
extend(point)
參數:
傳回值: LatLngBounds
延伸此界限以包含指定的點。
getCenter
getCenter()
參數:無
傳回值: LatLng
計算此 LatLngBounds 的中心。
getNorthEast
getNorthEast()
參數:無
傳回值: LatLng
傳回此界限的東北角。
getSouthWest
getSouthWest()
參數:無
傳回值: LatLng
傳回此界限的西南角。
intersects
intersects(other)
傳回值: boolean
如果這個邊界與其他邊界共用任何點,則傳回 true。
isEmpty
isEmpty()
參數:無
傳回值: boolean
如果為空界限則傳回。
toJSON
toJSON()
參數:無
傳回值: LatLngBoundsLiteral
轉換為 JSON 表示法。這個函式應透過 JSON.stringify 使用。
toSpan
toSpan()
參數:無
傳回值: LatLng
將指定地圖界限轉換為 lat/lng 單位。
toString
toString()
參數:無
傳回值: string
轉換成字串。
toUrlValue
toUrlValue([precision])
參數:
  • precision: number optional
傳回值: string
傳回這個邊界的「lat_lo,lng_lo,lat_hi,lng_hi」格式字串,其中「lo」對應定界框的西南角,「hi」則對應東北角。
union
union(other)
傳回值: LatLngBounds
延伸此界限以包含這個界限和指定界限結合的範圍。

LatLngBoundsLiteral 介面

介面 google.maps.LatLngBoundsLiteral

在整個 API 中,物件常值可取代 LatLngBounds 物件。這些物件會自動轉換為 LatLngBounds 物件。south、west、north 和 east 都必須設定,否則會擲回例外狀況。

east
類型: number
東經度數,超出 [-180, 180] 範圍的值會換算為 [-180, 180) 範圍內的值。舉例來說,-190 會轉換為 170。190 會轉換為 -170。這反映出經度環繞地球的事實。
north
類型: number
北緯度數,值會限制在 [-90, 90] 範圍內。也就是說,如果指定的值小於 -90,就會設為 -90。如果值大於 90,則會設為 90。
south
類型: number
南緯度數,值會限制在 [-90, 90] 範圍內。也就是說,如果指定的值小於 -90,就會設為 -90。如果值大於 90,則會設為 90。
west
類型: number
西經度數,超出 [-180, 180] 範圍的值會換算為 [-180, 180) 範圍內的值。舉例來說,-190 會轉換為 170。190 會轉換為 -170。這反映出經度環繞地球的事實。

LatLngAltitude 類別

類別 google.maps.LatLngAltitude 實作 LatLngAltitudeLiteral, LatLngLiteral
由 DirectionalLocation 擴充
程式庫 "core"

LatLngAltitude 是地理座標中的 3D 點:經度、緯度和海拔高度。

  • 緯度範圍介於正負 90 度 (含首尾)。凡是超出這個範圍,都會調整為範圍 [-90, 90] 內的值。也就是說,如果指定的值小於 -90,就會設為 -90。如果值大於 90,則會設為 90。
  • 經度-180度到180度(含)之間的範圍。凡是超出這個範圍,都會換算為範圍內的值。舉例來說,-190 會轉換為 170。190 會轉換為 -170。這反映出經度環繞地球的事實。
  • 高度以公尺為單位。正值表示高於地面的高度,負值表示低於地面的高度。

const {LatLngAltitude} = await google.maps.importLibrary("core");
LatLngAltitude
LatLngAltitude(value[, noClampNoWrap])
參數:
  • value: LatLngAltitude|LatLngAltitudeLiteral|LatLng|LatLngLiteral:初始化值。
  • noClampNoWrap: boolean optional 是否要保留初始化值,即使這些值不一定是 [-90, 90] 範圍內的有效緯度值,或 [-180, 180] 範圍內的有效經度值。預設值為 false,可啟用緯度限制和經度換行。
altitude
readonly
類型: number
傳回高度。
lat
readonly
類型: number
傳回緯度。
lng
readonly
類型: number
傳回經度。
equals
equals(other)
參數:
傳回值: boolean 兩個物件是否相等。
兩個 LatLngAltitude 的比較函式。如果座標彼此相差 1e-9 以內,則傳回 true,否則傳回 false。
toJSON
toJSON([key])
參數:
  • key: string optional
轉換為一般物件。

LatLngAltitudeLiteral 介面

介面 google.maps.LatLngAltitudeLiteral 擴充 LatLngLiteral
由 DirectionalLocationLiteral 擴充
由 DirectionalLocation, LatLngAltitude 實作

在許多情況下,物件常值可取代 LatLngAltitude 物件,方便您使用。Maps API 遇到這些物件時,會將其轉換為 LatLngAltitude 物件。

altitude
類型: number
離地表的高度 (以公尺為單位)。負值表示在地表下方。
lat
類型: number
緯度度數。值會限制在 [-90, 90] 範圍內。也就是說,如果指定的值小於 -90,就會設為 -90。如果值大於 90,則會設為 90。
lng
類型: number
經度度數。超出 [-180, 180] 範圍的值會換算為範圍內的值。舉例來說,-190 會轉換為 170。190 會轉換為 -170。這反映出經度環繞地球的事實。

Point 類別

class google.maps.Point
library "core"

const {Point} = await google.maps.importLibrary("core");
Point
Point(x, y)
參數:
  • x: number
  • y: number
2 D 平面上的一點。
x
類型: number
X 座標
y
類型: number
Y 座標
equals
equals(other)
參數:
傳回值: boolean
比較兩個點
toString
toString()
參數:無
傳回值: string
傳回這一點的字串形式。

Size 類別

class google.maps.Size
library "core"

const {Size} = await google.maps.importLibrary("core");
Size
Size(width, height[, widthUnit, heightUnit])
參數:
  • width: number
  • height: number
  • widthUnit: string optional
  • heightUnit: string optional
二維大小,其中寬度是 X 軸上的距離,高度是 Y 軸上的距離。
height
類型: number
沿著 Y 軸的高度 (單位為像素)。
width
類型: number
沿著 X 軸的寬度 (單位為像素)。
equals
equals(other)
參數:
  • other: Size optional
傳回值: boolean
比較兩個大小。
toString
toString()
參數:無
傳回值: string
傳回此大小的字串形式。

Padding 介面

介面 google.maps.Padding

bottom
選填
類型: number optional
底部邊框間距 (以像素為單位)。
left
選填
類型: number optional
左側邊框間距 (以像素為單位)。
right
選填
類型: number optional
右側邊框間距 (以像素為單位)。
top
選填
類型: number optional
頂端邊框間距 (以像素為單位)。

CircleLiteral 介面

interface google.maps.CircleLiteral extends CircleOptions

代表圓形的物件常值。

center
圓形的中心。
radius
類型: number
地表上的半徑 (以公尺為單位)。
繼承: clickable、draggable、editable、fillColor、fillOpacity、map、strokeColor、strokeOpacity、strokePosition、strokeWeight、visible、zIndex

Orientation3D 類別

類別 google.maps.Orientation3D 實作 Orientation3DLiteral
程式庫 "core"

Orientation3D 是三維向量,用於沿著航向、傾斜和滾動進行標準數學旋轉轉換。

  • heading 是介於 [0, 360) 度範圍內的角度。
  • 傾斜角度介於 [0, 360) 度。
  • 滾動角度介於 [0, 360) 度之間。

const {Orientation3D} = await google.maps.importLibrary("core");
Orientation3D
Orientation3D(value)
參數:
heading
readonly
類型: number
預設值: 0
繞 Z 軸旋轉 (垂直於地球表面)。預設值為 0,代表北方。正旋轉是指沿著 Z 軸順時針旋轉,以 0 到 360 度的角度表示。凡是超出這個範圍,都會換算為範圍內的值。舉例來說,-190 會轉換為 170。530 則會轉換為 170。
roll
readonly
類型: number
預設值: 0
繞 Y 軸旋轉。正旋轉是指繞著 Y 軸順時針旋轉,以 0 到 360 度的角度表示。凡是超出這個範圍,都會換算為範圍內的值。舉例來說,-190 會轉換為 170。530 則會轉換為 170。
tilt
readonly
類型: number
預設值: 0
繞 X 軸旋轉。正旋轉是指繞著 X 軸順時針旋轉,以 0 到 360 度表示。凡是超出這個範圍,都會換算為範圍內的值。舉例來說,-190 會轉換為 170。530 則會轉換為 170。
equals
equals(other)
參數:
傳回值: boolean 兩個物件是否相等。
Comparison 函式。
toJSON
toJSON([key])
參數:
  • key: string optional
轉換為一般物件。

Orientation3DLiteral 介面

介面 google.maps.Orientation3DLiteral
由 Orientation3D 實作

在許多情況下,物件常值可取代 Orientation3D 物件,方便您使用。Maps API 遇到這些物件時,會將其轉換為 Orientation3D 物件。

heading
選填
類型: number optional
繞 Z 軸旋轉 (垂直於地球表面)。預設值為 0,代表北方。正旋轉是指沿著 Z 軸順時針旋轉,以 0 到 360 度表示。
roll
選填
類型: number optional
繞 Y 軸旋轉。正旋轉是指繞著 Y 軸順時針旋轉,以 0 到 360 度的角度表示。
tilt
選填
類型: number optional
繞 X 軸旋轉。正旋轉角度是繞著 X 軸順時針旋轉,以 0 到 360 度表示。

Vector3D 類別

類別 google.maps.Vector3D 實作 Vector3DLiteral
程式庫 "core"

Vector3D 是三維向量,用於標準數學運算,例如沿著局部 x、y 和 z 軸縮放三維物件的邊界。

  • x 是實數。
  • y 是實數。
  • z 是實數。

const {Vector3D} = await google.maps.importLibrary("core");
Vector3D
Vector3D(value)
參數:
x
readonly
類型: number
三維向量的 X 元件。
y
readonly
類型: number
三維向量的 Y 元件。
z
readonly
類型: number
三維向量的 Z 元件。
equals
equals(other)
參數:
傳回值: boolean
Comparison 函式。
toJSON
toJSON([key])
參數:
  • key: string optional
傳回值: Vector3DLiteral
轉換為一般物件。

Vector3DLiteral 介面

介面 google.maps.Vector3DLiteral
由 Vector3D 實作

在許多情況下,物件常值可取代 Vector3D 物件,方便您使用。Maps API 遇到這些物件時,會將其轉換為 Vector3D 物件。

x
類型: number
三維向量的 X 元件。
y
類型: number
三維向量的 Y 元件。
z
類型: number
三維向量的 Z 元件。