Class ElevationSampler

نمونه بردار ارتفاعی

امکان نمونه‌برداری از ارتفاعات در مکان‌های خاص را فراهم می‌کند.
مثال زیر نشان می‌دهد که چگونه می‌توانید از این کلاس برای تعیین بلندترین نقطه در طول مسیر از دنور به گرند جانکشن در کلرادو، ترسیم آن روی نقشه و ذخیره نقشه در گوگل درایو استفاده کنید.

// 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'),
);

همچنین ببینید

روش‌ها

روش نوع بازگشتی شرح مختصر
sample Location(latitude, longitude) Object داده‌های ارتفاع را برای یک نقطه واحد (عرض/طول) برمی‌گرداند.
sample Locations(points) Object داده‌های ارتفاع را برای یک سری از نقاط (عرض/طول) برمی‌گرداند.
sample Locations(encodedPolyline) Object داده‌های ارتفاعی را برای نقاط موجود در یک چندخطی کدگذاری شده برمی‌گرداند.
sample Path(points, numSamples) Object داده‌های ارتفاع را برای تعدادی از نمونه‌ها در امتداد یک خط، که با استفاده از مجموعه‌ای از نقاط تعریف شده‌اند، برمی‌گرداند.
sample Path(encodedPolyline, numSamples) Object داده‌های ارتفاعی را برای تعدادی از نمونه‌ها در امتداد یک خط، که با استفاده از یک چندخطی کدگذاری شده تعریف شده است، برمی‌گرداند.

مستندات دقیق

sample Location(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);

پارامترها

نام نوع توضیحات
latitude Number عرض جغرافیایی نقطه نمونه‌برداری.
longitude Number طول جغرافیایی نقطه مورد نظر برای نمونه‌برداری

بازگشت

Object - یک شیء JSON حاوی داده‌های ارتفاع، همانطور که در اینجا توضیح داده شده است.


sample Locations(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}`);

پارامترها

نام نوع توضیحات
points Number[] آرایه‌ای از جفت‌های طول/عرض جغرافیایی.

بازگشت

Object - یک شیء JSON حاوی داده‌های ارتفاع، همانطور که در اینجا توضیح داده شده است.


sample Locations(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}`);

پارامترها

نام نوع توضیحات
encoded Polyline String یک چندخطی کدگذاری شده از نقاط برای نمونه‌برداری.

بازگشت

Object - یک شیء JSON حاوی داده‌های ارتفاع، همانطور که در اینجا توضیح داده شده است.


sample Path(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);
}

پارامترها

نام نوع توضیحات
points Number[] آرایه‌ای از جفت‌های طول و عرض جغرافیایی که مسیری را برای نمونه‌برداری تعریف می‌کنند.
num Samples Integer تعداد نقاطی که باید در طول مسیر نقاط نمونه‌برداری شوند.

بازگشت

Object - یک شیء JSON حاوی داده‌های ارتفاع، همانطور که در اینجا توضیح داده شده است.


sample Path(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);
}

پارامترها

نام نوع توضیحات
encoded Polyline String یک چندخطی کدگذاری شده از نقاط که مسیری را برای نمونه‌برداری مشخص می‌کند.
num Samples Integer تعداد نقاطی که باید در طول مسیر نقاط نمونه‌برداری شوند.

بازگشت

Object - یک شیء JSON حاوی داده‌های ارتفاع، همانطور که در اینجا توضیح داده شده است.