Class ElevationSampler

YükseklikÖrnekleyici

Belirli konumlarda yüksekliklerin örneklenmesine olanak tanır.
Aşağıdaki örnekte, Denver'dan Colorado'daki Grand Junction'a giden rotadaki en yüksek noktayı belirlemek, bu noktayı bir haritada göstermek ve haritayı Google Drive'a kaydetmek için bu sınıfı nasıl kullanabileceğiniz gösterilmektedir.

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

Aşağıdaki kaynakları da incelemenizi öneririz:

Yöntemler

YöntemDönüş türüKısa açıklama
sampleLocation(latitude, longitude)ObjectTek bir noktanın (lat/lng) yükseklik verilerini döndürür.
sampleLocations(points)ObjectBir dizi noktanın (lat/lng) yükseklik verilerini döndürür.
sampleLocations(encodedPolyline)ObjectKodlanmış bir çok çizgideki noktaların yükseklik verilerini döndürür.
samplePath(points, numSamples)ObjectBir dizi nokta kullanılarak tanımlanan bir çizgi üzerindeki çeşitli örneklerin yükseklik verilerini döndürür.
samplePath(encodedPolyline, numSamples)ObjectKodlanmış bir çoklu çizgi kullanılarak tanımlanan bir çizgi üzerindeki çeşitli örneklerin yükseklik verilerini döndürür.

Ayrıntılı dokümanlar

sampleLocation(latitude, longitude)

Tek bir noktanın (lat/lng) yükseklik verilerini döndürür.

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

Parametreler

AdTürAçıklama
latitudeNumberÖrnek alınacak noktanın enlemi
longitudeNumberÖrnek alınacak noktanın boylamı

Return

Object: Burada açıklandığı gibi, yükseklik verilerini içeren bir JSON nesnesi


sampleLocations(points)

Bir dizi noktanın (lat/lng) yükseklik verilerini döndürür.

// 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}`);

Parametreler

AdTürAçıklama
pointsNumber[]enlem/boylam çiftleri dizisi

Return

Object: Burada açıklandığı gibi, yükseklik verilerini içeren bir JSON nesnesi


sampleLocations(encodedPolyline)

Kodlanmış bir çok çizgideki noktaların yükseklik verilerini döndürür.

// 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}`);

Parametreler

AdTürAçıklama
encodedPolylineStringÖrnek alınacak noktaların kodlanmış bir çoklu çizgisi

Return

Object: Burada açıklandığı gibi, yükseklik verilerini içeren bir JSON nesnesi


samplePath(points, numSamples)

Bir dizi nokta kullanılarak tanımlanan bir çizgi üzerindeki çeşitli örneklerin yükseklik verilerini döndürür.

// 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);
}

Parametreler

AdTürAçıklama
pointsNumber[]Örnek alınacak bir yolu tanımlayan bir enlem/boylam çifti dizisi
numSamplesIntegerNoktaların yolu boyunca örneklenecek nokta sayısı

Return

Object: Burada açıklandığı gibi, yükseklik verilerini içeren bir JSON nesnesi


samplePath(encodedPolyline, numSamples)

Kodlanmış bir çoklu çizgi kullanılarak tanımlanan bir çizgi üzerindeki çeşitli örneklerin yükseklik verilerini döndürür.

// 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);
}

Parametreler

AdTürAçıklama
encodedPolylineStringÖrnek alınacak bir yolu tanımlayan, noktalardan oluşan kodlanmış bir poli çizgi
numSamplesIntegerNoktaların yolu boyunca örneklenecek nokta sayısı

Return

Object: Burada açıklandığı gibi, yükseklik verilerini içeren bir JSON nesnesi