SlideShare uma empresa Scribd logo
1 de 29
Baixar para ler offline
Geolocalização com
Redis
e
Google Maps
Caixa Sobre
– Juntos estamos, finalmente, iniciando a ArrayOf.io –
Sua nova opção em treinamentos e assessoria.
https://ArrayOf.io
Introdução ao assunto
Mario Guedes
Geolocalização, o que é?
Qualquer ponto na superfície terrestre pode ser endereçado através de
uma rede de linhas imaginárias que fatiam o globo.
A geolocalização é composta por duas coordenadas geográficas:
• Latitude
• Longitude
Latitude
A latitude é determinada em graus, de 0º à 90º.
Da Linha do Equador ao norte, os números são positivos.
Da Linha do Equador ao sul, os números são negativos.
Os paralelos determinam as latitudes e os paralelos são círculos
completos em volta da Terra, por isso temos 180º ao todo.
Longitude
A longitude é determinada em graus, de 0º à 180º.
Do Meridiano de Greenwich à leste, os números são positivos
Do Meridiano de Greenwich à oeste, os números são negativos
Os meridianos determinam as longitudes, e os meridianos são semicírculos em
volta da Terra, por isso temos 360º ao todo.
Observe que essas linhas também são utilizadas para determinar os fusos
horários, mas isso é outra história.
Graus?
Graus, minutos e segundos para ser mais exato.
Graus de ângulo mesmo …
Os babilônios achavam que um ano tinha 360 dias, daí decidiram dividir um círculo em
360 partes, sendo cada parte um ângulo.
Cada ângulo equivale à 60 minutos, sendo minuto a subdivisão de um ângulo.
Por fim, cada minuto se subdivide em segundos.
Aqui minutos e segundos são medidas de distância e não de tempo!
Temos um plano cartesiano então?
A Linha do Equador é o Eixo X
O Meridiano de Greenwich é o Eixo Y
A intersecção das duas linhas é o ponto
ZERO
Mas isso não significa que a Terra é plana
hein?
Linha do Equador
Meridiano de
Greenwich
E a altitude?
É uma informação importante também!
Determina-se a altitude de um local em relação ao nível do mar.
Afinal, vivemos em uma enorme rocha imperfeita porém “esférica”.
Altitude Positiva
Altitude Negativa
Profundidade
Geohash
• Geohash é um sistema de geocodificação que utiliza uma sequência
de números e letras para representar coordenadas geográficas.
• Nosso encontro, por exemplo, pode ser representado da seguinte
maneira:
• Latitude : -23.5708384
• Longitude: -46.6576912
• Geohash : 6gycfm0cuvrb

