
Google Earth Reverse Engineering - benzinschleuder
https://github.com/retroplasma/earth-reverse-engineering.git
======
jpatokal
"Reverse engineering" seems a bit pointless when Google has open sourced the
code for Google Earth Enterprise:

[https://github.com/google/earthenterprise](https://github.com/google/earthenterprise)

(Update: The client was _not_ open sourced, just the server.)

However, this doesn't give you carte blanche to use Google's own imagery:

[https://maps.google.com/help/terms_maps.html](https://maps.google.com/help/terms_maps.html)

~~~
tylerl
That's an interesting TOS.

I've never before seen "fair use" called out as an explicit allowance in terms
of copyright restrictions by the part of the copyright holder. It's not
entirely clear to me what that would even imply.

~~~
userbinator
I suspect they're trying to give more reassurance to "personal, non-commercial
use is allowed as long as you don't hit our servers too hard" \--- which seems
to be their stance on a lot of their other services too.

------
userbinator
I hope this gets mirrored somewhere else, because I don't trust GitHub to not
cave in to legal demands despite RE being legal regardless of EULA in parts of
the world, and the extra attention this gets may otherwise kill it.

~~~
kodablah
From what I've seen, GitHub will only respond to a DMCA request for takedown,
and Google very rarely files those (I think I saw one in the GitHub DMCA
notice repo for an entire internal published source repo once, could be
misremembering). Google doesn't usually fight with lawyers instead of tech
(e.g. making scraping more difficult).

Not saying you shouldn't fork or fear, but GitHub and Google are generally
good actors compared to others.

~~~
cronix
Yes, but MS now owns Github and MS might have a different viewpoint in terms
of copyright than GH has traditionally had.

~~~
kuhhk
Why do you suspect that?

~~~
feikname
Not OP, but I'd say because IIRC it's now a different CEO.

~~~
cronix
MS has traditionally been a software company, and has a LOT of court
experience over the last 40 years regarding copyright and lawsuits when it
comes to code and IP. I just think they _might_ have a different viewpoint
than GH has traditionally had, since GH's business is completely different
than traditional MS businesses. The post I was responding to was talking about
GH in the past and what they might do based on that. I'm just saying there's a
_recently new_ owner who _might_ look at it differently, so past behavior
might not be the best indicator for this since it's being run by a different
corporation now.

------
k9s9
NASA's WorldWind is a similar project for those interested -
[https://github.com/NASAWorldWind/WebWorldWind](https://github.com/NASAWorldWind/WebWorldWind)

docs -
[https://worldwind.arc.nasa.gov/web/](https://worldwind.arc.nasa.gov/web/)

------
walrus01
Once you have an OBJ file, you can 3D print it:

[https://all3dp.com/1/obj-file-format-3d-printing-
cad/](https://all3dp.com/1/obj-file-format-3d-printing-cad/)

If you want a 3D model of your office building or something.

~~~
TacticalTable
Do you have a better guide to this? The model seems to be infinitely thin,
which makes it unprintable in all the slicers I've tried.

------
automatoney
I'm so glad that this has been made, I tried working on something like this a
while ago but gave up after struggling for a bit. At the time I was surprised
it didn't exist yet.

I'm wondering though if Google'll eventually patch things so this doesn't
work, or if they're not too bothered by people grabbing data like this.

~~~
paganel
In the “old”, initial days (circa 2005-2006) they weren’t bothered by this, I
remember they released the GMaps public API back then as a result (among other
factors) of some people reverse engineering the public-facing interface. If
I’m not mistaken one of the first projects that was using the reverse-
engineered version (before the API was made public) was the former Chicago
Crime website, one of the first Django installations.

~~~
mtmail
The book 'Never Lost Again' (2018) tells the keyhole/Google Maps story line.
[https://www.goodreads.com/book/show/35820393-never-lost-
agai...](https://www.goodreads.com/book/show/35820393-never-lost-again)
Actually I left with the impression nobody involved had a good plan what
Google Maps should be after launch. API was an afterthought.

------
pieterhg
Love this, but I'm getting an error:

"DeprecationWarning: Buffer() is deprecated due to security and usability
issues"

Opened an issue: [https://github.com/retroplasma/earth-reverse-
engineering/iss...](https://github.com/retroplasma/earth-reverse-
engineering/issues/3)

~~~
anc84
That's not an error, just a warning. You can proceed using it just fine.

------
steve19
This is amazing. Would it be practical to download an entire town or small
city?

~~~
retroplasma
Can be done, although high LOD takes a while and the current implementation
might eat up all memory. You can run it in parallel though. Shard by octants
:)

------
arthurcolle
this is sick. how did you figure out the numeric schemes and even have the
idea to look where you did?

~~~
retroplasma
Mainly lived inside Chrome's dev tools for many nights. Its deobfuscator and
debugger is very handy. Still scratched my head lots of times along the way.
Some interesting stuff is still missing, e.g. no idea yet how they get octant
paths from geo coordinates.

~~~
dTal
That's kind of funny that Google wrote both the obfuscated code and the
deobfuscator.

~~~
lima
The obfuscation isn't necessarily a deliberate attempt at hindering reverse
engineering, but a result of their optimizing JS compiler and Protobuf-to-
JSON-bridge.

