SlideShare uma empresa Scribd logo
1 de 37
Geolocalização com
Redis e Google Maps
Caixa Sobre
Mario Guedes: Desenvolvedor Delphi e Python com bancos noSQL a mais de 20 anos.
Focado em arquitetura em backend, faz as telas mais feias do mundo.
mario@arrayof.io
Thiago Filadelfo: Desenvolvedor Mobile e Web a mais de 13 anos com experiência em
várias linguagens como Delphi, Java, Kotlin, Swift, Flutter, C#, JavaScript - ufa!
thiago@arrayof.io
– Juntos estamos, finalmente, iniciando a ArrayOf.io –
Sua nova opção em treinamentos e assessoria.
https://ArrayOf.io
Introdução ao assunto
Cabo 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í determinaram dividir um
círculo em 360 pedaços, sendo cada pedaço 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!
Caraca! Temos um plano cartesiano então!
Acertou miseravi!
A Linha do Equador é o Eixo X
O Meridiano de Greenwich é o Eixo Y
A intersecção das duas linhas é o ponto 0
Isso não significa que a Terra é plana hein?
Linha do
Equador
Meridiano de
Grennwich
E a altitude?
É uma informação importante também!
Determina 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.: -30.0428357
• Longitude: -51.2188929
• Geohash..: 6fet46zec33q
• http://geohash.co
Sobre o GPS
Cabo 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
Avenida Venâncio Aires, 93, Cidade Baixa, Porto
Alegre – RS
Latitude.: -30.0428357
Longitude: -51.2188929
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
Cabo 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 para lidar com o assunto
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
Frontend – Delphi e Google Maps
Cabo 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
Criando o projeto
DelphiSquad
Google Cloud
Google Cloud
Criando uma credencial para
usar depois no projeto
Google Cloud
Aguarde bem
essa chave
Delphi 10.3
New Project
|-- Multi-Device Application
Delphi 10.3
Project
|--> Options
Delphi 10.3
Project
|--> Options
Credencial do
Google Cloud
Delphi 10.3 - TMapView
Delphi 10.3 - PinMap
LocationSensor
LocationSensor
Demonstração final
Exemplos desta palestra:
https://github.com/ArrayOf/DelphiSquad-POA-2019
https://ArrayOf.io
● https://youtu.be/0dvR9I9kK9g
● https://github.com/flrizzato/EmbarcaderoConference/blob/master/2017/WH
ATSUP%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_Android)
● 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

Geolocalização com Redis e Google Maps
Geolocalização com Redis e Google MapsGeolocalização com Redis e Google Maps
Geolocalização com Redis e Google MapsMario Guedes
 
Adding where to your ruby apps lt - (q con)
Adding where to your ruby apps   lt -  (q con)Adding where to your ruby apps   lt -  (q con)
Adding where to your ruby apps lt - (q con)Roberto Pepato
 
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!Adenilson Giovanini
 
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º anoNilberte Correia
 
Introdução Geoprocessamento e GPS
Introdução Geoprocessamento e GPSIntrodução Geoprocessamento e GPS
Introdução Geoprocessamento e GPSAdilsonLuizNicoletti
 
Mvp conf 2021 - Criando uma Minimal API para serviços de Geolocalização com S...
Mvp conf 2021 - Criando uma Minimal API para serviços de Geolocalização com S...Mvp conf 2021 - Criando uma Minimal API para serviços de Geolocalização com S...
Mvp conf 2021 - Criando uma Minimal API para serviços de Geolocalização com S...Dextra Sistemas / Etec Itu
 
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 TopografiaVitor Vieira Vasconcelos
 

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

Geolocalização com Redis e Google Maps
Geolocalização com Redis e Google MapsGeolocalização com Redis e Google Maps
Geolocalização com Redis e Google Maps
 
Adding where to your ruby apps lt - (q con)
Adding where to your ruby apps   lt -  (q con)Adding where to your ruby apps   lt -  (q con)
Adding where to your ruby apps lt - (q con)
 
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!
 
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
 
Viagens com gps
Viagens com gpsViagens com gps
Viagens com gps
 
