
OpenLayers - devicetray0
https://openlayers.org/
======
mourner
Leaflet author here! Just wanted to note that if you haven't looked into
OpenLayers in a few years, you absolutely should — it's astonishing how much
it progressed: from something that I was so frustrated with that it prompted
me to write Leaflet in the first place (11 years ago) to a modern, fast, well-
engineered and lovingly maintained library.

It's especially great when you're doing complex GIS stuff and need a ton of
features and formats supported out of the box. As for other libraries, I'd
recommend Leaflet for simple maps, and Mapbox GL for rich, highly interactive
apps that benefit from vector rendering tech (I'm biased since I contributed
to both), but it's great to have OpenLayers in the mix — there's a library for
anyone's needs, cross-inspiration moves all three forward, and the mapping
software landscape in general is greater than it has ever been.

~~~
guu
Thanks for creating Leaflet and Mapbox GL!

Do you have any specific examples of "complex GIS stuff" (Uses OpenLayers) or
a "highly interactive app" (Uses MapBox GL)?

Are there any big feature gaps from leaflet->mapbox-gl that developers should
consider when choosing a mapping library?

~~~
claylimo
To answer your question: Leaflet.draw is superior to mapbox-gl-draw. mapbox-
gl-draw is very lightly maintained and is not as full featured as
Leaflet.draw. mapbox-gl-draw sounds like it may also be no longer maintained
by Mapbox in the future either - refer to the recent GitHub issue on the repos
that hints at this.

There are mapbox-gl-draw plugins to make it comparable to Leaflet.draw but
these are features IMO that mapbox-gl-draw probably should have had in the
first place.

So, as someone who works with mapbox-gl-js a lot, that is something I see as a
gap.

~~~
segheysens
What are the biggest features gaps you think are missing from Leaflet.draw ->
gl-draw? definitely hear you on the "very lightly maintained" front, but I may
be interested in submitting some PRs to gl-draw that mirror Leaflet.draw
functionality if there's specific functionality folks are looking for

------
rickette
When compared to the other two major OSS libraries I would say:

\- Leaflet. Widely known, suitable for mostly simple use cases.

\- Mapbox GL JS. State of the art library based on WebGL. Mapbox started off
with a fork/extension of Leaflet called Mapbox.js but over time has moved on
and created the Mapbox GL JS library from the ground up. Very fast, but
requires a GPU due to WebGL.

\- OpenLayers. Often used by more professional users. Probably the most
features complete library. Also usable without a GPU.

~~~
baroffoos
What do you mean requires a gpu? Doesn't all computing with a gui require some
kind of GPU?

~~~
bmn__
He means a GPU with 3D acceleration.

------
atombender
Speaking of, does anyone know a cheaper service than Mapbox and Google Maps
for raster tiles?

I have an app that uses Leaflet for rendering, and Mapbox purely for its
raster tiles (both plain maps and satellite required). Mapbox has been cheap
for us, at about $50/mo. But with the new pricing structure taking effect in
December, it's now about $450/mo. I believe Google and Bing are both more
expensive than that.

I've been considering setting up OSM, but I'd like to avoid having to run and
maintain it.

~~~
lukeqsee
We built Stadia Maps to save you the trouble and the expense.

[https://stadiamaps.com](https://stadiamaps.com)

Happy to answer any questions! (I’m a cofounder.)

~~~
echelon
Really unfortunate that Google Stadia has a name collision with y'all. :(

You don't even show up in the "stadia" search results without the term "maps"
added.

If it wasn't scary and expensive to sue Google for a name change, this seems
like a case of Google (probably unwittingly) crushing your brand and trademark
with their own.

Have y'all noticed a decrease in search traffic (or general brand/product
awareness) since Google Stadia launched? And if so, do you plan to do anything
about it?

Really cool product! Your maps look slick and _super clean_. :)

~~~
lukeqsee
Thanks for the kind words! We appreciate it.

> Have y'all noticed a decrease in search traffic (or general brand/product
> awareness) since Google Stadia launched?

We've actually seen an _uptick_ because of badly placed keyword searches for
Stadia.

We also aren't exactly sure the best way to counter it, but we're working on
figuring out the best way. We don't really have a legal resource, either,
given we didn't have a trademark before Google Stadia came along.

~~~
baroffoos
Its ok. Stadia is a google product, it wont exist by the end of 2020.

------
andrewshadura
OpenLayers was one of the first open source libraries of this kind; sadly it's
lost some development momentum back when everyone was using it in 2008 or so,
and nearly everyone switched to (then faster) alternatives like Leaflet.

~~~
jackinloadup
Anyone know how OpenLayers compares to Leaflet today?

~~~
Waterluvian
Not to blow my own horn but my background is very intimately in Web-GIS
(Bachelor's and Master's in geography), my career for 7 years has been in
robotics and building web-UIs for real-time robotics GIS, so I think I'm
probably an expert here.

I've used Leaflet for a few years and now OpenLayers for about 5 years to
author UIs for monitoring robot fleets in real-time as well as build Web-GIS
applications for mapping and configuring, autogenerating, validating the
spatial datasets (fiducials, SLAM data, navigable positions, "zones",
"pathways", etc.)

Leaflet is what I'd say will fit most people's needs when it comes to your
standard web-map use cases. It's a beautifully designed library with a good
level of modularity and lots of plugins. The API is great.