• http://geohash.co
Sobre o GPS
Thiago Filadelfo
GPS - Global Positioning System
Sistema de Posicionamento Global
Foi criado na década de 60 como um projeto militar e atualmente é
administrado pelo Departamento de Defesa dos Estados Unidos
Utilizado em 1990 na Guerra do Golfo para orientar os soldados americanos
no deserto.
Plenamente operacional em 1995 e liberado para uso civil no ano 2000.
São 24 satélites que orbitam a Terra duas vezes por dia
Existem outras tecnologias como Glonass (Rússia), Compass (China) e
Galileo (Europa)
GPS
Para funcionar o receptor tem que receber
o sinal de 3 satélites no mínimo.
Uma maior quantidade aumenta a
precisão.
O receptor faz uns cálculos malucos com
as informações recebidas e com isso
consegue determinar a sua latitude e
longitude
Obtendo coordenadas
Satélite 1
Satélite 3
Satélite 2
Área de leitura do
satélite, triangulação
Coordenada informada
para os aplicativos
Precisão da coordenada
informada
Local do nosso encontro
Alameda Campinas, 1213 - Jardins, São Paulo -
SP, 01404-001
Latitude : -23.5708384
Longitude: -46.6576912
E como funciona tudo isto no seu celular?
O celular tem um bússola interna, certo?
Então ele consegue determinar em que direção fica o norte e com isso determinar
todas as outras.
O celular tem um receptor GPS, certo?
Então ele consegue determinar a sua localização física no planeta Terra
O celular tem acesso à Internet, certo?
Então ele consegue fazer download dos mapas, sincronizar todas as informações e
ser uma das ferramentas mais úteis do dia à dia do cidadão médio.
Backend – Redis e Delphi
Mario Guedes
E como funciona no Redis?
Você já sabe que o Redis é um banco noSQL orientado à chave e valor que
armazena seus dados em memória e que por causa de tudo isso é rápido
pra caramba!
Ele oferece tipos e comando específicos para lidar com geolocalização.
Internamente o Redis utiliza o geohash e o tipo conjunto para lidar com
geolocalização.
Comandos Redis
GEOADD: Adiciona uma informação geolocalizada à um conjunto
GEORADIOS: Recupera itens de um conjunto à partir de coordenadas
GEOPOS: Retorna as coordenadas de um determinado item
GEORADIOSBYMEMBER: Recupera itens de um conjunto à partir de um determinado
item deste conjunto
GEODIST: Recupera a distância entre dois membros de um conjunto
GEOHASH: Recupera o geohash de uma coordenada geográfica
https://redis.io/commands#geo
Código
Mário Guedes
Frontend – Delphi e Google Maps
Thiago Filadelfo
Mobile
Temos que criar uma conta para o nosso projeto no Google Cloud.
https://console.cloud.google.com/google/maps-apis
Google Cloud
Aguarde bem
essa chave
Delphi 10.3
Project
|--> Options
Credencial do
Google Cloud
Delphi 10.3 - PinMap
LocationSensor
Demonstração final
Exemplos desta palestra:
https://github.com/ArrayOf/EventoPassaporte2019
https://ArrayOf.io
Obrigado!
● https://youtu.be/0dvR9I9kK9g
● https://github.com/flrizzato/EmbarcaderoConference/blob/master/2017/
WHATSUP%20-%20Georreferenciamento%20com%20Delphi.pdf
● https://pt.wikipedia.org/wiki/Graus_decimais
● https://www.youtube.com/watch?v=w-fJsKfNsNI
● https://www.youtube.com/watch?v=onC9WxNNG1E
● https://www.infoescola.com/geografia/coordenadas-geograficas/
● http://docwiki.embarcadero.com/RADStudio/Rio/en/
Mobile_Tutorial:_Using_a_Map_Component_to_Work_with_Maps_(iOS_and_Androi
d)
● http://docwiki.embarcadero.com/RADStudio/Rio/en/
Mobile_Tutorial:_Using_Location_Sensors_(iOS_and_Android)#The_Location_Sensor
● http://www.99coders.com.br
Todas essas referências foram acessadas em: 27/09/2019

Mais conteúdo relacionado

Semelhante a Geolocalização com Redis e Google Maps

Localização no espaço geografico 6º ano
Localização no espaço geografico 6º anoLocalização no espaço geografico 6º ano
Localização no espaço geografico 6º ano
Nilberte Correia
 
Amostra apostila-ibge-2011
Amostra apostila-ibge-2011Amostra apostila-ibge-2011
Amostra apostila-ibge-2011
jjfneto83
 
Aula coordenadas
Aula coordenadasAula coordenadas
Aula coordenadas
kikoprof
 
Aula coordenadas
Aula coordenadasAula coordenadas
Aula coordenadas
lukrinaldo
 
Projeto cartografia ceesub
Projeto cartografia   ceesubProjeto cartografia   ceesub
Projeto cartografia ceesub
ricardoeval
 

Semelhante a Geolocalização com Redis e Google Maps (20)

Localização no espaço geografico 6º ano
Localização no espaço geografico 6º anoLocalização no espaço geografico 6º ano
Localização no espaço geografico 6º ano
 
Introdução Geoprocessamento e GPS
Introdução Geoprocessamento e GPSIntrodução Geoprocessamento e GPS
Introdução Geoprocessamento e GPS
 
Aval parc 1º
Aval parc 1ºAval parc 1º
Aval parc 1º
 
CARTOGRAFIA BÁSICA 1
CARTOGRAFIA  BÁSICA 1CARTOGRAFIA  BÁSICA 1
CARTOGRAFIA BÁSICA 1
 
Viagens com gps
Viagens com gpsViagens com gps
Viagens com gps
 
CARTOGRAFIA - 1º ANOS
CARTOGRAFIA - 1º ANOS CARTOGRAFIA - 1º ANOS
CARTOGRAFIA - 1º ANOS
 
AULA_01_GEO_INTROD.pptx
AULA_01_GEO_INTROD.pptxAULA_01_GEO_INTROD.pptx
AULA_01_GEO_INTROD.pptx
 
