Class ElevationSampler

ElevationSampler

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, memplotnya 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 nilai 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-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
latitudeNumberGaris lintang 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-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 garis lintang/bujur yang menentukan jalur untuk pengambilan sampel.
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 yang dienkode dari titik-titik 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.