1. Latar Belakang
Kadang kita berpikir, bagaimana cara membuat peta digital seperti Google Maps yang dapat diakses melalui website? Pertanyaan sederhana ini menjadi dasar dalam pengembangan proyek Smart City Purbalingga yang sedang saya kerjakan. Tidak hanya menampilkan data dalam bentuk teks, tetapi juga bagaimana informasi tersebut dapat divisualisasikan secara lebih interaktif dan mudah dipahami oleh pengguna. Untuk menjawab hal tersebut, saya mulai melakukan implementasi peta digital menggunakan teknologi berbasis web, yaitu dengan memanfaatkan library Leaflet. Pada tahap ini, fokus utama adalah membangun peta dasar sebagai fondasi awal yang nantinya akan dikembangkan lebih lanjut menjadi sistem informasi kota yang terintegrasi dalam satu platform.
2. Alat dan Bahan
A. Perangkat Lunak
B. Perangkat Keras
3. Pembahasan
3.1 Struktur Folder
3.2 Implementasi Peta Dasar dengan Leaflet
Pada tahap ini dilakukan implementasi peta dasar menggunakan Leaflet dengan bantuan library React Leaflet. Peta akan ditampilkan dalam bentuk komponen React sehingga dapat dengan mudah diintegrasikan ke dalam sistem website Smart City Purbalingga.
frontend/src/components/Minimap.jsx
import { MapContainer, TileLayer } from 'react-leaflet';
import 'leaflet/dist/leaflet.css';
function MapComponent() {
return (
// Kode akan ditulis disini
);
}
export default MapComponent;
Kode tersebut merupakan struktur kode dasar untuk memulai membuat komponen.
3.3 Penentuan Lokasi Awal Peta
const CENTER = [-7.3906, 109.3647];
const map = L.map(mapRef.current, {
center: CENTER,
zoom: 12,
});
CENTER -> menyimpan koordinat pusat kota (Purbalingga)
L.map() -> digunakan untuk menginisialisasi peta
center -> menentukan titik awal tampilan peta
zoom: 12 -> mengatur tingkat zoom awal agar wilayah kota terlihat jelas3.4 Penambahan Tile Layer (Sumber Peta)
L.tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {
attribution: '© OpenStreetMap contributors',
}).addTo(map);
L.tileLayer() -> digunakan untuk menambahkan tampilan peta
attribution -> memberikan kredit kepada penyedia data
.addTo(map) -> menampilkan layer ke dalam peta3.5 Hasil Kode
import { MapContainer, TileLayer } from 'react-leaflet';
import 'leaflet/dist/leaflet.css';
function MapComponent() {
return (
<MapContainer
center={[-7.3905, 109.3639]}
zoom={13}
style={{ height: "500px", width: "100%" }}
>
<TileLayer
url="https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png"
attribution="© OpenStreetMap contributors"
/>
</MapContainer>
);
}
0 Comments