Mvp conf 2021 - Criando uma Minimal API para serviços de Geolocalização com S...
Mvp conf 2021 - Criando uma Minimal API para serviços de Geolocalização com S...Mvp conf 2021 - Criando uma Minimal API para serviços de Geolocalização com S...
Mvp conf 2021 - Criando uma Minimal API para serviços de Geolocalização com S...
 
Banco de dados geográficos
Banco de dados geográficosBanco de dados geográficos
Banco de dados geográficos
 
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
 
Sig
SigSig
Sig
 
Aval parc 1º
Aval parc 1ºAval parc 1º
Aval parc 1º
 

Mais de Mario Guedes

O que é e como devo usar o REDIS? - 1o Mobile REST Summit
O que é e como devo usar o REDIS? - 1o Mobile REST SummitO que é e como devo usar o REDIS? - 1o Mobile REST Summit
O que é e como devo usar o REDIS? - 1o Mobile REST SummitMario Guedes
 
Fazendo barba, cabelo e bigode com REDIS
Fazendo barba, cabelo e bigode com REDISFazendo barba, cabelo e bigode com REDIS
Fazendo barba, cabelo e bigode com REDISMario Guedes
 
Integrando-se à Blockchain da Ethereum
Integrando-se à Blockchain da EthereumIntegrando-se à Blockchain da Ethereum
Integrando-se à Blockchain da EthereumMario Guedes
 
Entendendo HTTP para entender o REST
Entendendo HTTP para entender o RESTEntendendo HTTP para entender o REST
Entendendo HTTP para entender o RESTMario Guedes
 
Expressão Regular - Cookbook
Expressão Regular - CookbookExpressão Regular - Cookbook
Expressão Regular - CookbookMario Guedes
 
Foco no app, viva o serverless!
Foco no app, viva o serverless!Foco no app, viva o serverless!
Foco no app, viva o serverless!Mario Guedes
 
Paralelismo na prática: Threads de uma vez por todas e sem medo!
Paralelismo na prática: Threads de uma vez por todas e sem medo!Paralelismo na prática: Threads de uma vez por todas e sem medo!
Paralelismo na prática: Threads de uma vez por todas e sem medo!Mario Guedes
 
Escalabilidade com Redis
Escalabilidade com Redis Escalabilidade com Redis
Escalabilidade com Redis Mario Guedes
 
Escalando o backend com NGINX e Redis
Escalando o backend com NGINX e RedisEscalando o backend com NGINX e Redis
Escalando o backend com NGINX e RedisMario Guedes
 
Turbinando o seu sistema com Redis!
Turbinando o seu sistema com Redis!Turbinando o seu sistema com Redis!
Turbinando o seu sistema com Redis!Mario Guedes
 
Microsserviço, Escalabilidade e Resiliência - #comofas?
Microsserviço, Escalabilidade e Resiliência - #comofas?Microsserviço, Escalabilidade e Resiliência - #comofas?
Microsserviço, Escalabilidade e Resiliência - #comofas?Mario Guedes
 
TDCSP - 2018 - Possibilidades com o REDIS no Delphi
TDCSP - 2018 - Possibilidades com o REDIS no DelphiTDCSP - 2018 - Possibilidades com o REDIS no Delphi
TDCSP - 2018 - Possibilidades com o REDIS no DelphiMario Guedes
 
Extreme Experience 2018 | Estudo de Caso: Aplicação DataSnap para 10.000 usuá...
Extreme Experience 2018 | Estudo de Caso: Aplicação DataSnap para 10.000 usuá...Extreme Experience 2018 | Estudo de Caso: Aplicação DataSnap para 10.000 usuá...
Extreme Experience 2018 | Estudo de Caso: Aplicação DataSnap para 10.000 usuá...Mario Guedes
 
Extreme Experience 2018 | Python para quem sabe Delphi
Extreme Experience 2018 | Python para quem sabe DelphiExtreme Experience 2018 | Python para quem sabe Delphi
Extreme Experience 2018 | Python para quem sabe DelphiMario Guedes
 