Ciências cartográficas guião de vídeo francisco javier cervigon ruckauer
Ciências cartográficas guião de vídeo francisco javier cervigon ruckauerCiências cartográficas guião de vídeo francisco javier cervigon ruckauer
Ciências cartográficas guião de vídeo francisco javier cervigon ruckauer
 
Sistemas de Coordenadas e Projeções Cartográficas
Sistemas de Coordenadas e Projeções CartográficasSistemas de Coordenadas e Projeções Cartográficas
Sistemas de Coordenadas e Projeções Cartográficas
 
Sistema de Informação Geográfica e Georreferenciamento.pptx
Sistema de Informação Geográfica e Georreferenciamento.pptxSistema de Informação Geográfica e Georreferenciamento.pptx
Sistema de Informação Geográfica e Georreferenciamento.pptx
 
Sistemas de Localização Geográfica, Georreferencialmento e Topografia
Sistemas de Localização Geográfica, Georreferencialmento e TopografiaSistemas de Localização Geográfica, Georreferencialmento e Topografia
Sistemas de Localização Geográfica, Georreferencialmento e Topografia
 
Transformação de Coordenadas: Veja Como Fazer!
Transformação de Coordenadas: Veja Como Fazer!Transformação de Coordenadas: Veja Como Fazer!
Transformação de Coordenadas: Veja Como Fazer!
 
Estudos dos mapas, escala e fuso horario
Estudos dos mapas, escala e fuso horarioEstudos dos mapas, escala e fuso horario
Estudos dos mapas, escala e fuso horario
 
Levantamento Topográfico Georreferenciado?
Levantamento Topográfico Georreferenciado?Levantamento Topográfico Georreferenciado?
Levantamento Topográfico Georreferenciado?
 
Amostra apostila-ibge-2011
Amostra apostila-ibge-2011Amostra apostila-ibge-2011
Amostra apostila-ibge-2011
 
Aula coordenadas
Aula coordenadasAula coordenadas
Aula coordenadas
 
Aula coordenadas
Aula coordenadasAula coordenadas
Aula coordenadas
 
Aula coordenadas
Aula coordenadasAula coordenadas
Aula coordenadas
 
Projeto cartografia ceesub
Projeto cartografia   ceesubProjeto cartografia   ceesub
Projeto cartografia ceesub
 
Trabalho sobre GPS II
Trabalho sobre GPS IITrabalho sobre GPS II
Trabalho sobre GPS II
 

Último

Último (9)

ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docxATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
Luís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdfLuís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdf
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
Programação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdfProgramação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdf
 

