REST Resource: photo

資源:Photo

用於儲存 360 度相片和相片中繼資料。

JSON 表示法
{
  "photoId": {
    object (PhotoId)
  },
  "uploadReference": {
    object (UploadRef)
  },
  "downloadUrl": string,
  "thumbnailUrl": string,
  "shareLink": string,
  "pose": {
    object (Pose)
  },
  "connections": [
    {
      object (Connection)
    }
  ],
  "captureTime": string,
  "uploadTime": string,
  "places": [
    {
      object (Place)
    }
  ],
  "viewCount": string,
  "transferStatus": enum (TransferStatus),
  "mapsPublishStatus": enum (MapsPublishStatus)
}
欄位
photoId

object (PhotoId)

必要欄位。僅供輸出。更新相片時必填。僅在建立相片時輸出。相片的 ID,在 Google 的所有相片中都沒有重複。

uploadReference

object (UploadRef)

僅限輸入。製作相片時必填。僅限輸入。上傳相片位元組的資源網址。

downloadUrl

string

僅供輸出。相片位元組的下載網址。這個欄位只有在 GetPhotoRequest.view 設為 PhotoView.INCLUDE_DOWNLOAD_URL 時才會設定。

thumbnailUrl

string

僅供輸出。顯示指定相片預覽的縮圖網址。

pose

object (Pose)

選用設定。相片的位置。

connections[]

object (Connection)

選用設定。連結其他相片。連結代表這張相片與其他相片的連結。

captureTime

string (Timestamp format)

選用設定。拍照的絕對時間。如果相片沒有 EXIF 時間戳記,系統會使用此參數設定相片中繼資料的時間戳記。

RFC3339 世界標準時間「Zulu」的時間戳記格式,解析度為奈秒,且最多 9 個小數位數。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

uploadTime

string (Timestamp format)

僅供輸出。圖片上傳時間。

RFC3339 世界標準時間「Zulu」的時間戳記格式,解析度為奈秒,且最多 9 個小數位數。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

places[]

object (Place)

選用設定。這張相片所屬的地點。

viewCount

string (int64 format)

僅供輸出。相片的瀏覽次數。

transferStatus

enum (TransferStatus)

僅供輸出。這張相片的權利轉移狀態。

mapsPublishStatus

enum (MapsPublishStatus)

僅供輸出。Google 地圖上的狀態 (相片是否已發布或遭到拒絕)。

PhotoId

Photo 的 ID。

JSON 表示法
{
  "id": string
}
欄位
id

string

相片的專屬 ID。

UploadRef

上傳媒體檔案的參考資料。

JSON 表示法
{

  // Union field file_source can be only one of the following:
  "uploadUrl": string
  // End of list of possible types for union field file_source.
}
欄位
聯集欄位 file_source。必要欄位。file_source 只能是下列其中一項:
uploadUrl

string

每位使用者的上傳參照都不得重複。格式如下:「https://streetviewpublish.googleapis.com/media/user/{account_id}/photo/{uploadReference}」

姿勢

實體的原始姿勢測量值。

JSON 表示法
{
  "latLngPair": {
    object (LatLng)
  },
  "altitude": number,
  "heading": number,
  "pitch": number,
  "roll": number,
  "gpsRecordTimestampUnixEpoch": string,
  "level": {
    object (Level)
  },
  "accuracyMeters": number
}
欄位
latLngPair

object (LatLng)

姿勢的經緯度組合,詳情請參閱:https://cloud.google.com/datastore/docs/reference/rest/Shared.Types/LatLng 建立 Photo 時,如果未提供經緯度組合,則會使用 EXIF 標頭的地理位置。相片或 exif 標題中未提供經緯度組合,會導致相片處理失敗。

altitude

number

姿勢的高度 (以公尺為單位 WGS84 橢圓球體)。NaN 表示未測得的數量。

heading

number

下列姿勢與相片中心相關的姿勢參數。符合 https://developers.google.com/streetview/spherical-metadata。指南針方向,從相片中心以順時針方向測量,以度為單位。值必須介於 1 至 3 之間。NaN 表示未測得的數量。