OpenLayers shines when you get into a lot more complex stuff. The symbology
engine is phenomenally powerful and I found that the API plugs into more
complex Redux-style state management in a more easy way than Leaflet.

I also found performance when doing high-volume, high-frequency data updates
and interactions to be faster with OpenLayers.

That being said, I haven't dug deeply into Leaflet in about a year and things
can change quite quickly!

I suspect the overwhelming majority of developers aren't doing anything all
that novel or complicated. They're not making Web-GIS applications and
probably will do just fine with either.

~~~
jackinloadup
Thanks for your perspective

------
nkoren
We use OpenLayers extensively in my company
([https://www.podaris.com](https://www.podaris.com)), and we push it really,
_really_ hard. It's the basis for a parametric CAD system, a bunch of GIS
tools, and most recently, transport micro-simulation. It had a steep learning
curve, but has held up remarkably well over the years, with remarkably few
instances where it's been the bottleneck.

Definitely recommended!

------
maliker
We used openLayers, ran in to performance issues, switched to Leaflet, and
couldn't be happier. Just our experience, for what it's worth.

~~~
zefman
We had the exact opposite problem! We built a custom webgl rendering layer on
top of leaflet to get around leaflet's performance issues. We have now
switcher to openlayers and very happy. Guess it depends on the exact use case.

~~~
maliker
Sounds like we should do some more OpenLayers testing! Thanks.

------
pkalinowski
Some time ago I checked out three libraries for my amateur small navigation
app:

Leaflet - it doesn't have map rotation, so it was a dealbraker for me. People
on Stack Overflow were talking about ugly hacks, I didn't want to go into the
rabbit hole.

Mapbox - I found docs little clunky (again, I'm amateur so it may be the
reason I didn't get it) and couldn't really work out what's paid and what's
free. Didn't spend a lot of time on them, though.

OpenLayers - I think it's the best one feature-wise, but documentation is
rather for more advanced developers. I struggled a lot before finally grasping
how it works and still, it's not easy. Getting started guide like Vue.js has
would be immensely helpful.

I ended up with OpenLayers and I'm pretty satisfied for now, despite needing
fairly long time to actually implement features properly.

------
ghgr
What a coincidence! I discovered OpenLayers yesterday when looking for a way
to display a 1 Terapixel image. I got it up and running in a few hours. Kudos
to the developers!

~~~
degenerate
Are you serving it as a "static image" or using a different method?

[https://openlayers.org/en/latest/examples/static-
image.html](https://openlayers.org/en/latest/examples/static-image.html)

~~~
ghgr
I followed a tiled based approach, as explained here:
[https://openlayers.org/en/latest/examples/localized-
openstre...](https://openlayers.org/en/latest/examples/localized-
openstreetmap.html)

Although the image is not a map at all, I tiled it and served it as a custom
map layer. You can view it at [https://finance.alisio-
computing.eu](https://finance.alisio-computing.eu)

~~~
degenerate
Thanks for sharing! One more curiosity - what PNG compression tool was used
and how long did it take to crunch 216GB to 17GB? I'm surprised it didn't
crash.

~~~
ghgr
I didn't compress an actual image from 216GB to 17GB. Instead, I created the
highest resolution image already as a set of tiles (each one 5000x10000 px).
Then I tiled them further in two additional zoom levels, until I got 4x8
square tiles of 1250x1250px. From there I worked backwards merging chunks of
2x2 tiles.

The figure 217 GB comes from the cumulative size of all the pandas DataFrames
containing the whole dataset (as mgspack files). The lossless compressed
figure comes from the total size of the highest zoom level.

It didn't take _that_ long, it was mostly done overnight (so around 10 hours
in a i7 server with 24 GB RAM).

~~~
degenerate
Thank you for the detail.

------
mzur
I like OpenLayers. We built a rather complex image annotation tool around it
and OpenLayers worked well with all the features we added over the years,
recently even a full-blown video annotation tool. The community is nice and
active, too. Best of all: It's still compatible with our old school way of JS
development. The only thing I'm missing is the API documentation of older
versions which they seem to have dropped at some point.

------
moonfleet
We use OpenLayers at our company. We are building an interactive map with a
bunch of tools for measuring distance, calculating routes, drawing features,
displaying diagrams right on top of the map, and OpenLayers is doing wonders
for us. It has a steep learning curve but once you grasp the fundamentals, you
can figure out how to do all kinds of magic tricks with it.

~~~
nkoren
What's your company?

~~~
moonfleet
It’s a small company that creates software for the public sector in
Kazakhstan.

------
herogreen
What is the advantage of having the documentation CC-BY 3.0 licensed ? In
cases where documentation is generated from the code it seems more convenient
to use the same license for both.

------
n1vz3r
I used OpenLayers back in 2008-2011 for mapping-heavy web application. It was
of very high quality, and had great API documentation (using DoxyGen, iirc).
Taught me some things about pre-modern-craze Javascript programming (i.e. how
to correctly implement inheritance in JS)

------
kls
just did a port from a custom D3 map solution to OL due to mobile
requirements. I can say the OL's mobile support is first class.

------
nickik
Can I get topological maps without roads and so on with this? Is their hight
data?

~~~
widforss
This is a library for presenting map data, you have to specify your map source
yourself.

