Class ElevationSampler

Sampler Elevasi

Memungkinkan pengambilan sampel elevasi di lokasi tertentu.
Contoh di bawah menunjukkan cara menggunakan class ini untuk menentukan titik tertinggi di sepanjang rute dari Denver ke Grand Junction di Colorado, memetakan titik tersebut di peta, dan menyimpan peta ke 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'),
);

Lihat juga

Metode

MetodeJenis hasil yang ditampilkanDeskripsi singkat
sampleLocation(latitude, longitude)ObjectMenampilkan data elevasi untuk satu titik (lat/lng).
sampleLocations(points)ObjectMenampilkan data elevasi untuk serangkaian titik (lat/lng).
sampleLocations(encodedPolyline)ObjectMenampilkan data elevasi untuk titik dalam polyline yang dienkode.
samplePath(points, numSamples)ObjectMenampilkan data elevasi untuk sejumlah sampel di sepanjang garis, yang ditentukan menggunakan serangkaian titik.
samplePath(encodedPolyline, numSamples)ObjectMenampilkan data elevasi untuk sejumlah sampel di sepanjang garis, yang ditentukan menggunakan polyline yang dienkode.

Dokumentasi mendetail

sampleLocation(latitude, longitude)

Menampilkan data elevasi untuk satu titik (lat/lng).

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

Parameter

NamaJenisDeskripsi
latitudeNumberlintang titik yang akan diambil sampelnya
longitudeNumberbujur titik yang akan diambil sampelnya

Pulang pergi

Object — Objek JSON yang berisi data elevasi, seperti yang dijelaskan di sini


sampleLocations(points)

Menampilkan data elevasi untuk serangkaian titik (lat/lng).

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

Parameter

NamaJenisDeskripsi
pointsNumber[]array pasangan lintang/bujur

Pulang pergi

Object — Objek JSON yang berisi data elevasi, seperti yang dijelaskan di sini


sampleLocations(encodedPolyline)

Menampilkan data elevasi untuk titik dalam polyline yang dienkode.

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

Parameter

NamaJenisDeskripsi
encodedPolylineStringpolyline titik yang dienkode untuk diambil sampelnya

Pulang pergi

Object — Objek JSON yang berisi data elevasi, seperti yang dijelaskan di sini


samplePath(points, numSamples)

Menampilkan data elevasi untuk sejumlah sampel di sepanjang garis, yang ditentukan menggunakan serangkaian titik.

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

Parameter

NamaJenisDeskripsi
pointsNumber[]array pasangan lintang/bujur yang menentukan jalur untuk diambil sampelnya
numSamplesIntegerjumlah titik yang akan diambil sampelnya di sepanjang jalur titik

Pulang pergi

Object — Objek JSON yang berisi data elevasi, seperti yang dijelaskan di sini


samplePath(encodedPolyline, numSamples)

Menampilkan data elevasi untuk sejumlah sampel di sepanjang garis, yang ditentukan menggunakan polyline yang dienkode.

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

Parameter

NamaJenisDeskripsi
encodedPolylineStringpolyline titik yang dienkode yang menentukan jalur untuk diambil sampelnya
numSamplesIntegerjumlah titik yang akan diambil sampelnya di sepanjang jalur titik

Pulang pergi

Object — Objek JSON yang berisi data elevasi, seperti yang dijelaskan di sini