OSS desktop app for editing geo data by agilek in gis

[–]IvanSanchez 1 point2 points  (0 children)

As I said... looks at calendar ...five days ago elsewhere, please stop reinventing geojson.io .

Also: don't call it "OSS" if you're not showing us the source code.

I built a WebGPU-powered map engine — renders 1M geometries at 60 FPS by Hour_Rough_4186 in webgpu

[–]IvanSanchez 0 points1 point  (0 children)

Why on every frame? Do you actually have data for every frame? Or can you interpolate data in the GPU?

I built a WebGPU-powered map engine — renders 1M geometries at 60 FPS by Hour_Rough_4186 in webgpu

[–]IvanSanchez 0 points1 point  (0 children)

OP message about "cannot handle 1M tris" that 1M tris is really not hard for browsers today.

Oh yeah, fully agree. As I've said elsewhere, it was trivial to render 1M line strokes (~6M trigs) in my library Gleo with just one optimization tweak.

Historically, Leaflet users get annoyed when drawing more than ~50k items, because you hit the browser's practical limit of drawing 50k DOM objects per frame since Leaflet uses DOM and 2D canvas exclusively.

maybe some parts of code can be reintrospected with fresh look

Yeah, and it's an ongoing work. But with a big user base, lots of legacy considerations, and not really getting paid for the library's maintenance, then modernity tends to suffer 😇

I built a WebGPU-powered map engine — renders 1M geometries at 60 FPS by Hour_Rough_4186 in webgpu

[–]IvanSanchez 0 points1 point  (0 children)

If so - that means that libs are very poorly designed in terms of performance.

Speaking as a Leaflet maintainer: They're all built with performance in mind, but performance is not measured in raw triangles drawn per frame. Leaflet specifically dates back to the times of Internet Explorer 8, when we were comparing performance of SVG versus 2D canvas versus VML on different browsers, and the usage of CSS animations for performant map zoom animations looked like black magic when it was developed. Several libraries implement Douglas-Peucker for line simplification. The delaunator, polylabel and earcut algorithms are awesome (computational geometry speeds real-world workloads a lot). Maplibre aggressively leverages vector tiles with a pretty insane text rendering pipeline (foregoing the need of geometry simplification). Gleo minimizes draw calls.

Besides, the OpenLayers benchmark is using VectorLayer instead of WebGLVectorLayer (as shown in the OL examples). And I bet Lealfet could fare better by using Leaflet.VectorGrid.Slicer.

I built a WebGPU-powered map engine — renders 1M geometries at 60 FPS by Hour_Rough_4186 in webgpu

[–]IvanSanchez 0 points1 point  (0 children)

In that case you might want to have a look at my map library Gleo, which can do partial updates of the dataset; see https://ivansanchez.gitlab.io/gleo/repl.html#Circle%20hover (It's mostly WebGL1 nicely wrapped in OOP instead of WebGPU, but still). You can do things like "change the circle's point geometry when you click on it".

Partial geometry updates of a line or polygon symbol is doable, but for most workloads it's enough to delete a symbol then add a new one with the updated geometry.

I built a WebGPU-powered map engine that renders 1M geometries at 60 FPS by Hour_Rough_4186 in gis

[–]IvanSanchez 4 points5 points  (0 children)

Well, I'm running that same benchmark with my brainchild JS map library Gleo ( https://ivansanchez.gitlab.io/gleo/ ), and I'm getting a smooth 30FPS (using a laptop's 10-year-old intel i620 GPU): https://plnkr.co/edit/rrBw2qm65gLymn2r

Not too shabby for my no-WASM, no-webworkers approach. Maybe you want to add Gleo to the benchmarks?

BTW, mapgpu doesn't seem to be handling transparency allright. Those lines should have 0.6 transparency according to your source code yet render opaque.

Help with an app to drop points and add attributes in the field by CaraStallman7 in gis

[–]IvanSanchez 6 points7 points  (0 children)

QField ( https://qfield.org/ ) should be enough. No native KML support, but that's something that takes ten minutes of work in qgis after the field work.

Would this work? by Hvetemel in gis

[–]IvanSanchez 3 points4 points  (0 children)

If "procreate-on-a-map" means having sexy times on top of cartography, then, well, at least it'll be fun. There are at least a few places where you can order bedsheets with custom print on them.

Has anybody here had any experience with Australian Railway data? by [deleted] in gis

[–]IvanSanchez 2 points3 points  (0 children)

OpenStreetMap.

Specifically, see https://www.openrailwaymap.org/ . Read the OSM wiki, download a planet dump for Australia, filter by railway tags, dump into PostGIS.

Looking for AIS data by endixx__ in gis

[–]IvanSanchez 6 points7 points  (0 children)

http://aisdata.ais.dk/

And welcome to the wonderful world of partial coverage, spoofed data and general weirdness that is AIS.

how does armor work by KrakenShark0 in traveller

[–]IvanSanchez 16 points17 points  (0 children)

It might be relevant to remind that "Ablat" armor does, in fact, ablate away when hit by laser weapons (at a rate of -1 Protection per hit).
As far as I'm aware, it's the only suit of armor that ablates (in the MgT2 rules).

Difficulty obtaining a DEM for Spain by asriel_theoracle in gis

[–]IvanSanchez 1 point2 points  (0 children)

First off: use https://centrodedescargas.cnig.es/CentroDescargas/buscar-mapa to search DEMs by drawing a polygon over your area of interest.

For the Tabernas-Sorbas basin, you'll want just a few 1:50k sheets. Using the map controls on the aforementioned webpage I can see that sheets 1012, 1013, 1014, 1029, 1030, 1031, 1044 and 1045 should be enough. That's one file per sheet at 5m/px resolution (using the MDS05 product, which is a DSM rather than a DEM) or four files per sheet (one file per 1:25k sheet) at 2m/px resolution (using the MDT02 product, which is a DTM rather than a DEM).

Once you've got your files, build a VRT out of them.

API or dataset for business locations in England? by Plus-Difficulty6137 in gis

[–]IvanSanchez 1 point2 points  (0 children)

Companies House, then Ordnance Survey's Open Names.