Saya sedang melakukan proyek astronomi. Saya ingin memiliki informasi tentang gambar kami disimpan dalam database yang diaktifkan secara spasial. Ini, saya pikir, harus menjadi kasus khusus yang sangat mudah untuk fungsi SIG karena langit dapat diperlakukan sebagai bola sempurna, dan tidak memerlukan perawatan elips seperti permukaan bumi. Sayangnya, saya belum menemukan cara untuk melakukan ini dan saya telah menghindari ranjau dengan fungsi spasial yang menggunakan bumi elips. (Cukup banyak fungsi apa pun yang mengembalikan meter bukannya derajat mungkin menggunakan perhitungan elips. Untungnya, banyak fungsi PostGIS yang saya butuhkan tampaknya memiliki implementasi yang tidak lengkap di mana dokumentasi secara eksplisit menyatakan bahwa hasil yang dikembalikan adalah untuk bola dan bukan untuk ellipsoid. Tapi itu mungkin berubah dengan versi yang akan datang, yang menjadi perhatian.)
Latar Belakang: Saat ini saya menggunakan PostgreSQL dengan koordinat PostGIS dan WGS 84 (SRID = 4326). Ini bekerja dengan cukup baik. Saya membuat POLYGON tertutup dari kenaikan yang tepat dan deklinasi keempat sudut gambar. Saya memiliki banyak gambar (10rb atau lebih), yang meliputi area langit yang luas. Setiap gambar sekitar 1 derajat persegi. Dari himpunan gambar-gambar ini, saya membuat mosaik dari subset kecil berisi 15 hingga 30 gambar. Setiap mosaik berukuran sekitar 1,5 derajat persegi.
Saat ini, saya menyimpan geografi mosaik sebagai MULTIPOLYGON yang terdiri dari semua POLYGON yang sesuai dengan setiap gambar yang masuk ke mosaik. [Solusi yang lebih baik adalah dengan membuat POLYGON tunggal yang menggambarkan perimeter penyatuan semua poligon individu. Saya tidak tahu apakah ini dapat dilakukan dalam koordinat bola (yaitu, bahwa tipe geografi). Ini juga akan menjadi jawaban yang menarik bagi saya juga.] Garis tanggal dan kutub langit mungkin dimasukkan dalam gambar dalam dataset sehingga saya menghindari proyeksi ke koordinat planar sejauh mungkin.
Sistem koordinat apa yang harus saya gunakan untuk koordinat surgawi dengan fungsi PostGIS?
Saya telah melihat http://spatialreference.org/ tetapi belum menemukan apa pun sejauh ini. Google sedikit berubah. Saya bingung. Pada dasarnya, saya ingin memastikan bahwa jika suatu fungsi mengembalikan meter sebagai jarak, itu adalah meter di sepanjang lingkaran besar di bola.
Secara lebih umum, beberapa saran untuk menggunakan koordinat langit dalam basis data spasial juga akan dihargai.
Sudahkah saya melakukan kesalahan dengan memilih PostGIS?
Apakah ada pilihan komersial yang jauh lebih unggul?
Pilihan FOSS?
Saya menggunakan PostGIS 1.5.2. Saya belum mencoba PostGIS 2.0. Saya ingin tahu apakah fungsi ST_CoveredBy bekerja dengan POLYGON dan MULTIPOLYGON dari tipe geografi. Jika ada yang menjalankan 2.0, dapatkah Anda memberi tahu saya jika Anda mendapatkan kesalahan yang sama seperti ini:
mydb=# select ST_CoveredBy(ST_GeographyFromText('MULTIPOLYGON(( (10.37795 -69.57926,8.9498 -69.54875,9.0178 -69.21643,10.4242 -69.24648,10.37795 -69.57926),(10.42436 -69.24618,9.01774 -69.2162, 9.08363 -68.88389,10.46914 -68.91344,10.42436 -69.24618)))'),ST_GeographyFromText('POLYGON((10.46915 -68.91315,9.08371 -68.88364,9.14755 -68.5513,10.5125 -68.58038,10.46915 -68.91315))'));
ERROR: geography_covers: only POLYGON and POINT types are currently supported
CONTEXT: SQL function "st_coveredby" statement 1
Saya sudah mencoba PostGIS 2.0. Fungsi ini masih hanya bekerja pada titik dan poligon, bukan bentuk yang lebih umum.