Class ElevationSampler

أداة أخذ عيّناتالارتفاع

تسمح بأخذ عيّنات من الارتفاعات في مواقع جغرافية معيّنة.
يوضّح المثال أدناه كيف يمكنك استخدام هذه الفئة لتحديد أعلى نقطة على طول الطريق من دنفر إلى غراند جانكشن في كولورادو، ورسمها على خريطة، وحفظ الخريطة في Google Drive.

// Get directions from Denver to Grand Junction.
const directions = Maps.newDirectionFinder()
                       .setOrigin('Denver, CO')
                       .setDestination('Grand Junction, CO')
                       .setMode(Maps.DirectionFinder.Mode.DRIVING)
                       .getDirections();
const route = directions.routes[0];

// Get elevation samples along the route.
const numberOfSamples = 30;
const response = Maps.newElevationSampler().samplePath(
    route.overview_polyline.points,
    numberOfSamples,
);

// Determine highest point.

let highestLocation = null;
let highestElevation = Number.MIN_VALUE;
for (const sample of response.results) {
  if (sample.elevation > highestElevation) {
    highestElevation = sample.elevation;
    highestLocation = sample.location;
  }
}

// Add the path and marker to a map.
const map = Maps.newStaticMap()
                .addPath(route.overview_polyline.points)
                .addMarker(highestLocation.lat, highestLocation.lng);

// Save the map to your drive
DriveApp.createFile(
    Utilities.newBlob(map.getMapImage(), 'image/png', 'map.png'),
);

انظر أيضًا

الطُرق

الطريقةنوع القيمة التي تم إرجاعهاوصف قصير
sampleLocation(latitude, longitude)Objectتعرض هذه الطريقة بيانات الارتفاع لنقطة واحدة (خط العرض/خط الطول).
sampleLocations(points)Objectتعرض هذه الطريقة بيانات الارتفاع لسلسلة من النقاط (خطوط الطول والعرض).
sampleLocations(encodedPolyline)Objectتعرض هذه الطريقة بيانات الارتفاع للنقاط في خط متعدد الأضلاع مشفّر.
samplePath(points, numSamples)Objectتعرض هذه الطريقة بيانات الارتفاع لعدد من العيّنات على طول خط، ويتم تحديدها باستخدام سلسلة من النقاط.
samplePath(encodedPolyline, numSamples)Objectتعرض هذه الطريقة بيانات الارتفاع لعدد من العيّنات على طول خط، ويتم تحديد هذا الخط باستخدام خط متعدد الأضلاع مشفّر.

مستندات تفصيلية

sampleLocation(latitude, longitude)

تعرض هذه الطريقة بيانات الارتفاع لنقطة واحدة (خط العرض/خط الطول).

// Gets the elevation of Times Square using a point.
const data = Maps.newElevationSampler().sampleLocation(40.759011, -73.984472);
Logger.log(data.results[0].elevation);

المعلمات

الاسمالنوعالوصف
latitudeNumberتمثّل هذه السمة خط العرض للنقطة المطلوب أخذ عيّنة منها.
longitudeNumberتمثّل هذه السمة خط الطول للنقطة المطلوب أخذ عيّنة منها.

الإرجاع

Object: عنصر JSON يحتوي على بيانات الارتفاع، كما هو موضّح هنا.


sampleLocations(points)

تعرض هذه الطريقة بيانات الارتفاع لسلسلة من النقاط (خطوط الطول والعرض).

// Gets the elevation of Times Square and Central Park using points.
const data = Maps.newElevationSampler().sampleLocations([
  // Times Square
  40.759011,
  -73.984472,
  // Central Park
  40.777052,
  -73.975464,
]);
Logger.log(`Times Square: ${data.results[0].elevation}`);
Logger.log(`Central Park: ${data.results[1].elevation}`);

المعلمات

الاسمالنوعالوصف
pointsNumber[]مصفوفة من أزواج خطوط الطول والعرض

الإرجاع

Object: عنصر JSON يحتوي على بيانات الارتفاع، كما هو موضّح هنا.


sampleLocations(encodedPolyline)

تعرض هذه الطريقة بيانات الارتفاع للنقاط في خط متعدد الأضلاع مشفّر.

// Gets the elevation of Times Square and Central Park using a polyline.
const data = Maps.newElevationSampler().sampleLocations('yvwwF|aqbMwoBiw@');
Logger.log(`Times Square: ${data.results[0].elevation}`);
Logger.log(`Central Park: ${data.results[1].elevation}`);

المعلمات

الاسمالنوعالوصف
encodedPolylineStringخطوط متعدّدة مشفّرة من النقاط التي سيتم أخذ عيّنات منها

الإرجاع

Object: عنصر JSON يحتوي على بيانات الارتفاع، كما هو موضّح هنا.


samplePath(points, numSamples)

تعرض هذه الطريقة بيانات الارتفاع لعدد من العيّنات على طول خط، ويتم تحديدها باستخدام سلسلة من النقاط.

// Gets the elevation of five points between Times Square and Central Park.
const data = Maps.newElevationSampler().samplePath(
    [
      // Times Square
      40.759011,
      -73.984472,
      // Central Park
      40.777052,
      -73.975464,
    ],
    5,
);
for (let i = 0; i < data.results.length; i++) {
  Logger.log(data.results[i].elevation);
}

المعلمات

الاسمالنوعالوصف
pointsNumber[]مصفوفة من أزواج خطوط العرض/الطول تحدّد مسارًا لأخذ عينات منه.
numSamplesIntegerعدد النقاط التي سيتم أخذ عيّنات منها على طول مسار النقاط

الإرجاع

Object: عنصر JSON يحتوي على بيانات الارتفاع، كما هو موضّح هنا.


samplePath(encodedPolyline, numSamples)

تعرض هذه الطريقة بيانات الارتفاع لعدد من العيّنات على طول خط، ويتم تحديد هذا الخط باستخدام خط متعدد الأضلاع مشفّر.

// Gets the elevation of five points between Times Square and Central Park.
const data = Maps.newElevationSampler().samplePath('yvwwF|aqbMwoBiw@', 5);
for (let i = 0; i < data.results.length; i++) {
  Logger.log(data.results[i].elevation);
}

المعلمات

الاسمالنوعالوصف
encodedPolylineStringخط متعدّد الأضلاع مرمّز من النقاط التي تحدّد مسارًا لأخذ عيّنات منه.
numSamplesIntegerعدد النقاط التي سيتم أخذ عيّنات منها على طول مسار النقاط

الإرجاع

Object: عنصر JSON يحتوي على بيانات الارتفاع، كما هو موضّح هنا.