pitch

number

俯仰角:從相片中心點以度為單位。值必須介於 1=-90 且 <= 90 之間。-90 值表示直接向下觀看,90 值則代表直接向上查詢。NaN 表示未測得的數量。

roll

number

旋轉,以度為單位。值必須介於 1 至 360 之間。0 代表與地平線的水平。NaN 表示未測得的數量。

gpsRecordTimestampUnixEpoch

string (Timestamp format)

GPS 記錄時間,自世界標準時間 Epoch 時間。

RFC3339 世界標準時間「Zulu」的時間戳記格式,解析度為奈秒,且最多 9 個小數位數。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

level

object (Level)

設定垂直導覽的樓層數 (一棟建築物的樓層)。

accuracyMeters

number

這個姿勢的預估水平準確度,以公尺和 68% 的信賴區間 (一個標準差) 為單位。舉例來說,在 Android 上,可透過以下方法取得這個值:https://developer.android.com/reference/android/location/Location#getAccuracy()。其他平台則使用不同的方法取得類似的準確度預估值。

LatLng

代表經緯度組合的物件。以一對雙精準數表示經度度數和緯度度數。除非另有指定,否則這個物件必須符合 WGS84 標準。此外,值必須在正規化範圍內。

JSON 表示法
{
  "latitude": number,
  "longitude": number
}
欄位
latitude

number

緯度度數,必須介於 [-90.0, +90.0] 的範圍之間。

longitude

number

經度度數,必須介於 [-180.0, +180.0] 的範圍之間。

層級

包含等級編號及其對應名稱的等級資訊。

JSON 表示法
{
  "number": number,
  "name": string
}
欄位
number

number

選用設定。用於訂購的樓層號碼。0 表示地面高度,1 表示地面上第一樓,-1 表示地面下第一樓。但可接受非整數的值。

name

string

必要欄位。指派給這個等級的名稱,長度上限為 3 個半形字元。並思考是否有電梯時,該等級的電梯按鈕會如何加上標籤。

連線

「連結」是指從來源相片到目的地相片的連結。

JSON 表示法
{
  "target": {
    object (PhotoId)
  }
}
欄位
target

object (PhotoId)

必要欄位。內含相片與其他相片的連結目的地。

地點

地點的中繼資料。

JSON 表示法
{
  "placeId": string,
  "name": string,
  "languageCode": string
}
欄位
placeId

string

地點 ID,如 https://developers.google.com/places/place-id 所述。

name

string

僅供輸出。地點的名稱,且本地化為 languageCode。

languageCode

string

僅供輸出。名稱本地化的 languageCode。這應該是要求中指定的 languageCode,但可以是備用語言。

TransferStatus

權利轉移狀態。

列舉
TRANSFER_STATUS_UNKNOWN 未指定這項移轉作業的狀態。
NEVER_TRANSFERRED 這張相片從未轉移。
PENDING 這項相片轉移作業已啟動,但接收者尚未回應。
COMPLETED 相片轉移已完成,這張相片已移轉給收件人。
REJECTED 收件者拒絕了這項相片轉移要求。
EXPIRED 相片轉移作業在收件人未採取任何行動前就過期。
CANCELLED 傳送者已取消這張相片轉移。
RECEIVED_VIA_TRANSFER 這張相片因著作權轉移而擁有。

MapsPublishStatus

相片在 Google 地圖上的發布狀態。

列舉
UNSPECIFIED_MAPS_PUBLISH_STATUS 相片狀態不明。
PUBLISHED 這張相片會透過 Google 地圖對外公開。
REJECTED_UNKNOWN 這張相片因不明原因遭拒。

方法

create

在用戶端使用傳回的 UploadRef 上傳相片後,CreatePhoto 會將上傳的 Photo 發布到 Google 地圖的街景服務。

delete

刪除 Photo 及其中繼資料。

get

取得指定 Photo 的中繼資料。

startUpload

建立上傳工作階段,開始上傳相片位元組。

update

更新 Photo 的中繼資料,例如姿勢、地點關聯和連接等。