Preciso descobrir a limitação do trabalho com a API do Google Maps e as possíveis soluções para fazer comparações espaciais semi-complexas.
O que pretendo alcançar é um sistema de comparação que permita a consulta de polígonos espaciais definidos pelo usuário sobrepostos em um determinado ponto (um endereço residencial).
Basicamente, um restaurante terá uma determinada área de entrega, cujo parâmetro será definido pelas coordenadas geográficas X. Um endereço é representado por um único ponto (x, y).
Fui informado de que o melhor back-end para esse tipo de comparação espacial é o pós-GIS; no entanto, ao revisar os termos e condições definidos pela API do Google Maps, não está claro se você tem permissão para armazenar a resposta geocoordenada que o Google fornece.
http://code.google.com/apis/maps/terms.html
10.1.3 - Por exemplo, você não deve usar o Conteúdo para criar um banco de dados independente de "locais". ... ainda,
.. exceto que você pode armazenar: (i) quantidades limitadas de conteúdo com o objetivo de melhorar o desempenho da implementação da API do Google Maps, se o fizer temporariamente, com segurança e de uma maneira que não permita o uso do conteúdo fora do Serviço
Minhas perguntas são :
Alguém já teve alguma experiência trabalhando com polígonos espaciais e com o Google Fusion Tables?
Alguém já teve experiência em trabalhar com a API do Google Places, isso permite esses tipos de comparações?
Como as coordenadas geográficas estão sendo capturadas quando um mapa do Google é exibido e armazenadas para serem usadas em conjunto com um mapa do Google mais completo, isso se enquadra nos "termos de uso" estabelecidos pelo Google?
Estou muito interessado em usar o Google Maps, com a perspectiva de assinar o serviço premium, devido ao sucesso do meu aplicativo. Alguém já teve experiência com esses tipos de cálculos, há algo que estou perdendo?
fonte
Respostas:
Não tenho experiência com a API do Google Places, mas tenho alguma experiência com a API do Google Maps e o Google Fusion Tables.
Quando você carrega uma tabela em uma tabela do Fusion, ela pode incluir tabelas com um elemento espacial (geometria) como KMLs ou shapefiles (embora você precise usar uma conversão para obter um shapefile diretamente em uma tabela do Fusion). Uma vez lá, você pode atribuir simbologias e recursos pop-up. O Fusion Tables suporta pontos, linhas e polígonos.
As camadas da tabela de fusão são trazidas para a API do Google Maps por comandos javascript. Você também pode configurar funções de consulta para o Fusion Tables usando javascript. Você pode consultar praticamente qualquer um dos campos encontrados em uma tabela do Fusion. Por exemplo, você pode ter um índice html no qual seleciona uma consulta em uma camada específica da Fusion Table e exibe os resultados dessa consulta.
Se você planeja criar / desenhar recursos dinamicamente em uma API do Google Maps, não sei como será necessário escrever seu javascript para extraí-lo ou interagir com as camadas do Fusion Table.
Também não tenho certeza se o que você deseja realizar de alguma forma viola os termos de uso. Parece que você deseja usar o serviço de geocodificação do Google, mas não conheço as limitações.
De qualquer forma, espero que isso ajude a responder a algumas de suas perguntas. Felizmente, alguns outros que estão mais familiarizados com as outras perguntas podem responder mais completamente.
Edit: Acabei de encontrar este link / discussão sobre a consulta do Fusion Tables que pode ser útil.
http://googlegeodevelopers.blogspot.com/2010/11/search-your-geo-data-using-spatial.html
fonte