[gis_info] _\|/_ Potentially Risky URL in Email - Click Carefully _\|/_ 3D Map + Model Using Open Source
John L. Poole
jlpoole56 at gmail.com
Tue Jul 30 15:55:16 PDT 2024
I used the open source project MapLibre to build a vector tile map
server (martin <https://github.com/maplibre/martin>) of Open Street Maps
data for the State of Oregon. Having a vector tile server allows me the
opportunity to create a 3 dimensional area (with some limitations) and
display a model in it and have the model move about. Everything is nice
and crisp and does not suffer the distortions bit mapped images can
cause. I was experimenting with QGIS and the ThreeJS plugin and decided
I had to have a vector tile server if I was going to be serious about 3D
modeling with maps. I was not inclined to subscribe to a commercial
service nor give up my privacy. So I built my own tile server. While
I'm currently working off of a SQLite database (~430 MB), the martin
server (built in rust) ties in with PostGIS -- I haven't explored that
as yet, it was enough to get the tile server with a tile set of the
State of Oregon working on a TLS [fna SSL] server. I have some working
knowledge of databases given my previous employment for 24 years at the
worlds largest database company.
I started off with the Open Map Tiles
<https://github.com/openmaptiles/openmaptiles>project and then modified
their broken style sheet (with the help of the MapLibre Maputnik
<https://github.com/maplibre/maputnik>project which also had problems I
had to overcome) and got a tile server to work with Apache, I prefer
Apache over Node. (I'm a seasoned Gentoo Linux enthusiast and Node,
like PHP, just gives me the willies.) Then I built the martin server in
rust -- that was a piece of cake, and then the trick was to tie in the
martin server with Apache and overcome CORS and proxy issues -- that
took a tremendous amount of time. A take-away: the paradigm is
extremely fragile/brittle, one setting off and nothing renders.
I could not have gotten to where I am without the help of ChatGPT --
it's like having a junior software assistant to figure the mundane tasks
that would take me a lot of time, e.g. creating a model simulation based
on ads-b flight data so that it mimics in real time the actual flight in
a 3D map environment. Example: I said I had a model in a 3D map
environment and wanted to feed it my captured ads-b data to make it
simulate in real time the actual flight path. Boom: proposed JavaScript
to accomplish it. I wanted a circular data set of artificial ads-b data
to do testing with: centered on my property on Court Street, 1/2 mil
radius, sinusoidal elevation from 100 to 500 and back again in one
cycle, intervals of coordinates every 1 second, or every 50
milliseconds. Boom: a Python script that creates a data set. Then I
thought it might be nice to generate the set on the fly within
JavaScript so a user could create a model on a fly and then watch the
aircraft fly the route. Boom: ChatGPT converted the Python script to a
JavaScript returning to me the array of data. I got a lot of exercise as
I went up the staircase from my basement office to tell my wife what
miracle ChatGPT had performed in software design. (AI can absolutely
fail in historical data by "hallucinating" ~= lying.) I'm ready to
testify that given the right handling (and understanding of its
limitations), AI will revolutionize software development.
https://salemdata.net/johnpress/?p=170
Out of pocket costs: $0 (though I've now decided to obtain a premium
account with ChatGPT for $20/month because I'm convinced it has saved
10s, if not 100s of hours).
My time -- only The Lord knows (a couple of months?).
I know everyone here are acolytes of ESRI, but some of us have to work
on a shoestring on our own and believe in open source solutions. I felt
it appropriate to share this story and possibly inspire some considering
open source alternatives.
Cheers,
John
--
Email Rider
John Laurence Poole
1566 Court ST NE
Salem OR 97301-4241
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://omls.oregon.gov/pipermail/gis_info/attachments/20240730/407df539/attachment.html>
More information about the gis_info
mailing list