ee.Geometry.MultiPolygon.distance

傳回兩個幾何圖形之間的最短距離。

用量傳回
MultiPolygon.distance(right, maxError, proj, spherical)浮點值
引數類型詳細資料
this:left幾何圖形用於做為運算左運算元的幾何圖形。
right幾何圖形用於做為運算右運算元的幾何圖形。
maxErrorErrorMargin,預設值:空值執行任何必要的重新投影作業時,可容許的最大誤差值。
proj投影,預設值:null要執行作業的投影。如未指定,系統會在球面座標系統中執行這項作業,而線性距離會以球面上的公尺為單位。
spherical布林值,預設值為 false如果為 true,系統會在單位球上執行計算。如果設為 false,計算結果會是橢圓形,並考量地球扁平度。如果指定 proj,則會略過這項設定。預設值為 false。

範例

程式碼編輯器 (JavaScript)

// Define a MultiPolygon object.
var multiPolygon = ee.Geometry.MultiPolygon(
    [[[[-122.092, 37.424],
       [-122.086, 37.418],
       [-122.079, 37.425],
       [-122.085, 37.423]]],
     [[[-122.081, 37.417],
       [-122.086, 37.421],
       [-122.089, 37.416]]]]);

// Define other inputs.
var inputGeom = ee.Geometry.Point(-122.090, 37.423);

// Apply the distance method to the MultiPolygon object.
var multiPolygonDistance = multiPolygon.distance({'right': inputGeom, 'maxError': 1});

// Print the result to the console.
print('multiPolygon.distance(...) =', multiPolygonDistance);

// Display relevant geometries on the map.
Map.setCenter(-122.085, 37.422, 15);
Map.addLayer(multiPolygon,
             {'color': 'black'},
             'Geometry [black]: multiPolygon');
Map.addLayer(inputGeom,
             {'color': 'blue'},
             'Parameter [blue]: inputGeom');

Python 設定

請參閱「 Python 環境」頁面,瞭解 Python API 和如何使用 geemap 進行互動式開發。

import ee
import geemap.core as geemap

Colab (Python)

# Define a MultiPolygon object.
multipolygon = ee.Geometry.MultiPolygon([
    [[
        [-122.092, 37.424],
        [-122.086, 37.418],
        [-122.079, 37.425],
        [-122.085, 37.423],
    ]],
    [[[-122.081, 37.417], [-122.086, 37.421], [-122.089, 37.416]]],
])

# Define other inputs.
input_geom = ee.Geometry.Point(-122.090, 37.423)

# Apply the distance method to the MultiPolygon object.
multipolygon_distance = multipolygon.distance(right=input_geom, maxError=1)

# Print the result.
display('multipolygon.distance(...) =', multipolygon_distance)

# Display relevant geometries on the map.
m = geemap.Map()
m.set_center(-122.085, 37.422, 15)
m.add_layer(
    multipolygon, {'color': 'black'}, 'Geometry [black]: multipolygon'
)
m.add_layer(input_geom, {'color': 'blue'}, 'Parameter [blue]: input_geom')
m