ee.Geometry.MultiPolygon.symmetricDifference

اختلاف متقارن بین دو هندسه را برمی‌گرداند.

استفاده برمی گرداند
MultiPolygon. symmetricDifference (right, maxError , proj ) هندسه
استدلال تایپ کنید جزئیات
این: left هندسه هندسه به عنوان عملوند سمت چپ عملیات استفاده می شود.
right هندسه هندسه ای که به عنوان عملوند مناسب عملیات استفاده می شود.
maxError ErrorMargin، پیش فرض: null حداکثر مقدار خطای قابل تحمل هنگام انجام هر گونه بازطراحی ضروری.
proj Projection، پیش فرض: null طرح ریزی که در آن عملیات انجام می شود. اگر مشخص نشده باشد، عملیات در سیستم مختصات کروی انجام می شود و فواصل خطی بر حسب متر روی کره خواهد بود.

نمونه ها

ویرایشگر کد (جاوا اسکریپت)

// 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.BBox(-122.085, 37.415, -122.075, 37.425);

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

// Print the result to the console.
print('multiPolygon.symmetricDifference(...) =', multiPolygonSymmetricDifference);

// 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');
Map.addLayer(multiPolygonSymmetricDifference,
             {'color': 'red'},
             'Result [red]: multiPolygon.symmetricDifference');

راه اندازی پایتون

برای اطلاعات در مورد API پایتون و استفاده از geemap برای توسعه تعاملی به صفحه محیط پایتون مراجعه کنید.

import ee
import geemap.core as geemap

کولب (پایتون)

# 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.BBox(-122.085, 37.415, -122.075, 37.425)

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

# Print the result.
display(
    'multipolygon.symmetricDifference(...) =', multipolygon_symmetric_difference
)

# 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.add_layer(
    multipolygon_symmetric_difference,
    {'color': 'red'},
    'Result [red]: multipolygon.symmetricDifference',
)
m