Geolocalização com Redis e Google Maps

  • 2. Caixa Sobre – Juntos estamos, finalmente, iniciando a ArrayOf.io – Sua nova opção em treinamentos e assessoria. https://ArrayOf.io
  • 4. Geolocalização, o que é? Qualquer ponto na superfície terrestre pode ser endereçado através de uma rede de linhas imaginárias que fatiam o globo. A geolocalização é composta por duas coordenadas geográficas: • Latitude • Longitude
  • 5.
  • 6. Latitude A latitude é determinada em graus, de 0º à 90º. Da Linha do Equador ao norte, os números são positivos. Da Linha do Equador ao sul, os números são negativos. Os paralelos determinam as latitudes e os paralelos são círculos completos em volta da Terra, por isso temos 180º ao todo.
  • 7. Longitude A longitude é determinada em graus, de 0º à 180º. Do Meridiano de Greenwich à leste, os números são positivos Do Meridiano de Greenwich à oeste, os números são negativos Os meridianos determinam as longitudes, e os meridianos são semicírculos em volta da Terra, por isso temos 360º ao todo. Observe que essas linhas também são utilizadas para determinar os fusos horários, mas isso é outra história.
  • 8. Graus? Graus, minutos e segundos para ser mais exato. Graus de ângulo mesmo … Os babilônios achavam que um ano tinha 360 dias, daí decidiram dividir um círculo em 360 partes, sendo cada parte um ângulo. Cada ângulo equivale à 60 minutos, sendo minuto a subdivisão de um ângulo. Por fim, cada minuto se subdivide em segundos. Aqui minutos e segundos são medidas de distância e não de tempo!
  • 9. Temos um plano cartesiano então? A Linha do Equador é o Eixo X O Meridiano de Greenwich é o Eixo Y A intersecção das duas linhas é o ponto ZERO Mas isso não significa que a Terra é plana hein? Linha do Equador Meridiano de Greenwich
  • 10. E a altitude? É uma informação importante também! Determina-se a altitude de um local em relação ao nível do mar. Afinal, vivemos em uma enorme rocha imperfeita porém “esférica”. Altitude Positiva Altitude Negativa Profundidade
  • 11. Geohash • Geohash é um sistema de geocodificação que utiliza uma sequência de números e letras para representar coordenadas geográficas. • Nosso encontro, por exemplo, pode ser representado da seguinte maneira: • Latitude : -23.5708384 • Longitude: -46.6576912 • Geohash : 6gycfm0cuvrb
 • http://geohash.co
  • 12. Sobre o GPS Thiago Filadelfo
  • 13. GPS - Global Positioning System Sistema de Posicionamento Global Foi criado na década de 60 como um projeto militar e atualmente é administrado pelo Departamento de Defesa dos Estados Unidos Utilizado em 1990 na Guerra do Golfo para orientar os soldados americanos no deserto. Plenamente operacional em 1995 e liberado para uso civil no ano 2000. São 24 satélites que orbitam a Terra duas vezes por dia Existem outras tecnologias como Glonass (Rússia), Compass (China) e Galileo (Europa)
  • 14. GPS Para funcionar o receptor tem que receber o sinal de 3 satélites no mínimo. Uma maior quantidade aumenta a precisão. O receptor faz uns cálculos malucos com as informações recebidas e com isso consegue determinar a sua latitude e longitude
  • 15. Obtendo coordenadas Satélite 1 Satélite 3 Satélite 2 Área de leitura do satélite, triangulação Coordenada informada para os aplicativos Precisão da coordenada informada
  • 16. Local do nosso encontro Alameda Campinas, 1213 - Jardins, São Paulo - SP, 01404-001 Latitude : -23.5708384 Longitude: -46.6576912
  • 17. E como funciona tudo isto no seu celular? O celular tem um bússola interna, certo? Então ele consegue determinar em que direção fica o norte e com isso determinar todas as outras. O celular tem um receptor GPS, certo? Então ele consegue determinar a sua localização física no planeta Terra O celular tem acesso à Internet, certo? Então ele consegue fazer download dos mapas, sincronizar todas as informações e ser uma das ferramentas mais úteis do dia à dia do cidadão médio.
  • 18. Backend – Redis e Delphi Mario Guedes
  • 19. E como funciona no Redis? Você já sabe que o Redis é um banco noSQL orientado à chave e valor que armazena seus dados em memória e que por causa de tudo isso é rápido pra caramba! Ele oferece tipos e comando específicos para lidar com geolocalização. Internamente o Redis utiliza o geohash e o tipo conjunto para lidar com geolocalização.
  • 20. Comandos Redis GEOADD: Adiciona uma informação geolocalizada à um conjunto GEORADIOS: Recupera itens de um conjunto à partir de coordenadas GEOPOS: Retorna as coordenadas de um determinado item GEORADIOSBYMEMBER: Recupera itens de um conjunto à partir de um determinado item deste conjunto GEODIST: Recupera a distância entre dois membros de um conjunto GEOHASH: Recupera o geohash de uma coordenada geográfica https://redis.io/commands#geo
  • 22. Frontend – Delphi e Google Maps Thiago Filadelfo
  • 23. Mobile Temos que criar uma conta para o nosso projeto no Google Cloud. https://console.cloud.google.com/google/maps-apis
  • 26. Delphi 10.3 - PinMap
  • 28. Demonstração final Exemplos desta palestra: https://github.com/ArrayOf/EventoPassaporte2019 https://ArrayOf.io
  • 29. Obrigado! ● https://youtu.be/0dvR9I9kK9g ● https://github.com/flrizzato/EmbarcaderoConference/blob/master/2017/ WHATSUP%20-%20Georreferenciamento%20com%20Delphi.pdf ● https://pt.wikipedia.org/wiki/Graus_decimais ● https://www.youtube.com/watch?v=w-fJsKfNsNI ● https://www.youtube.com/watch?v=onC9WxNNG1E ● https://www.infoescola.com/geografia/coordenadas-geograficas/ ● http://docwiki.embarcadero.com/RADStudio/Rio/en/ Mobile_Tutorial:_Using_a_Map_Component_to_Work_with_Maps_(iOS_and_Androi d) ● http://docwiki.embarcadero.com/RADStudio/Rio/en/ Mobile_Tutorial:_Using_Location_Sensors_(iOS_and_Android)#The_Location_Sensor ● http://www.99coders.com.br Todas essas referências foram acessadas em: 27/09/2019