Intensive Delphi 2017 - E este tal de Redis hein?
Intensive Delphi 2017 - E este tal de Redis hein?Intensive Delphi 2017 - E este tal de Redis hein?
Intensive Delphi 2017 - E este tal de Redis hein?Mario Guedes
 
BOT: Conversando com o seu sistema
BOT: Conversando com o seu sistemaBOT: Conversando com o seu sistema
BOT: Conversando com o seu sistemaMario Guedes
 
Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...
Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...
Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...Mario Guedes
 
Extreme 360º 2017 | Arquitetura Extrema: Rumo aos 10.000 usuários
Extreme 360º 2017 | Arquitetura Extrema: Rumo aos 10.000 usuáriosExtreme 360º 2017 | Arquitetura Extrema: Rumo aos 10.000 usuários
Extreme 360º 2017 | Arquitetura Extrema: Rumo aos 10.000 usuáriosMario Guedes
 
Arquitetura escalável e resiliente com NGINX, DataSnap, REDIS e MongoDB
Arquitetura escalável e resiliente com NGINX, DataSnap, REDIS e MongoDBArquitetura escalável e resiliente com NGINX, DataSnap, REDIS e MongoDB
Arquitetura escalável e resiliente com NGINX, DataSnap, REDIS e MongoDBMario Guedes
 
Big data da teoria à prática
Big data  da teoria à práticaBig data  da teoria à prática
Big data da teoria à práticaMario Guedes
 

Mais de Mario Guedes (20)

O que é e como devo usar o REDIS? - 1o Mobile REST Summit
O que é e como devo usar o REDIS? - 1o Mobile REST SummitO que é e como devo usar o REDIS? - 1o Mobile REST Summit
O que é e como devo usar o REDIS? - 1o Mobile REST Summit
 
Fazendo barba, cabelo e bigode com REDIS
Fazendo barba, cabelo e bigode com REDISFazendo barba, cabelo e bigode com REDIS
Fazendo barba, cabelo e bigode com REDIS
 
Integrando-se à Blockchain da Ethereum
Integrando-se à Blockchain da EthereumIntegrando-se à Blockchain da Ethereum
Integrando-se à Blockchain da Ethereum
 
Entendendo HTTP para entender o REST
Entendendo HTTP para entender o RESTEntendendo HTTP para entender o REST
Entendendo HTTP para entender o REST
 
Expressão Regular - Cookbook
Expressão Regular - CookbookExpressão Regular - Cookbook
Expressão Regular - Cookbook
 
Foco no app, viva o serverless!
Foco no app, viva o serverless!Foco no app, viva o serverless!
Foco no app, viva o serverless!
 
Paralelismo na prática: Threads de uma vez por todas e sem medo!
Paralelismo na prática: Threads de uma vez por todas e sem medo!Paralelismo na prática: Threads de uma vez por todas e sem medo!
Paralelismo na prática: Threads de uma vez por todas e sem medo!
 
Escalabilidade com Redis
Escalabilidade com Redis Escalabilidade com Redis
Escalabilidade com Redis
 
Escalando o backend com NGINX e Redis
Escalando o backend com NGINX e RedisEscalando o backend com NGINX e Redis
Escalando o backend com NGINX e Redis
 
Turbinando o seu sistema com Redis!
Turbinando o seu sistema com Redis!Turbinando o seu sistema com Redis!
Turbinando o seu sistema com Redis!
 
Microsserviço, Escalabilidade e Resiliência - #comofas?
Microsserviço, Escalabilidade e Resiliência - #comofas?Microsserviço, Escalabilidade e Resiliência - #comofas?
Microsserviço, Escalabilidade e Resiliência - #comofas?
 
TDCSP - 2018 - Possibilidades com o REDIS no Delphi
TDCSP - 2018 - Possibilidades com o REDIS no DelphiTDCSP - 2018 - Possibilidades com o REDIS no Delphi
TDCSP - 2018 - Possibilidades com o REDIS no Delphi
 
