# πŸ—ΊοΈ WebGIS Project - Manajemen Data Spasial ## πŸ“Œ Deskripsi Proyek Proyek ini merupakan aplikasi **WebGIS berbasis LeafletJS, PHP, dan MySQL** yang digunakan untuk mengelola data spasial dalam bentuk: * πŸ“ Point (SPBU) * βž– Line / Polyline (Jalan) * πŸ”· Polygon (Kavling Tanah) Aplikasi ini memungkinkan user untuk: * Menambahkan data langsung dari peta * Menyimpan ke database * Menampilkan kembali data pada peta dengan visualisasi berbeda --- ## 🎯 Tujuan Tugas Mahasiswa diharapkan mampu: * Mengimplementasikan WebGIS berbasis web * Mengelola data spasial (Point, Line, Polygon) * Melakukan analisis sederhana: * Panjang jalan * Luas tanah * Menggunakan LeafletJS untuk visualisasi peta --- ## 🧩 Fitur Aplikasi ### 1. πŸ“ Data Point - SPBU * Input dengan klik pada peta * Menyimpan: * Nama SPBU * Nomor SPBU * Status (24 jam / tidak) * Latitude & Longitude * Ditampilkan sebagai marker pada peta --- ### 2. βž– Data Line - Jalan * Input dengan menggambar garis (Polyline) * Status jalan: * Jalan Nasional * Jalan Provinsi * Jalan Kabupaten * Warna berbeda sesuai status: * Nasional β†’ Merah * Provinsi β†’ Biru * Kabupaten β†’ Hijau * Panjang jalan dihitung otomatis (meter) --- ### 3. πŸ”· Data Polygon - Kavling Tanah * Input dengan menggambar area (Polygon) * Status kepemilikan: * SHM * HGB * HGU * HP * Warna berbeda sesuai status * Luas tanah dihitung otomatis (mΒ²) --- ## βš™οΈ Teknologi yang Digunakan * 🌐 Frontend: HTML, CSS, JavaScript * πŸ—ΊοΈ Library: LeafletJS + Leaflet Draw ([leaflet.github.io][1]) * πŸ–₯️ Backend: PHP * πŸ—„οΈ Database: MySQL Leaflet mendukung berbagai bentuk geometri seperti: * Marker (Point) * Polyline (Line) * Polygon (Area) ([igismap.com][2]) --- ## πŸ—„οΈ Struktur Database ### Tabel SPBU * nama * no_spbu * status * latitude * longitude ### Tabel Jalan * nama * status * panjang * geom (koordinat) ### Tabel Kavling * nama * status * luas * geom (koordinat) --- ## πŸ”„ Alur Sistem ### Input Data 1. User memilih mode (Point / Line / Polygon) 2. User melakukan input di peta: * Klik (Point) * Draw (Line / Polygon) 3. Sistem menghitung: * Panjang (Line) * Luas (Polygon) 4. Data dikirim ke server (PHP) 5. Data disimpan ke MySQL --- ### Menampilkan Data 1. Data diambil dari database 2. Ditampilkan di peta 3. Warna disesuaikan berdasarkan kategori 4. Data juga ditampilkan di sidebar --- ## 🧠 Konsep GIS yang Digunakan * Spatial Data: * Point * Line * Polygon * Attribute Data * Visualisasi berbasis kategori * Analisis spasial sederhana: * Distance (panjang) * Area (luas) --- ## πŸš€ Cara Menjalankan 1. Jalankan MySQL 2. Masuk ke folder project: ``` cd webgis-spbu ``` 3. Jalankan server: ``` php -S localhost:8000 ``` 4. Buka di browser: ``` http://localhost:8000 ``` --- ## πŸ“Œ Catatan Penting * Jangan menggunakan Live Server (tidak support PHP) * Gunakan Leaflet Draw untuk input Line & Polygon * Perhitungan panjang & luas HARUS otomatis (tidak manual) --- ## πŸŽ“ Kesimpulan Aplikasi ini merupakan implementasi dasar WebGIS yang mencakup: * Input data spasial * Penyimpanan database * Visualisasi peta interaktif Proyek ini menunjukkan pemahaman terhadap konsep dasar Sistem Informasi Geografis (SIG) dalam pengembangan aplikasi berbasis web. --- [1]: https://leaflet.github.io/Leaflet.draw/docs/leaflet-draw-latest.html?utm_source=chatgpt.com "Leaflet Draw Documentation" [2]: https://www.igismap.com/leafletjs-point-polyline-polygon-rectangle-circle/?utm_source=chatgpt.com "Leaflet.js - Point, Polyline, Polygon, Rectangle, Circle"