Extreme Experience 2018 | Estudo de Caso: Aplicação DataSnap para 10.000 usuá...
Extreme Experience 2018 | Estudo de Caso: Aplicação DataSnap para 10.000 usuá...Extreme Experience 2018 | Estudo de Caso: Aplicação DataSnap para 10.000 usuá...
Extreme Experience 2018 | Estudo de Caso: Aplicação DataSnap para 10.000 usuá...
 
Extreme Experience 2018 | Python para quem sabe Delphi
Extreme Experience 2018 | Python para quem sabe DelphiExtreme Experience 2018 | Python para quem sabe Delphi
Extreme Experience 2018 | Python para quem sabe Delphi
 
Intensive Delphi 2017 - E este tal de Redis hein?
Intensive Delphi 2017 - E este tal de Redis hein?Intensive Delphi 2017 - E este tal de Redis hein?
Intensive Delphi 2017 - E este tal de Redis hein?
 
BOT: Conversando com o seu sistema
BOT: Conversando com o seu sistemaBOT: Conversando com o seu sistema
BOT: Conversando com o seu sistema
 
Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...
Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...
Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...
 
Extreme 360º 2017 | Arquitetura Extrema: Rumo aos 10.000 usuários
Extreme 360º 2017 | Arquitetura Extrema: Rumo aos 10.000 usuáriosExtreme 360º 2017 | Arquitetura Extrema: Rumo aos 10.000 usuários
Extreme 360º 2017 | Arquitetura Extrema: Rumo aos 10.000 usuários
 
Arquitetura escalável e resiliente com NGINX, DataSnap, REDIS e MongoDB
Arquitetura escalável e resiliente com NGINX, DataSnap, REDIS e MongoDBArquitetura escalável e resiliente com NGINX, DataSnap, REDIS e MongoDB
Arquitetura escalável e resiliente com NGINX, DataSnap, REDIS e MongoDB
 
Big data da teoria à prática
Big data  da teoria à práticaBig data  da teoria à prática
Big data da teoria à prática
 

Geolocalização com Redis e Google Maps

  • 2. Caixa Sobre Mario Guedes: Desenvolvedor Delphi e Python com bancos noSQL a mais de 20 anos. Focado em arquitetura em backend, faz as telas mais feias do mundo. mario@arrayof.io Thiago Filadelfo: Desenvolvedor Mobile e Web a mais de 13 anos com experiência em várias linguagens como Delphi, Java, Kotlin, Swift, Flutter, C#, JavaScript - ufa! thiago@arrayof.io – 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í determinaram dividir um círculo em 360 pedaços, sendo cada pedaço 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. Caraca! Temos um plano cartesiano então! Acertou miseravi! A Linha do Equador é o Eixo X O Meridiano de Greenwich é o Eixo Y A intersecção das duas linhas é o ponto 0 Isso não significa que a Terra é plana hein? Linha do Equador Meridiano de Grennwich
  • 10. E a altitude? É uma informação importante também! Determina 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.: -30.0428357 • Longitude: -51.2188929 • Geohash..: 6fet46zec33q • http://geohash.co
  • 12. Sobre o GPS Cabo 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 Avenida Venâncio Aires, 93, Cidade Baixa, Porto Alegre – RS Latitude.: -30.0428357 Longitude: -51.2188929
  • 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 Cabo 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 para lidar com o assunto
  • 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
  • 21.
  • 22.
  • 23. Frontend – Delphi e Google Maps Cabo Thiago Filadelfo
  • 24. Mobile Temos que criar uma conta para o nosso projeto no Google Cloud. https://console.cloud.google.com/google/maps-apis
  • 25. Google Cloud Criando o projeto DelphiSquad
  • 27. Google Cloud Criando uma credencial para usar depois no projeto
  • 29. Delphi 10.3 New Project |-- Multi-Device Application
  • 32. Delphi 10.3 - TMapView
  • 33. Delphi 10.3 - PinMap
  • 36. Demonstração final Exemplos desta palestra: https://github.com/ArrayOf/DelphiSquad-POA-2019 https://ArrayOf.io
  • 37. ● https://youtu.be/0dvR9I9kK9g ● https://github.com/flrizzato/EmbarcaderoConference/blob/master/2017/WH ATSUP%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_Android) ● 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