Baixe o app para aproveitar ainda mais
Prévia do material em texto
TRIPULAÇÃO Rene Rubalcava www.it-ebooks.info Desenvolvimento Web ArcGIS www.it-ebooks.info ii www.it-ebooks.info Desenvolvimento Web ArcGIS RENE Rubalcava MANN I NG S HELTER Eu slandS HELTER Eu slandS HELTER Eu slandS HELTER Eu sland www.it-ebooks.info Para obter informações on-line e ordenação deste e de outros livros Manning, visite www.manning.com . O editor oferece descontos sobre este livro quando ordenou em quantidade. Para mais informações por favor www.manning.com . O editor oferece descontos sobre este livro quando ordenou em quantidade. Para mais informações por favor entre em contato Departamento de Vendas Especiais Manning Publications Co. 20 Baldwin Road PO Box 261 Shelter Island, NY 11964 E-mail: orders@manning.com © 2015 Manning Publications Co. Todos os direitos reservados. Nenhuma parte desta publicação pode ser reproduzida, armazenada num sistema de recuperação, ou transmitida, em qualquer forma ou por meios electrónicos, mecânicos, fotocópia, ou de outra forma, sem a autorização prévia do editor. Muitas das designações usadas por fabricantes e vendedores para distinguir seus produtos são marcas registradas. Onde essas designações aparecem no livro, e Manning Publications estava ciente de uma reivindicação de marca registrada, as designações foram impressos em letras maiúsculas iniciais ou todos os tampões. Reconhecendo a importância de preservar o que foi escrito, é política da Manning de ter os livros que publicamos impressos em papel sem ácido, e nós exercemos nossos melhores esforços para esse fim. Reconhecendo também a nossa responsabilidade de conservar os recursos do nosso planeta, livros Manning são impressos em papel que é pelo menos 15 por cento reciclado e processado sem cloro elementar. Manning Publications Co. editor de desenvolvimento: Susan Conant 20 Baldwin Estrada editor desenvolvimento técnico: Florian Lengyel PO Box 261 revisor técnico: Brian Arnold Shelter Island, NY 11964 Copyeditors: Lianna Wlasiuk, Katie Petito Revisor: Melody Dolab Typesetter: Marija Tudor Cover Designer: Marija Tudor ISBN: 9781617291616 Impresso nos Estados Unidos da América 1 2 3 4 5 6 7 8 9 10 - MAL - 19 18 17 16 15 14 www.it-ebooks.info v breves conteúdo P ARTE 1 Um RC GIS J AVA S CRIPT F OUNDATION .............................. 1P ARTE 1 Um RC GIS J AVA S CRIPT F OUNDATION .............................. 1P ARTE 1 Um RC GIS J AVA S CRIPT F OUNDATION .............................. 1P ARTE 1 Um RC GIS J AVA S CRIPT F OUNDATION .............................. 1P ARTE 1 Um RC GIS J AVA S CRIPT F OUNDATION .............................. 1P ARTE 1 Um RC GIS J AVA S CRIPT F OUNDATION .............................. 1P ARTE 1 Um RC GIS J AVA S CRIPT F OUNDATION .............................. 1P ARTE 1 Um RC GIS J AVA S CRIPT F OUNDATION .............................. 1P ARTE 1 Um RC GIS J AVA S CRIPT F OUNDATION .............................. 1P ARTE 1 Um RC GIS J AVA S CRIPT F OUNDATION .............................. 1P ARTE 1 Um RC GIS J AVA S CRIPT F OUNDATION .............................. 1P ARTE 1 Um RC GIS J AVA S CRIPT F OUNDATION .............................. 1 1 ■ GIS como uma ferramenta 31 ■ GIS como uma ferramenta 31 ■ GIS como uma ferramenta 3 2 ■ 2 ■ Apresentando conceitos API do núcleo 17 3 ■ Trabalhando com a API REST 453 ■ Trabalhando com a API REST 453 ■ Trabalhando com a API REST 45 P ARTE 2 S AMPLO você SE C ASE .................................................. ... 65P ARTE 2 S AMPLO você SE C ASE .................................................. ... 65P ARTE 2 S AMPLO você SE C ASE .................................................. ... 65P ARTE 2 S AMPLO você SE C ASE .................................................. ... 65P ARTE 2 S AMPLO você SE C ASE .................................................. ... 65P ARTE 2 S AMPLO você SE C ASE .................................................. ... 65P ARTE 2 S AMPLO você SE C ASE .................................................. ... 65P ARTE 2 S AMPLO você SE C ASE .................................................. ... 65P ARTE 2 S AMPLO você SE C ASE .................................................. ... 65P ARTE 2 S AMPLO você SE C ASE .................................................. ... 65 4 ■ Construção de uma aplicação 674 ■ Construção de uma aplicação 674 ■ Construção de uma aplicação 67 5 ■ Desenvolver um aplicativo personalizado de recolha de dados 1015 ■ Desenvolver um aplicativo personalizado de recolha de dados 1015 ■ Desenvolver um aplicativo personalizado de recolha de dados 101 6 ■ Construindo um aplicativo navegador de desktop 1356 ■ Construindo um aplicativo navegador de desktop 1356 ■ Construindo um aplicativo navegador de desktop 135 7 ■ técnicas avançadas 1757 ■ técnicas avançadas 1757 ■ técnicas avançadas 175 www.it-ebooks.info vi www.it-ebooks.info vii conteúdo prefaciar reconhecimentos xi xiii sobre este livro xiv P ARTE 1 Um RC GIS J AVA S CRIPT F OUNDATION .................. 1P ARTE 1 Um RC GIS J AVA S CRIPT F OUNDATION .................. 1P ARTE 1 Um RC GIS J AVA S CRIPT F OUNDATION .................. 1P ARTE 1 Um RC GIS J AVA S CRIPT F OUNDATION .................. 1P ARTE 1 Um RC GIS J AVA S CRIPT F OUNDATION .................. 1P ARTE 1 Um RC GIS J AVA S CRIPT F OUNDATION .................. 1P ARTE 1 Um RC GIS J AVA S CRIPT F OUNDATION .................. 1P ARTE 1 Um RC GIS J AVA S CRIPT F OUNDATION .................. 1P ARTE 1 Um RC GIS J AVA S CRIPT F OUNDATION .................. 1P ARTE 1 Um RC GIS J AVA S CRIPT F OUNDATION .................. 1P ARTE 1 Um RC GIS J AVA S CRIPT F OUNDATION .................. 1P ARTE 1 Um RC GIS J AVA S CRIPT F OUNDATION .................. 1 1 GIS como uma ferramenta 31 GIS como uma ferramenta 3 1.1 GIS: aqui, ali, em toda parte 4 O ferramentas de SIG paisagem 4 ■ Apresentando a plataforma ArcGIS 6 ■ Por que O ferramentas de SIG paisagem 4 ■ Apresentando a plataforma ArcGIS 6 ■ Por que O ferramentas de SIG paisagem 4 ■ Apresentando a plataforma ArcGIS 6 ■ Por que O ferramentas de SIG paisagem 4 ■ Apresentando a plataforma ArcGIS 6 ■ Por que O ferramentas de SIG paisagem 4 ■ Apresentando a plataforma ArcGIS 6 ■ Por que se preocupam com aplicações espaciais? 7 tendências na indústria de GIS 8 1.2 Compreender os bits 9 GIS O que e a onde de dados GIS 10 ■ Servindo de dados GIS: ArcGIS Server e a O que e a onde de dados GIS 10 ■ Servindo de dados GIS: ArcGIS Server e a O que e a onde de dados GIS 10 ■ Servindo de dados GIS: ArcGIS Server e a API REST 11 ■ Escolhendo um web API ArcGIS 12API REST 11 ■ Escolhendo um web API ArcGIS 12API REST 11 ■ Escolhendo um web API ArcGIS 12 1.3 Coisas para saber 13 JavaScript, Dojo Toolkit, e Dijit 13 ■ Introduzindo um pouco de SIG 14 ■ Interagindo JavaScript, Dojo Toolkit, e Dijit 13 ■ Introduzindo um pouco de SIG 14 ■ Interagindo JavaScript, Dojo Toolkit, e Dijit 13 ■ Introduzindo um pouco de SIG 14 ■ Interagindo JavaScript, Dojo Toolkit, e Dijit 13 ■ Introduzindo um pouco de SIG 14 ■ Interagindo JavaScript, Dojo Toolkit, e Dijit 13 ■ Introduzindo um pouco de SIG 14 ■ Interagindo com a API do ArcGIS RESTO 15 1.4 Resumo 15 www.it-ebooks.info CONTEÚDOviii 2 Apresentando conceitos API do núcleo 172 Apresentando conceitos API do núcleo 17 2.1 A partir de dados para mapear 18 Partes de um mapa básico 19 ■ Especificando opções de mapa comuns 22Partes de um mapa básico 19 ■ Especificando opções de mapa comuns 22Partes de um mapa básico 19 ■ Especificando opções de mapa comuns 22 2.2 Entendendo camadas e acessar dados 24 tipos de camada de dados baseados em raster 25 ■ tipos de camada de dados tipos de camada de dados baseados em raster 25 ■ tipos de camada de dados tipos de camada de dados baseados em raster 25 ■ tipos de camada de dados vectorbased 27 ■ Conhecer os criação de gráficos GraphicsLayer 28 com a vectorbased 27 ■ Conhecer os criação de gráficos GraphicsLayer 28 com a vectorbased 27 ■ Conhecer os criação de gráficosGraphicsLayer 28 com a QueryTask 30 2,3 Trabalhando com o FeatureLayer 35 Vantagens de um FeatureLayer 36 ■ Criando um FeatureLayer 38 ■ Otimizando 39 Vantagens de um FeatureLayer 36 ■ Criando um FeatureLayer 38 ■ Otimizando 39 Vantagens de um FeatureLayer 36 ■ Criando um FeatureLayer 38 ■ Otimizando 39 Vantagens de um FeatureLayer 36 ■ Criando um FeatureLayer 38 ■ Otimizando 39 Vantagens de um FeatureLayer 36 ■ Criando um FeatureLayer 38 ■ Otimizando 39 o desempenho do aplicativo selecionando os itens nos FeatureLayer 42 2.4 Resumo 44 3 Trabalhando com a API REST 453 Trabalhando com a API REST 45 3.1 Apresentando a API ArcGIS Server RESTO 47 Explorando como a API funciona 47 ■ Interagir com as páginas do ArcGIS Server 49Explorando como a API funciona 47 ■ Interagir com as páginas do ArcGIS Server 49Explorando como a API funciona 47 ■ Interagir com as páginas do ArcGIS Server 49 3.2 Construir o seu próprio widget 52 Construir o menu lenda raiz 52 ■ Recuperando detalhes da legenda 53 ■ Exibindo Construir o menu lenda raiz 52 ■ Recuperando detalhes da legenda 53 ■ Exibindo Construir o menu lenda raiz 52 ■ Recuperando detalhes da legenda 53 ■ Exibindo Construir o menu lenda raiz 52 ■ Recuperando detalhes da legenda 53 ■ Exibindo Construir o menu lenda raiz 52 ■ Recuperando detalhes da legenda 53 ■ Exibindo detalhes no widget lenda personalizada 54 ■ Trabalhar com vários símbolos em um detalhes no widget lenda personalizada 54 ■ Trabalhar com vários símbolos em um detalhes no widget lenda personalizada 54 ■ Trabalhar com vários símbolos em um recurso 55 3,3 Trabalhando com o serviço geometria 56 Tamponar o seu coração 56 ■ Tampão e seleccionar 59 tampão e 61 Tamponar o seu coração 56 ■ Tampão e seleccionar 59 tampão e 61 Tamponar o seu coração 56 ■ Tampão e seleccionar 59 tampão e 61 intersectam 3.4 Resumo 64 P ARTE 2 S AMPLO você SE C ASE .......................................... 65P ARTE 2 S AMPLO você SE C ASE .......................................... 65P ARTE 2 S AMPLO você SE C ASE .......................................... 65P ARTE 2 S AMPLO você SE C ASE .......................................... 65P ARTE 2 S AMPLO você SE C ASE .......................................... 65P ARTE 2 S AMPLO você SE C ASE .......................................... 65P ARTE 2 S AMPLO você SE C ASE .......................................... 65P ARTE 2 S AMPLO você SE C ASE .......................................... 65P ARTE 2 S AMPLO você SE C ASE .......................................... 65P ARTE 2 S AMPLO você SE C ASE .......................................... 65 4 Construção de uma aplicação 674 Construção de uma aplicação 67 4.1 O que você está indo para construir? 68 Usando um tablet ou telefone 69 ■ Os pontos de recolha 69 Realizando Usando um tablet ou telefone 69 ■ Os pontos de recolha 69 Realizando Usando um tablet ou telefone 69 ■ Os pontos de recolha 69 Realizando edição desconectado 69 4.2 Trabalhando com ArcGIS Online 70 ArcGIS Online vs. ArcGIS Server 70 ■ A criação de uma conta do ArcGIS Online 71 ■ Definindo ArcGIS Online vs. ArcGIS Server 70 ■ A criação de uma conta do ArcGIS Online 71 ■ Definindo ArcGIS Online vs. ArcGIS Server 70 ■ A criação de uma conta do ArcGIS Online 71 ■ Definindo ArcGIS Online vs. ArcGIS Server 70 ■ A criação de uma conta do ArcGIS Online 71 ■ Definindo ArcGIS Online vs. ArcGIS Server 70 ■ A criação de uma conta do ArcGIS Online 71 ■ Definindo um serviço de recurso de 72 Acessando o serviço de recurso ArcGIS Online 77 www.it-ebooks.info CONTEÚDO ix 4.3 A construção de uma aplicação no mundo real 77 Configurando Dojo e organização de módulos de 78 ■ Amarrando a aplicação em Configurando Dojo e organização de módulos de 78 ■ Amarrando a aplicação em Configurando Dojo e organização de módulos de 78 ■ Amarrando a aplicação em conjunto 83 4.4 Adição de camadas e usando o processador 87 Adicionando camadas com um módulo 87 ■ Usando o processador 90 Aplicando o Adicionando camadas com um módulo 87 ■ Usando o processador 90 Aplicando o Adicionando camadas com um módulo 87 ■ Usando o processador 90 Aplicando o renderizador 91 ■ Configurar as ferramentas de edição 92 Atribuindo uma ação a um renderizador 91 ■ Configurar as ferramentas de edição 92 Atribuindo uma ação a um renderizador 91 ■ Configurar as ferramentas de edição 92 Atribuindo uma ação a um botão 95 4.5 Resumo 99 5 Desenvolver um aplicativo personalizado de recolha de dados 1015 Desenvolver um aplicativo personalizado de recolha de dados 101 5.1 Realizando mapa web padrão edição 102 Encontrar informações sobre o serviço recurso 104 ■ Adicionando o serviço de recurso para o Encontrar informações sobre o serviço recurso 104 ■ Adicionando o serviço de recurso para o Encontrar informações sobre o serviço recurso 104 ■ Adicionando o serviço de recurso para o mapa 105 ■ Adicionando os TemplatePicker e editor padrão de widgets 109mapa 105 ■ Adicionando os TemplatePicker e editor padrão de widgets 109mapa 105 ■ Adicionando os TemplatePicker e editor padrão de widgets 109 5.2 Construir uma ferramenta de edição personalizado 113 Trabalhando com a funcionalidade de edição personalizado 114 ■ Refinando a ferramenta de edição Trabalhando com a funcionalidade de edição personalizado 114 ■ Refinando a ferramenta de edição Trabalhando com a funcionalidade de edição personalizado 114 ■ Refinando a ferramenta de edição personalizado 120 5.3 Activar edição desconectado 125 O armazenamento local 126 ■ avisos 134 ■ Outras opções de armazenamento 134O armazenamento local 126 ■ avisos 134 ■ Outras opções de armazenamento 134O armazenamento local 126 ■ avisos 134 ■ Outras opções de armazenamento 134O armazenamento local 126 ■ avisos 134 ■ Outras opções de armazenamento 134O armazenamento local 126 ■ avisos 134 ■ Outras opções de armazenamento 134 5.4 Resumo 134 6 Construindo um aplicativo navegador de desktop 1356 Construindo um aplicativo navegador de desktop 135 6.1 O projeto frente 136 Objectivos do RequestViewer 136 ■ Liberdade de navegador no desktop 136Objectivos do RequestViewer 136 ■ Liberdade de navegador no desktop 136Objectivos do RequestViewer 136 ■ Liberdade de navegador no desktop 136 6.2 Instalação e configuração do RequestViewer 138 Criando index.html 138 ■ Configurando run.js 138 Iniciando o RequestViewer 139 ■ Criando index.html 138 ■ Configurando run.js 138 Iniciando o RequestViewer 139 ■ Criando index.html 138 ■ Configurando run.js 138 Iniciando o RequestViewer 139 ■ Criando index.html 138 ■ Configurando run.js 138 Iniciando o RequestViewer 139 ■ Definindo serviços de mapas 140 Configurar o controlador de aplicação 140 6.3 Criação de autenticação com o OAuth 2.0 142 Usando sua conta de desenvolvedor para criar um aplicativo 142 Atualização main.js 145 ■ Salvando as credenciais 146main.js 145 ■ Salvando as credenciais 146main.js 145 ■ Salvando as credenciais 146 6.4 Construção da interface de utilizador 152 Trabalhando com o widget de medição 152 ■ Trabalhando com o widget Trabalhando com o widget de medição 152 ■ Trabalhando com o widget Trabalhando com o widget de medição 152 ■ Trabalhando com o widget BasemapToggle 157 www.it-ebooks.info CONTEÚDOX 6.5 Edição solicita 159 Editar a localização de um pedido 159 ■ Edição de atributos de um pedido de 163 ■ Incorporando Editar a localização de um pedido 159 ■ Edição de atributos de um pedido de 163 ■ Incorporando Editar a localização de um pedido 159 ■ Edição de atributos de um pedido de 163 ■ Incorporando Editar a localização de um pedido 159 ■ Edição de atributos de um pedido de 163 ■ Incorporando Editar a localização de um pedido 159 ■ Edição de atributos de um pedido de 163 ■ Incorporando um serviço não espacial 168 6.6 Resumo 173 7 técnicas avançadas 1757 técnicas avançadas 175 7.1 Usando um arquivo de configuração único 176 Definindo um mapa 176 ■ Carregando o widget Geocoder 180 Olhando para os Definindo um mapa 176 ■ Carregando o widget Geocoder 180 Olhando para os Definindo um mapa176 ■ Carregando o widget Geocoder 180 Olhando para os padrões 182 7,2 widget de carga dinâmico 182 caminho widget e opções 182 ■ Construindo um carregador Widget 183 Testando o caminho widget e opções 182 ■ Construindo um carregador Widget 183 Testando o caminho widget e opções 182 ■ Construindo um carregador Widget 183 Testando o carregador Widget 185 ■ Adicionando elementos HTML 186carregador Widget 185 ■ Adicionando elementos HTML 186carregador Widget 185 ■ Adicionando elementos HTML 186 7.3 Adicionando um mapa da web 189 Criando o mapa web 189 ■ Adicionando o mapa da web para uma aplicação 193 ■ Usando Criando o mapa web 189 ■ Adicionando o mapa da web para uma aplicação 193 ■ Usando Criando o mapa web 189 ■ Adicionando o mapa da web para uma aplicação 193 ■ Usando Criando o mapa web 189 ■ Adicionando o mapa da web para uma aplicação 193 ■ Usando Criando o mapa web 189 ■ Adicionando o mapa da web para uma aplicação 193 ■ Usando a especificação mapa da web 197 7.4 As técnicas avançadas de modo offline 204 Criando um cache de aplicativo 204 ■ Armazenar dados localmente com a biblioteca Criando um cache de aplicativo 204 ■ Armazenar dados localmente com a biblioteca Criando um cache de aplicativo 204 ■ Armazenar dados localmente com a biblioteca PouchDB 208 7.5 Resumo 214 Apêndice A: Configurando o ambiente de 215 Apêndice B: Dojo básico 217 Apêndice C: Configurando um proxy 225 índice 227 www.it-ebooks.info XI prefácio A última década assistiu a um boom de pessoas se tornar aclimatados a tecnologia de localização. A maioria dos usuários podem não perceber plenamente que eles estão usando tecnologia de localização quando receber um alerta em seu telefone que não há tráfego no caminho de casa, ou quando eles obter um cupom de um aplicativo em seu telefone para um restaurante local. telefones inteligentes não são mais simplesmente dispositivos para fazer chamadas telefônicas, mensagens de texto, e verificar e-mail. Para muitas pessoas, eles não só tenha substituído o livro mapa pesado e desajeitado que seu passageiro usado para ajudá-lo a navegar, mas esses “telefones” também têm substituído os sistemas indash GPS caros em nossos veículos. É tão fácil hoje para dizer o nome de uma loja ou local em seu telefone, e em segundos receber turn-by-turn. Isso não quer dizer que essas orientações não pode tentar direcioná-lo para um lago, mas não há como negar que a tecnologia de localização tornou-se parte de nossas vidas diárias. Temos o prazer de compartilhar nossos locais atuais com amigos e familiares com tanto fervor como quando compartilhou uma foto de alguns anos atrás. Mapas e as informações que eles podem transmitir são ótimas ferramentas que os desenvolvedores devem ter tempo para aprender a usar. Alguns anos atrás, eu estava encarregado de atualizar um aplicativo GIS corporativo e trazê-lo para a era do mainframe não-moderna. Esri tinha acabado de começar liberando Web APIs para uso com sua tecnologia. Na época, eu construí a minha candidatura com a API do Flex, e eu mergulhou fundo no mundo do ActionScript e desenvolvimento modular Flex, mas sempre me senti um pouco pesada. Com o tempo, a Esri JavaScript API tornou-se mais atraente. Ele teve um desempenho melhor a cada lançamento e ofereceu novos recursos que trabalharam com as últimas atualizações do ArcGIS Server. Em algum momento, meu foco mudou inteiramente de desenvolvimento Flex para JavaScript, e eu mergulhei em cada canto e recanto da API. www.it-ebooks.info PREFÁCIOxii Eu tive o prazer ao longo dos anos de construção de inúmeras aplicações com a API do ArcGIS para JavaScript, mesmo construir um negócio em torno de criar aplicativos de mapeamento da web. Tentei seguir cada corcunda aprendizagem com um blog ou uma apresentação para compartilhar o que eu aprendi. Esta é a minha maneira de pagá-lo frente-pagá-lo para a frente para todos os posts que passou noites final cavar através de, simplesmente para corrigir alguns bugs estranhos ou resolver um problema que eu estava pronto para desistir, e para todas as apresentações que eu participou que me inspirou para construir e aprender, para criar ferramentas úteis e aplicações, e se esforçar para aprender o que eu nem sabia que eu queria ou precisava aprender. Este livro reúne o conhecimento que eu ganhei e coloca tudo em um só lugar. Eu espero que você goste de ler este livro tanto quanto eu tinha de escrevê-lo. Eu também espero que você tome as bases estabelecidas aqui para explorar o que pode fazer com o mapeamento web com a API do ArcGIS para JavaScript e construir algumas coisas muito legais. Porque, como desenvolvedores, não é isso que todos nós queremos fazer? Basta construir. www.it-ebooks.info xiii reconhecimentos Há muitas pessoas para agradecer, sem cuja ajuda e apoio este livro não teria sido possível. Eu gostaria de agradecer as pessoas no Esri que me forneceram com grande feedback sobre o assunto: Jim Barry, Derek Swingley, Andy Gup, Jeremy Bartley, e todos na API JavaScript e equipe de servidores que respondeu uma das minhas numerosas perguntas. Graças à Early Access Program Manning (MEAP) leitores que postaram comentários e correções no fórum on-line Autor. Obrigado também a todos os usuários que forneceram feedbacks: Adam Krein, Alexander Jones, Andrea Tarocchi, Brandon Tito, Cliff Zhao, David Takahashi, Dennis Sellinger, Jaclynn Wilson, Shaun Langley, Tim Djossou e Vidyasagar Nallapati. Eu gostaria de agradecer a toda a equipe editorial Manning por me ajudar a cada passo do caminho ao escrever este livro. Meu editor de desenvolvimento, Susan Conant, me ajudou a debater ideias para este livro e foi rápido para responder a todas as minhas perguntas e me mostre como ensinar, não conte. Brian Arnold, revisor técnico, desde a orientação técnica incrivelmente completa na revisão do código para este livro. Eu também gostaria de agradecer aos meus pais por sempre acreditar em mim e me apoiar quando eu precisava dele mais. Um agradecimento especial à minha esposa Zenayda, que tem sido a minha rocha desde que nos conhecemos, e que me empurra para ser melhor em uma base diária. Obrigado aos meus três filhas Andrea, Zoe, e Abbey Rosa, que me ensinaram a paciência que só um pai de filhas pudessem entender. www.it-ebooks.info xiv sobre este livro A API do ArcGIS para JavaScript é uma biblioteca construída para trabalhar lado a lado com as tecnologias ArcGIS Server. Ele foi projetado para fornecer uma ampla gama de ferramentas que permitem que um desenvolvedor para construir tudo, desde a mais simples aplicação web-mapeamento para uma ferramenta muito utilizada e rica em recursos. O que você decidir construir é até você e as necessidades de seus usuários, mas tem sido minha experiência que a API do ArcGIS para JavaScript pode atender a maioria das expectativas. Este livro, ArcGIS Desenvolvimento Web, é uma introdução à API do ArcGIS para JavaScript, com um pouco de Este livro, ArcGIS Desenvolvimento Web, é uma introdução à API do ArcGIS para JavaScript, com um pouco de Este livro, ArcGIS Desenvolvimento Web, é uma introdução à API do ArcGIS para JavaScript, com um pouco de informação extra acionada para levá-lo até a velocidade com o Dojo Toolkit que a API é construído. Há uma variedade de bibliotecas de mapeamento da web disponíveis, ea API do ArcGIS para JavaScript é projetado para tirar vantagem da tecnologia fornecida pelo ArcGIS Server e ArcGIS Online, os quais serão discutidos neste livro. Roteiro Desenvolvimento Web ArcGIS é dividido em duas partes: “ArcGIS JavaScript Foundation” e “Uma amostra de Caso de Desenvolvimento Web ArcGIS é dividido em duas partes: “ArcGIS JavaScript Foundation” e “Uma amostra de Caso de Uso” Se você já está familiarizado com GIS e só quero aprender a usar a API do ArcGIS para JavaScript, você pode ser tentado a pular Parte 1 inteiramente . Eu recomendo fortemente, porém, que você pelo menos se familiarizar como capítulo 3, que abrange o ArcGIS API REST. A primeira parte do livro é uma introdução a alguns conceitos fundamentais de GIS e termos usados ao longo do livro. Até o final da parte 1, você terá uma compreensão sólida da API ArcGIS Server REST, que é a força motriz para tecnologias web ArcGIS e conceitos fundamentais da API do ArcGIS para JavaScript. www.it-ebooks.info SOBRE ESTE LIVRO xv ■ No capítulo 1, você vai aprender como GIS pode ser usado como uma ferramenta e a importância das aplicações espaciais. ■ No capítulo 2, você vai construir o seu primeiro mapa e aprender as noções básicas de dados espaciais e como consultar esses dados. ■ No capítulo 3, você vai aprender o básico da API ArcGIS Server REST e ser dada uma amostra de como usá-lo para construir um widget lenda personalizado. Este é também o primeiro mergulho em usar o sistema de carregamento Dojo AMD. A segunda parte do livro percorre um aplicativo de coleta de campo da amostra, que também fornece algumas dicas sobre edição desconectados para aplicações móveis. Na parte 2 você vai aprender como estruturar uma aplicação escalável, construir uma aplicação datacollection móvel-friendly, e até mesmo aprender algumas técnicas avançadas para edição desconectada: ■ No capítulo 4, você poderá configurar uma conta do ArcGIS Online e aprender a usar Dojo para construir sua aplicação. ■ No capítulo 5, você vai aprender a editar recursos no mapa e usar a autenticação para garantir a sua aplicação, bem como a forma como você pode usar LocalStorage para permitir a edição desconectado. ■ No capítulo 6, você vai se concentrar em construir um aplicativo para uso em um navegador de desktop, libertando-o de algumas limitações de um ambiente móvel. Você também vai aprender a usar o OAuth 2.0 com ArcGIS Online e armazenar suas credenciais para permitir aos usuários entrar e sair. Este capítulo também aborda como integrar os dados coletados em campo com alguns dados não-espaciais. ■ No capítulo 7, você será introduzido para temas e técnicas mais avançadas. Você vai aprender sobre a especificação ArcGIS WebMap e como usá-lo para configurar o seu mapa. Você também vai aprender como construir seu aplicativo inteiro de um único arquivo JSON que irá configurar os seus widgets para você. Este capítulo também irá descrever uma alternativa para edição desconectado usando uma biblioteca chamada PouchDB. Finalmente, existem três apêndices que contêm informações de apoio. Apêndice A fornece algumas opções de ambiente de desenvolvimento disponíveis para escrever e executar o código neste livro. Apêndice B é provavelmente o apêndice mais valiosa neste livro, uma vez que abrange conceitos básicos do Dojo Toolkit que são indispensáveis para o uso da API do ArcGIS para JavaScript. Convenções de código e downloads Todo o código fonte em listas ou de texto está em uma fonte de largura fixa como este para separá-lo do texto comum. Todo o código fonte em listas ou de texto está em uma fonte de largura fixa como este para separá-lo do texto comum. Todo o código fonte em listas ou de texto está em uma fonte de largura fixa como este para separá-lo do texto comum. anotações de código acompanham muitas das listagens, destacando conceitos importantes. Em alguns casos, balas numeradas conectar-se a explicações que seguem a listagem. www.it-ebooks.info SOBRE ESTE LIVROxvi O código-fonte para os exemplos no livro pode ser baixado do site da editora em www.manning.com/ArcGISWebDevelopmentO código-fonte para os exemplos no livro pode ser baixado do site da editora em www.manning.com/ArcGISWebDevelopment . Autor on-line Compra de Desenvolvimento Web ArcGIS inclui acesso gratuito a um fórum web privada dirigida por Manning Compra de Desenvolvimento Web ArcGIS inclui acesso gratuito a um fórum web privada dirigida por Manning Compra de Desenvolvimento Web ArcGIS inclui acesso gratuito a um fórum web privada dirigida por Manning Publications, onde você pode fazer comentários sobre o livro, fazer perguntas técnicas e receber ajuda de autor e de outros usuários. Para acessar o fórum e subscrevê-lo, aponte seu navegador da Web para Desenvolvimento outros usuários. Para acessar o fórum e subscrevê-lo, aponte seu navegador da Web para Desenvolvimento www.manning.com/ArcGISWeb . Esta página fornece informações sobre como obter no fórum uma vez que você www.manning.com/ArcGISWeb . Esta página fornece informações sobre como obter no fórum uma vez que você está registrado, que tipo de ajuda está disponível, e as regras de conduta no fórum. O compromisso da Manning para os nossos leitores é fornecer um local onde um diálogo significativo entre leitores individuais e entre leitores e o autor pode ter lugar. Não é um compromisso com qualquer quantidade específica de participação por parte do autor, cuja contribuição para o fórum do livro continua a ser voluntária (e não remunerado). Sugerimos que você tente perguntar-lhe algumas perguntas desafiadoras, para que as suas estáticas de juros! O Autor fórum on-line e os arquivos de discussões anteriores será acessível a partir do site do autor, desde que o livro é publicado. Sobre a ilustração da capa A figura na capa de Desenvolvimento Web ArcGIS é subtitulado “La Demoiselle de Compagnie”, uma jovem que A figura na capa de Desenvolvimento Web ArcGIS é subtitulado “La Demoiselle de Compagnie”, uma jovem que A figura na capa de Desenvolvimento Web ArcGIS é subtitulado “La Demoiselle de Compagnie”, uma jovem que serve como um companheiro para uma mulher mais velha e mais wellto-do da aristocracia ou burguesia; ou como um acompanhante para uma mulher jovem, solteira, que não podia sair desacompanhado. A ilustração é tirado de uma edição do compêndio de quatro volumes de Sylvain Maréchal de costumes vestido regional publicados na França do século XIX. Cada ilustração é finamente desenhadas e coloridas à mão. A rica variedade da coleção de Maréchal nos lembra vividamente de como culturalmente distintos cidades e regiões do mundo eram apenas 200 anos atrás. Isolados uns dos outros, as pessoas falavam diferentes dialetos e línguas. Nas ruas ou no campo, era fácil identificar onde viviam eo que seu comércio ou estação na vida era apenas por seu vestido. Os códigos de vestuário mudaram desde então ea diversidade por região, tão rica no momento, desapareceu. Agora, é difícil distinguir os habitantes de diferentes continentes, e muito menos diferentes cidades ou regiões. Talvez tenhamos negociado diversidade cultural para um pessoal mais variada vida certamente-para uma vida tecnológico mais variada e acelerado. Numa altura em que é difícil distinguir um livro de computador de outro, Manning celebra a criatividade e iniciativa do negócio de computadores com capas de livros baseados na rica diversidade da vida regional dos dois séculos atrás, trouxe de volta à vida por fotos de Maréchal. www.it-ebooks.info Parte 1 ArcGIS JavaScript Fundação P arte um deste livro apresenta alguns dos principais conceitos de GIS e termos usados ao longo do P arte um deste livro apresenta alguns dos principais conceitos de GIS e termos usados ao longo do livro. Até o final desta parte, você terá uma compreensão sólida da API ArcGIS Server REST, que é a força motriz para tecnologias web ArcGIS e conceitos fundamentais da API do ArcGIS para JavaScript, bem como a forma como os dados espaciais são fornecidos para web aplicações: ■ No capítulo 1, você aprenderá como usar o GIS como ferramenta e a importância das aplicações espaciais. ■ No capítulo 2, você vai construir o seu primeiro mapa e aprender as noções básicas de dados espaciais e como consultar esses dados. Você também vai aprender os detalhes de como um FeatureLayer funciona e como ele é otimizado para desempenho. ■ No capítulo 3, você vai aprender o básico da API ArcGIS Server REST e ser dada uma amostra de como usá-lo para construir um widget lenda personalizado. Este étambém o primeiro mergulho em usar o sistema de carregamento Dojo AMD e modularizing sua aplicação. www.it-ebooks.info 2 C APÍTULO www.it-ebooks.info 3 GIS como uma ferramenta Onde estamos, e nossa compreensão da localização, tem um impacto sobre nossas vidas diárias. Caminhe em torno de quase qualquer espaço público e você verá as pessoas olhando para seus smartphones, atualizando seus status, ou que procuram o mais próximo taco joint. Você pode ter comprado para uma casa online, e foi capaz de ver as casas em sua área e até mesmo ver as escolas próximas. Ao comprar um carro em linha, normalmente você pode limitar a pesquisa a dentro tantas milhas de um código postal. Anteriormente, um livro mapa papel essencial em todos os veículos, mas hoje, os motoristas manter um GPS (Sistema de Posicionamento Global) no painel ou ter um sistema que lhes fala, direcionando-os quando virar. Se você está seguindo as instruções em papel, as chances são que você imprimiu-los a partir de um mapa online. Localização tornou-se um componente chave da nossa forma de obter muitas tarefas feito. Este capítulo cobre ■ O que um sistema de informação geográfica (GIS) é e como ele é usado ■ A importância das aplicações espaciais ■ Tendências para profissionais e oportunidades para iniciantes ■ Partes de um aplicativo web GIS www.it-ebooks.info 4 CAPÍTULO 1 GIS como uma ferramentaCAPÍTULO 1 GIS como uma ferramenta maneiras sutis. ArcGIS, um tema central deste livro, é uma plataforma de sistema de informação geográfica (GIS) que permite aos usuários trabalhar com mapas e informações geográficas. Com ele, os usuários podem criar e usar mapas, reunir e analisar dados geográficos, e usar esses dados em uma variedade de aplicações. Este capítulo dá-lhe uma visão geral das peças-chave da informação neste livro: ■ A plataforma ArcGIS ■ Por que você deve considerar aprender como adicionar recursos espaciais em suas aplicações ■ Benefícios da API do ArcGIS para JavaScript ■ Dojo Toolkit e como ela se relaciona com a API do ArcGIS para JavaScript ■ conceitos SIG úteis Volumes foram escritos sobre o assunto de GIS sozinho, mas para os nossos propósitos, vou discutir o que GIS meios e como as aplicações location-aware impacto nossas vidas diárias. 1.1 GIS: aqui, ali, em toda parte Durante anos, GIS foi algo usado por acadêmicos e agências governamentais para estudos ou para fins de infra-estrutura. SIG é “um sistema projetado para capturar, armazenar, manipular, analisar, gerenciar e apresentar todos os tipos de dados geográficos.” 1 GIS é a nossa forma de trabalhar com informação espacial. Também é uma tecnologia que tem sido usado geográficos.” 1 GIS é a nossa forma de trabalhar com informação espacial. Também é uma tecnologia que tem sido usado geográficos.” 1 GIS é a nossa forma de trabalhar com informação espacial. Também é uma tecnologia que tem sido usado principalmente no campo dos computadores desktop, com aplicações de grandes empresas que requerem treinamento extensivo. A World Wide Web tem causado uma explosão na maioria das tecnologias de hoje, incluindo o uso de ferramentas de SIG. Desde meados da década de 1990, você foi capaz de encontrar endereços e obter direcções a partir de sites como o MapQuest. Projetos como o Google Maps e OpenStreetMap surgiu alguns anos mais tarde para trazer GIS para as massas, introduzindo o poder de mapas para as pessoas comuns. Esri, fundada em 1969, tem crescido em uma empresa líder que fornece ferramentas de SIG e serviços, incluindo uma suite de ferramentas de mapeamento web, que é por isso que você está lendo este livro. Antes de dar uma olhada em ofertas de GIS da ESRI, vamos provar as outras ferramentas disponíveis. 1.1.1 O ferramentas de SIG paisagem Você tem um número de opções quando se trata de desenvolvimento de aplicativos de mapeamento da web com JavaScript, incluindo opções de código aberto robustos. Algumas opções vir na forma de uma API, que é uma interface para um serviço web subjacente, como mapas e indicações. 1 “Sistema de Informação Geográfica”, Wikipedia, modificada pela última vez 24 de maio de 2014, http://en.wikipedia.org/wiki/1 “Sistema de Informação Geográfica”, Wikipedia, modificada pela última vez 24 de maio de 2014, http://en.wikipedia.org/wiki/1 “Sistema de Informação Geográfica”, Wikipedia, modificada pela última vez 24 de maio de 2014, http://en.wikipedia.org/wiki/ Sistema de Informações Geográficas .Sistema de Informações Geográficas . www.it-ebooks.info 5GIS: aqui, ali, em toda parte Google e MapQuest fornecer APIs de mapeamento web que são populares para incorporar mapas e indicações em sites. Microsoft oferece um mapeamento de API Bing para mostrar seus dados de mapeamento. Várias bibliotecas de mapeamento de código aberto também têm muito a oferecer: ■ OpenLayers -A biblioteca de mapeamento de fonte aberta popular com uma grande comunidade de usuáriosOpenLayers -A biblioteca de mapeamento de fonte aberta popular com uma grande comunidade de usuários ■ Folheto -A biblioteca de mapeamento que tem crescido em popularidade devido à sua facilidade de uso e foco no Folheto -A biblioteca de mapeamento que tem crescido em popularidade devido à sua facilidade de uso e foco no desempenho para navegadores móveis ■ Mapas modestos -A biblioteca mapeamento super-leve, que faz um bom trabalho de exibir mapas interativosMapas modestos -A biblioteca mapeamento super-leve, que faz um bom trabalho de exibir mapas interativos Esta lista é uma amostra de opções de código aberto para a construção de aplicativos de mapeamento web, e eu encorajo-vos a experimentá-los. A explosão de mapeamento no navegador só tem aumentado a importância da localização para os usuários todos os dias. Pessoalmente, quando estou fora executando recados, meu telefone me mantém atualizado a respeito de quanto tempo vai levar-me para chegar em casa com base na minha localização e de tráfego atuais condições. Isso é locationawareness pura em ação. GIS desempenha um grande papel em muitas áreas da tecnologia. Conhecer a localização de algo pode ser crítica em sistemas de gestão de ativos grandes que rastreiam construção e manutenção de informações de certas infra-estruturas, como água e energia. GIS é comumente usado no crime análises para ajudar as autoridades policiais locais concentrar seus recursos. GIS também é usado para projetar o crescimento da população em áreas urbanas para ajudar a determinar as necessidades de infraestrutura futuras. GIS é usado para ajudar o público quando ocorre uma catástrofe, por exemplo, mapeando os danos após tempestades e inundações. Considerando os vários APIs de mapeamento web disponíveis para outros do que a API do ArcGIS para JavaScript desenvolvedores, como OpenLayers e Folheto, você quer saber qual é a melhor escolha: proprietário ou aberto. Esta decisão pode depender de muitos fatores, mas geralmente se resume a preferência. Você está trabalhando com dados armazenados em um banco de dados ArcGIS existente? Você está trabalhando com serviços em uma ArcGIS Server existente? É todo o ecossistema GIS sendo construído a partir do zero? Qual é o orçamento? Há diretrizes regulatórias sobre fornecedores? Você precisa de suporte ao cliente on-call? Existem diferentes vantagens e desvantagens de cada escolha. Alguns desses prós e contras estão listadas na tabela 1.1. O que exatamente é um serviço web? O World Wide Web Consortium (W3C) define um serviço web como “um meio padrão de interoperabilidade entre diferentes aplicações de software, rodando em uma variedade de plataformas e / ou frameworks.” umadiferentes aplicações de software, rodando em uma variedade de plataformas e / ou frameworks.” uma uma “Os serviços da Web Arquitetura,” W3C Web Services Architecture Grupo de Trabalho, última modificação Feb uma “Os serviços da Web Arquitetura,” W3C Web Services Architecture Grupo de Trabalho, última modificação Feb 2004 www.w3.org/TR/ws-arch/2004www.w3.org/TR/ws-arch/ www.it-ebooks.info 6 CAPÍTULO 1 GIS como uma ferramentaCAPÍTULO 1 GIS como uma ferramenta Como a maioria dos debates opensource, a questão de se usar um web mapeamento API proprietária ou opensource pode obter aquecida. Na minha experiência, geralmente se resume ao que é actualmente em vigor e que você está disposto a gastar para obter algo feito rapidamente. Este livro assume que você, como um desenvolvedor, estão trabalhando com ArcGIS Server ou serviços do ArcGIS Online, por isso faz sentido para você trabalhar com a API do ArcGIS para JavaScript. Esta API não é um conjunto de ferramentas de código aberto, mas foi desenvolvido pela Esri, líder em tecnologias de GIS. É uma biblioteca poderosa construída para interagir com ArcGIS Server. 1.1.2 Apresentando a plataforma ArcGIS ArcGIS é uma plataforma para fornecer ferramentas baseadas em localização e funcionalidades que vão desde a área de trabalho para o servidor e móvel. A API do ArcGIS para JavaScript trabalha com ArcGIS Server, uma porta de entrada para dados GIS que pode ser compartilhado na web para fornecer acesso a dados GIS através de serviços web. Eu vou discutir esses serviços em mais pormenor no capítulo 2, mas por agora, tudo o que você precisa saber é que a API do ArcGIS para JavaScript é projetado para interagir com esses serviços para que você pode construir aplicativos de mapeamento web poderosos. GORJETA Antes de eu entrar em detalhes sobre a API do ArcGIS para JavaScript, você pode querer GORJETA Antes de eu entrar em detalhes sobre a API do ArcGIS para JavaScript, você pode querer visitar http://esriurl.com/js para uma visão geral dos exemplos de código e os materiais de referência. Este visitar http://esriurl.com/js para uma visão geral dos exemplos de código e os materiais de referência. Este visitar http://esriurl.com/js para uma visão geral dos exemplos de código e os materiais de referência. Este livro não regurgitar a documentação, mas a documentação é o material fonte para a API e será uma importante fonte de informações em sua exploração da API do ArcGIS para JavaScript. A API do ArcGIS para JavaScript é uma escolha natural se você estiver trabalhando com o ArcGIS Server. A API JavaScript traduz perfeitamente as informações do ArcGIS Server para fornecer uma rica experiência de mapeamento web. Figura 1.1 mostra como os dados GIS que antes era acessível apenas para alguns usuários podem agora ser compartilhado usando ArcGIS Server e a API do ArcGIS para JavaScript. O objetivo deste livro é apresentar-lhe as noções básicas da API do ArcGIS para JavaScript e como usar a API para interagir com vários serviços do ArcGIS. Você também vai ver como interagir diretamente com o ArcGIS Server, se você precisar de informações que você não pode facilmente usar a API para, e você vai aprender como estender a API para construir suas próprias ferramentas para atender às suas necessidades. A segunda metade do livro aborda como construir um aplicativo de mapeamento web mais envolvido que coleta dados em uma aplicação em campo. O termo “campo”, neste contexto, Tabela 1.1 Prós e contras de mapeamento web proprietárias e de código aberto proprietário Código aberto Custo Infra-estrutura pode ficar caro, mas API é livre de custos Infra-estrutura e API são livres de custo Suporte da comunidade Disponível em fóruns Esri bastante extensa apoio profissional Disponível com licenciamento ArcGIS Pode ser comprado de vários fornecedores www.it-ebooks.info 7GIS: aqui, ali, em toda parte significa “não atrás de uma mesa.” aplicações de campo apresentam seus próprios desafios, que eu vou cobrir em capítulos posteriores. NOTA Vou cobrir aspectos de como usar os serviços do ArcGIS Server com a API, mas não vou cobrir como NOTA Vou cobrir aspectos de como usar os serviços do ArcGIS Server com a API, mas não vou cobrir como instalar o ArcGIS Server (que não é necessário para este livro), publicar serviços, ou criar serviços usando ArcGIS para Desktop. Por agora, vamos ampliar a discussão para falar mais sobre o que são aplicações espaciais e como a internet mudou o que esperar destas aplicações. Como desenvolvedores (iniciante ou avançado), o que faz GIS trazer para a mesa e por que você deveria se preocupar? 1.1.3 Por que se preocupam com aplicações espaciais? Meu primeiro carro era pequeno, ele era velho, e ele estava enferrujado, mas era meu, e eu estava animado para ter o meu próprio passeio à escola, algo que eu acho que meus pais foram animado sobre bem. A primeira coisa que meu pai me deu quando eu tenho o meu carro, depois de uma breve palavra ainda popa de cautela sobre ser um condutor seguro, era um livro mapa desajeitado e pesado. Quando criança, eu Um olhar em frente No capítulo 4, você vai configurar uma conta de desenvolvedor ArcGIS livre assim que você pode criar seus próprios serviços para uso em sua aplicação. Você também vai usar serviços gratuitos de ArcGIS Online, uma versão baseada em nuvem do ArcGIS Server. ArcGIS Server ArcGIS API para JavaScript A API do ArcGIS para JavaScript faz o trabalho de mapa exibindo serviços no navegador. ArcGIS Server é um gateway para a visualização de dados GIS em clientes externos como um navegador da web. dados GIS normalmente reside em um banco de dados e não é diretamente acessíveis à web. dados GIS Figura 1.1 Produção de mapas com ArcGIS API para JavaScript www.it-ebooks.info 8 CAPÍTULO 1 GIS como uma ferramentaCAPÍTULO 1 GIS como uma ferramenta lembre-se sentado no banco de trás do carro em viagens longas, e meu dever era para virar periodicamente as páginas de um livro mapa idênticos e apontar o que a cidade estava vindo para cima ou quantas ruas que precisávamos para passar antes de fazer uma curva à direita. I utilizado para se maravilhar com o detalhe cada página fornecido, a partir das estradas sinuosas que já tinha viajado para os próximos colinas eu poderia olhar para frente. O livro mapa era um grampo em minhas viagens, bem como as viagens de muitos outros. Estes dias você não pode confiar em tijolos de espiral de papel para navegar a estrada, mas muitas pessoas não contam com GPS, ou em um smartphone ou no carro. Se você estiver usando um mapa em papel, você provavelmente impresso-lo de um site e dobrou-a em seu bolso para uso posterior. A navegação não é a única maneira que nossa sociedade de consumo de informações usa informações espaciais em nossas vidas diárias. Durante anos, a indústria de varejo tem usado a sua localização para publicidade segmentada. A partir de algo tão simples como os anúncios de papel que enchem sua caixa de correio, para um aplicativo no seu smartphone que pode dar-lhe um cupom para um restaurante nas proximidades, sem a sua pedindo por isso, a localização pode ser um componente chave para segmentar um público de uma forma significativa. Estamos constantemente a compartilhar mensagens, fotos e vídeos através de dispositivos móveis, e cada um desses bits de informação que compartilhamos carregam com eles as informações de localização. Você pode até mesmo jogar jogos em seu smartphone que interagem com a sua localização, usando ruas do mundo real para direcioná-lo para a vitória. Quando um novo restaurante de fast-food é construído, tempo foi colocado em analisar os benefícios da colocação de que o restaurante no local. Um estudo provavelmente foi feito para rever os dados demográficos da área (por exemplo, a renda familiar média), a proximidade de auto-estradas ou estradas principais, drive-tempo médio de grandes áreas de negócios e muito mais. Análises semelhantes também são feitas quando novas escolas são construídas ou novas estradas são pavimentadas. No final do dia, localização importa. 1.1.4 tendências na indústria de GIS Anteriormente, as pessoas que trabalharam na indústria do GIS necessárias as habilidades não só para analisar os dados, mas também a empregar cartografia paraexibir esses dados. Hoje, os profissionais de GIS são normalmente obrigados a ter um conjunto de habilidades expandida que lhes permite adaptar-se aos desafios que enfrentam, mas eles não precisam ser versado em todos os aspectos do uso de GIS. Profissionais que preferem se concentrar em um aspecto particular do GIS pode não ter habilidades magistrais cartográficos, rock-star habilidades de análise espacial, ou habilidades de desenvolvedor de nível ninja, mas a familiaridade com todos esses conjuntos de habilidades é útil. Você já pode estar trabalhando no campo GIS ou você pode ser um estudante ansioso para cortar os dentes no mercado de trabalho. Ou talvez você já tenha experiência em trabalhar com aplicações web e JavaScript e quer expandir seu conjunto de habilidades com um API de mapeamento web. Seja qual for o caso, Uma análise superficial dos recentes anúncios de trabalho relacionados com o SIG, revela que os empregadores estão procurando funcionários que não só pode analisar e trabalhar com dados, mas também têm conhecimento de programação. Habilidades de programação pode incluir uma linguagem como Python, que se consolida no setor de GIS como um grampo em automatizar a análise GIS, www.it-ebooks.info 9Compreender os bits GIS graças a algumas bibliotecas espaciais robustos. Habilidades também poderia incluir linguagens como C # ou Java, que são tipicamente usados para estender ferramentas de desktop ou construir serviços web. Os empregadores também precisam de profissionais de GIS atuais e desenvolvedores que podem usar tecnologias web para fornecer acesso rápido e eficiente para grande parte dos dados GIS que tem sido tradicionalmente inacessível para o público em geral. O aspecto de desenvolvimento web de usar GIS é uma área interessante não só para profissionais de GIS, mas também para qualquer pessoa aprender desenvolvimento web com mapas. Comecei a trabalhar com GIS no início de 2002 como um técnico de elaboração recrutados para fazer o trabalho técnico de GIS para ajudar com vários projetos. Uma das minhas tarefas foi ajustando manualmente centenas de pequenos limites. Foi tedioso, e eu não estava familiarizado com as ferramentas, que na época variavam de pouco conhecidas ferramentas de desenho para algumas tarefas de linha de comando ímpares. Fui convidado para editar arquivos de script que acrescentou novos menus para o software que eu usei, que magicamente procurou um banco de dados para obter informações relacionadas. Eu ainda estava verde e não percebeu o poder da automação eu estava trabalhando com. Hoje, a maioria do meu tempo é gasto fazendo o desenvolvimento GIS web. I assistir a conferências GIS regulares e eventos locais, e ao longo dos anos tenho notado a crescente necessidade de profissionais de GIS para ter uma compreensão básica de programação para obter tarefas diárias feito. Eu vi apresentações que incluem não apenas os detalhes analíticos da maneira como um projeto foi concluído, mas também as personalizações que foram feitas através de tarefas de programação que eram críticos para completar o projeto. Estas personalizações podem ser automatização de tarefas ou o desenvolvimento de uma aplicação web para permitir que os interessados em colaborar durante o ciclo de vida do projeto. O objetivo deste livro é dar-lhe uma base de trabalho sólida em usar a API do ArcGIS para JavaScript para construir aplicações web que atendam as necessidades da tarefa em mãos. Este poderia ser um aplicativo que é usado por socorristas durante um desastre natural ou um aplicativo de ordem de trabalho para acompanhar o trabalho que está sendo feito. Uma aplicação web pode ser usado em um escritório ou em dispositivos móveis, tornando-se uma plataforma flexível para trabalhar. Vamos mudar nosso foco para a estrutura de um aplicativo de mapeamento web GIS. 1.2 Compreender os bits GIS Vários componentes contribuem para a construção de um aplicativo de mapeamento web. Cada um é crítico para o processo. Como se mostra na figura 1.2, todos estes componentes em última análise, levar a uma coisa: um utilizador satisfeito, o que significa que os dados são transmitidos de uma forma clara e fornece significado para o utilizador. ArcGIS Server e API REST dados GIS ArcGIS Flex API ArcGIS JavaScript API ArcGIS Silverlight API usuário feliz Figura 1.2 As peças que compõem um aplicativo de mapeamento web www.it-ebooks.info 10 CAPÍTULO 1 GIS como uma ferramentaCAPÍTULO 1 GIS como uma ferramenta Os dados GIS está por trás do ArcGIS Server. Para chegar a esses dados, você se comunicar com o ArcGIS Server por meio de uma coleção de endpoints URL. Você pode se comunicar com estes parâmetros através de uma variedade de métodos, como o Silverlight e Flex, mas o foco deste livro é sobre a API do ArcGIS para JavaScript. Este processo de comunicação, combinada com suas habilidades impecável, leva a usuários felizes. Este é o método de comunicação é chamada de API REST, que é discutido com mais detalhes na seção 1.2.2. Nesta seção, eu vou apresentá-lo a cada um desses componentes de construção de um aplicativo de mapeamento web, começando com o componente-chave: os dados. 1.2.1 O que e a onde de dados GIS Os dados são o ponto de partida para uma aplicação bem sucedida. Alguém tem que compilar os dados, possivelmente, analisar e até mesmo digitalização (o processo de usar ferramentas de desenho) do dados GIS Tabular vetores ruas ComunidadesTráfego Terreno Figura 1.3 ArcGIS Server permite o acesso a dados GIS, que é composto de diferentes tipos de dados, como tabular, vetor, terreno, ruas, comunidades, e assim por diante, através de serviços. www.it-ebooks.info 11Compreender os bits GIS dados com base em fontes externas. Por exemplo, uma empresa ou agência governamental precisará traduzir velhos mapas, desenhados à mão para um formato digital, geralmente parcela ou limites do parque. Os dados muitas vezes é desenhado com base em imagens aéreas, tais como locais de árvores ou possíveis rotas para navegar para áreas sem acesso por estrada. antenas infravermelhos frequentemente são utilizados para encontrar a vegetação, que aparece em tons de vermelho em uma imagem infravermelha. Este método é usado para olhar para a forma como as áreas de mudança da vegetação ao longo de um determinado período de tempo. Sem dados, você não teria nada para mostrar em um aplicativo de mapeamento web. Estes dados podem ser armazenados em alguns formatos, mas geralmente reside em um banco de dados. Independentemente do formato, ainda é de dados, e é mais fácil de gerenciar uma grande quantidade de dados quando ele é mantido em um banco de dados. Isso permite que ele seja procurou rapidamente, backup, e facilmente compartilhados. Para compartilhar esses dados, você pode imprimir mapas de papel ou você pode enviá-lo para trás e em um formato digital. Embora estes ainda são métodos válidos de compartilhamento de dados GIS digitais, os usuários esperam ter acesso mais rápido e fácil para este tipo de informação (ver figura 1.3). Este é o lugar onde a necessidade de compartilhar esses dados para a web entra em jogo. Com uma riqueza de dados valiosos para ser compartilhado, o próximo componente crítico de um aplicativo de mapeamento web é um servidor web.um servidor web. 1.2.2 Servindo GIS dados: ArcGIS Server e a API REST O trabalho de um servidor web, como você já deve saber, é para servir os dados de um computador físico para o World Wide Web para que as pessoas possam vê-lo em seus navegadores web. Um servidor ArcGISspecific realiza tarefas especializadas, tais como servindo imagens aéreas, o que eu vou cobrir brevemente no capítulo 2. compartilhamento de dados on-line é feito através de serviços web. Um serviço web é um URL (URL pronunciado) que retorna uma página web, uma imagem, ou outra forma de dados. Este livro centra-se em dados que são acessados por meio de serviços ArcGIS Server.ArcGIS Server é um software de servidor da empresa que fornece um método rápido para construir serviços web que servem de dados GIS. Ele tem mais funcionalidades do que os dados apenas servindo, que eu vou cobrir em capítulos posteriores, mas toda a interação é feita através da API REST (Representational State Transfer), que é uma interface para interagir com o servidor (veja a figura 1.4). ArcGIS Server e API REST dados GIS dados GIS pode conter geometrias, imagens, e informação tabular. ArcGIS Server permite o acesso a dados GIS através do API REST. Para acessar e processar dados sobre ArcGIS Server, você usar os vários serviços prestados pela API REST. serviço de Geoprocessamento serviço Característica serviço de mapas serviço Geocode serviço de imagem Figura 1.4 Dados servido via ArcGIS Server é disponibilizado como vários serviços; cada serviço tem uma finalidade específica. www.it-ebooks.info 12 CAPÍTULO 1 GIS como uma ferramentaCAPÍTULO 1 GIS como uma ferramenta Para comunicar adequadamente com o ArcGIS Server API REST, você usa uma API-o próximo componente web especialmente concebida de um aplicativo de mapeamento web. 1.2.3 Escolhendo um web API ArcGIS A API ArcGIS Server REST é a base para todas as APIs ArcGIS web. Um desenvolvedor tem algumas escolhas ao decidir construir uma aplicação web baseada em tecnologia ArcGIS: ■ ArcGIS API para Flex ■ ArcGIS API para o Silverlight ■ ArcGIS API para JavaScript ■ e outros O ArcGIS API para Flex, com base no kit de desenvolvimento de software Flex ( SDK), costumava ser e outros O ArcGIS API para Flex, com base no kit de desenvolvimento de software Flex ( SDK), costumava ser e outros O ArcGIS API para Flex, com base no kit de desenvolvimento de software Flex ( SDK), costumava ser e outros O ArcGIS API para Flex, com base no kit de desenvolvimento de software Flex ( SDK), costumava ser um produto da Adobe, mas foi-sourced aberto nos últimos anos. Ele é construído em cima da tecnologia Flash e pode ser usado para construir aplicações interativas. O ArcGIS API para o Silverlight utiliza o Microsoft Silverlight para construir aplicações que, semelhante à API Flex, podem fornecer aplicações de fluidos e interativos. As desvantagens para ambas as APIs são de que eles exigem que os usuários tenham um plug-in de navegador instalado para cada um deles, e eles não funcionam em todos os navegadores da web em dispositivos móveis. Isto levou muitos desenvolvedores a abraçar a API do ArcGIS para JavaScript. JavaScript é executado em todos os navegadores, com pequenas diferenças na forma como ele é executado em cada navegador, e também fornece uma aplicação fluida e interativa. Todas essas APIs web são tradutores para o ArcGIS API REST, e eles tornam mais fácil para interagir com o ArcGIS Server para fornecer aplicativos de mapeamento web ricos em dados (ver figura 1.5). As APIs web podem ser construídos em diferentes tecnologias, mas uma vez que você aprender uma API, que é fácil de pegar outro sem muita dificuldade. O objetivo final desses vários componentes é fazer com que o usuário do aplicativo feliz. Proporcionar um aplicativo de mapeamento fácil de usar web que fornece os dados necessários para o usuário para realizar uma tarefa ou encontrar as informações corretas sem tropeçar através da aplicação é a chave para um usuário feliz. ArcGIS Server e API REST No plug-in necessário Requerem plugins do navegador dados GIS ArcGIS Flex API ArcGIS JavaScript API ArcGIS Silverlight API Figura 1.5 A API do ArcGIS para JavaScript é a única API que não requer um plug-in do navegador. www.it-ebooks.info 13Coisas para saber Se você é um GIS profissional experiente olhando para melhorar suas habilidades com JavaScript ou um ninja JavaScript que queira adicionar entalhes de mapeamento GIS web ao seu cinto, você vai querer estar familiarizado com alguns itens antes de trabalhar com a API do ArcGIS para JavaScript . 1.3 Coisas para saber Não importa o seu nível de competência em qualquer GIS ou JavaScript, você deve saber algumas coisas antes de trabalhar com a API do ArcGIS para JavaScript. Vou cobrir os seguintes tópicos em detalhe nos capítulos 2 e 3, mas eu quero tocar com eles brevemente nesta seção para lhe dar uma visão geral do que você precisa saber para trabalhar com a API do ArcGIS: ■ estilística JavaScript ■ conceitos de SIG 1.3.1 JavaScript, Dojo Toolkit, e Dijit Este livro é sobre o uso de JavaScript para construir aplicativos de mapeamento da web, mas você não precisa ser um mestre JavaScript para usar este livro. Eu não cobrir explicitamente o que eu considero JavaScript melhores práticas na construção de suas aplicações, mas o código que fornecem é escrito em um estilo que eu acho que é mais adequado para a tarefa em mãos. Por exemplo, às vezes você usar um único arquivo JavaScript para construir uma aplicação; outras vezes, você carregar até meia dúzia de arquivos JavaScript. Dojo e AMD CARREGAMENTO o dojo Toolkit é uma biblioteca popular, JavaScript, que oferece muitas ferramentas para escrever JavaScript, em particular o dojo Toolkit é uma biblioteca popular, JavaScript, que oferece muitas ferramentas para escrever JavaScript, em particular o dojo Toolkit é uma biblioteca popular, JavaScript, que oferece muitas ferramentas para escrever JavaScript, em particular para aplicações maiores. A API do ArcGIS para JavaScript é baseado em Dojo, por isso é inevitável que você também vai aprender Dojo como você começar a usar a API. Dojo fornece um amplo conjunto de ferramentas que você pode usar para construir seus aplicativos de mapeamento da web. Eu vou cavar mais fundo em ferramentas Dojo nos capítulos 2 e 3, mas o uso do Dojo e como se aplica à API do ArcGIS para JavaScript é algo que você deve estar ciente. Outro típico escolha estilística JavaScript é a forma como os arquivos são carregados. Uma maneira comum e ainda aceitável para carregar arquivos JavaScript para sua página da web é usar um < script>aceitável para carregar arquivos JavaScript para sua página da web é usar um < script>aceitável para carregar arquivos JavaScript para sua página da web é usar um < script> tag, como segue: <Script src =”file1.js”> </ script> <script src =”file2.js”> </ script> <script src =”file3.js”> </ script> Carregamento de arquivos JavaScript dessa maneira não é errado, e você precisa de pelo menos um roteiroCarregamento de arquivos JavaScript dessa maneira não é errado, e você precisa de pelo menos um roteiro tag para carregar um arquivo. Mas, como você pode imaginar, como a aplicação cresce ea quantidade de arquivos JavaScript crescer, este método obtém pesado. Sem mencionar que não há nenhuma garantia de que os arquivos JavaScript irá carregar na ordem em que você colocá-los na página. A API do ArcGIS para JavaScript usa um método chamado definição de módulo assíncronaA API do ArcGIS para JavaScript usa um método chamado definição de módulo assíncrona (AMD), que carrega seus arquivos JavaScript em uma base como-necessário. A razão para usá-lo se resume ao fato de que a API do ArcGIS para JavaScript é construído com o Dojo Toolkit. www.it-ebooks.info 14 CAPÍTULO 1 GIS como uma ferramentaCAPÍTULO 1 GIS como uma ferramenta Dojo usa AMD para construir aplicações, de modo AMD carregamento é outro método que você vai aprender a construir suas aplicações. Um exemplo rápido da AMD carregamento é mostrado a seguir: define ([ 'dojo / _base / matriz'], função (arrayUtil) { var sqItems = function () {itens voltar arrayUtil.map (itens, function (item) { retornar item * artigo; }); }; voltar sqItems; }); Vou cobrir mais detalhes sobre o carregador AMD no capítulo 3 quando você construir um widget personalizado. UTILIZAÇÃO Dijit Dojo tem uma biblioteca chamada Dijit, que é usado para construir os componentes JavaScript que fornecem uma interface em uma aplicação web. A interface pode ser um formulário para inseririnformações ou poderia ser um calendário de data-picker. Um processo está em vigor para construir estes componentes personalizados, comumente referido como Widgets. Usando Um processo está em vigor para construir estes componentes personalizados, comumente referido como Widgets. Usando Um processo está em vigor para construir estes componentes personalizados, comumente referido como Widgets. Usando Dojo, um desenvolvedor pode criar widgets personalizados usando conjunto base da biblioteca Dijit de ferramentas, o que simplifica o processo e torna a escrita de widgets reutilizáveis muito mais fácil como uma aplicação cresce. Vou cobrir widgets personalizados nos capítulos 3 e 4. 1.3.2 Introdução de um pouco de GIS Estou focando na construção de aplicativos de mapeamento web usando a API do ArcGIS para JavaScript, e embora o conhecimento de GIS não é um requisito para entrar neste assunto, eu quero rever alguns conceitos de SIG: ■ Mapas-interativo Um mapa interativo serve a um propósito específico: um mapa está lá para mostrar-lhe Mapas-interativo Um mapa interativo serve a um propósito específico: um mapa está lá para mostrar-lhe onde. Mostrar onde que? Mapas de comunicar informações de localização: poderia ser ruas, bairros, casas onde. Mostrar onde que? Mapas de comunicar informações de localização: poderia ser ruas, bairros, casas para venda, ou o quanto as pessoas de renda fazem em algumas cidades, mas a informação gira em torno de onde essa informação é exibida. Como mostrado na figura 1.6, quando você está à procura de uma resposta particular, às vezes você precisa perguntar: “Onde você está?” Define módulo personalizado e usa AMD para carregar outros arquivos JavaScript ArcGIS Server e API REST dados GIS ArcGIS API para JavaScript pessoa surda comunicar em linguagem de sinais intérprete de linguagem gestual profissional RESTO URL do terminal http: // myservername / arcgis / rest / serviços / myservice f = json? Informações para se comunicar Figura 1.6 Um mapa pode se comunicar muitas coisas, mas muitas vezes faz uma pergunta simples. www.it-ebooks.info 15resumo ■ Mapas e camadas -Você vai aprender sobre as partes de um mapa e de como usar camadas no capítulo 2, mas Mapas e camadas -Você vai aprender sobre as partes de um mapa e de como usar camadas no capítulo 2, mas por agora, tudo o que você precisa saber é que o mapa é o ponto de partida para veicular a informação. Por exemplo, um ponto no mapa poderia representar a localização de um posto de gasolina, uma série de linhas no mapa poderia mostrar rede viária de uma cidade, ou polígonos no mapa pode exibir áreas de voto. ■ análise de dados GIS -GIS ajuda a responder perguntas sobre a informação que você está trabalhando. Como próximo análise de dados GIS -GIS ajuda a responder perguntas sobre a informação que você está trabalhando. Como próximo sou eu para um determinado local? Como faço para encontrar uma casa que está mais próximo de escolas, centros comerciais, e onde eu trabalho? Usando a API do ArcGIS para JavaScript, você pode fazer análises interessantes. Eu não cobrirá qualquer coisa demasiado extensa, mas a capacidade está lá se você precisar dele, e você vai aprender como acessar as ferramentas para fazê-lo. 1.3.3 Interagir com o ArcGIS API REST O motor que mantém a API do ArcGIS para JavaScript em execução é o ArcGIS API REST, que eu discuti na seção 1.2.2. Falarei sobre como acessar o ArcGIS API REST para atender às necessidades que você pode ter que não são fornecidos na API do ArcGIS para JavaScript no capítulo 3. O que ferve para baixo é ser capaz de usar o ArcGIS API REST para encontrar mais informações sobre os dados que você está trabalhando. Você pode pensar nisso como metadados sobre seus serviços. Neste caso, os metadados inclui informações sobre um serviço de mapa, como os dados que estão no serviço, e se os dados é composta de pontos, linhas ou polígonos, ou todas as anteriores. É o serviço de mapas compatível com seus outros serviços de mapas? Qual é a aparência padrão do seu serviço de mapas? Em termos de ser capaz de preencher possíveis lacunas em termos de funcionalidade da API do ArcGIS para JavaScript, no capítulo 3, você vai construir uma extensão em JavaScript que irá exibir uma legenda que permite transformar camadas individuais ligado e desligado. Esta é uma ferramenta útil que não é fornecido fora da caixa com a API do ArcGIS para JavaScript. Estes tipos de ferramentas personalizadas que exigem que você interaja com o ArcGIS API REST não são sempre necessários, mas quando eles são, você vai ser grato por ter uma compreensão básica de trabalhar com o ArcGIS API REST para cobrir suas bases. 1.4 Resumo ■ Neste capítulo, eu discuti a prevalência de aplicações espaciais em nossas vidas diárias. De como temos loja de onde vivemos, a localização desempenha um papel vital em nossa sociedade. ■ Eu discuti várias opções disponíveis para aplicações de mapeamento edifício da web, cada um com seus próprios méritos. Neste livro, o foco é sobre a API do ArcGIS para JavaScript, que é mais adequado para trabalhar com serviços de mapas do ArcGIS Server. ■ Tendências na indústria do GIS têm mostrado um aumento acentuado para os profissionais de GIS para ter familiaridade com a linguagem de programação, mesmo que seja para complementar GIS análises e automatizar fluxos de trabalho. Isso abre a oportunidade para que profissionais não-GIS para mergulhar em construir aplicativos de mapeamento da web que usam o poder de dados GIS. www.it-ebooks.info 16 CAPÍTULO 1 GIS como uma ferramentaCAPÍTULO 1 GIS como uma ferramenta ■ Eu cobri o básico de acesso a dados GIS através de serviços web, que você pode usar para construir aplicativos de mapeamento da web. ■ I forneceu uma visão geral dos conceitos que você vai saber até o final deste livro, como JavaScript, as partes relevantes do Dojo Toolkit, os bits de GIS em seus mapas da web, eo que olhar para a frente quando se trabalha com a ArcGIS API REST. No capítulo 2, você vai aprender a usar a API do ArcGIS para JavaScript para trabalhar com vários serviços de mapas, dados de consulta destes serviços, e filtrar os dados. www.it-ebooks.info 17 Apresentando núcleo conceitos da API A API do ArcGIS para JavaScript é uma biblioteca JavaScript bem abastecido você pode usar para construir aplicações de mapeamento. Nos próximos capítulos você vai usar recursos avançados da API, mas neste capítulo vou discutir os principais recursos e seus usos. Vamos começar a nossa introdução às funções principais da API com um pouco de explicação sobre como as coisas funcionam para que você possa estar mais bem preparados quando algo não funcionar como esperado. Um aplicativo de mapeamento requer que você se encaixam muitos pedaços pequenos, mas a API do ArcGIS para JavaScript traz todos estes pedaços juntos para você, o que simplifica o processo. A API do ArcGIS para JavaScript usa uma abordagem modular para a construção de aplicativos de mapeamento web; ele carrega apenas as peças necessárias (módulos) para executar várias tarefas. Um aplicativo que apresenta um mapa interativo na tela que você pode zoom e pan ao redor é extremamente simples para criar. As funcionalidades adicionais, tais como o fornecimento de feedback do usuário ou a construção de inteligência para o aplicativo, dá mais trabalho. Este capítulo cobre ■ Noções básicas de um mapa em um aplicativo web ■ Usando diferentes tipos de dados do mapa ■ realizar consultas ■ Trabalhando com um FeatureLayerTrabalhando com um FeatureLayer www.it-ebooks.info 18 CAPÍTULO 2 Apresentando conceitos principais da APICAPÍTULO 2 Apresentando conceitos principais da API Para melhor prepará-lo para solucionar problemas quando algo não funcionar da maneira esperada, a minha abordagem neste capítulo é fornecer explicações mais detalhadas sobre como as funções do núcleo da API trabalhar.Vou cobrir as opções que estão disponíveis quando você faz um mapa, bem como o tipo de dados que você normalmente vai trabalhar. Eu também vou mostrar-lhe como consultar seus dados para ajudá-lo a usar o mapa para responder a perguntas e exibir os resultados em seu mapa. Então eu vou terminar cobrindo as vantagens de uma FeatureLayerperguntas e exibir os resultados em seu mapa. Então eu vou terminar cobrindo as vantagens de uma FeatureLayer e como você pode usá-lo em seus aplicativos de mapeamento web. Agora, para o momento que você estava esperando: você vai mergulhar na direita e fazer um aplicativo de mapeamento nu-ossos. Prepare-se para ele! 2.1 A partir de dados para mapear Um mapa é uma forma de visualizar dados. Poderia ser dados básicos, tais como locais de ruas, ou dados mais detalhados, tais como a localização de setores censitários. Esta seção abrange o seguinte: ■ Criar um mapa simples com ArcGIS API para JavaScript ■ Compreender em detalhe as peças que compõem o mapa ■ Rever opções de mapa comuns GORJETA Antes de saltar, revisão apêndice A para se certificar de que você tem o software recomendado GORJETA Antes de saltar, revisão apêndice A para se certificar de que você tem o software recomendado instalado para executar as amostras. Primeiro, crie um arquivo HTML usando seu editor de texto de escolha, nomeá-lo ch2_1.html, e insira o código mostrado na listagem 2.1, salvando-o em um diretório onde você pode vê-lo a partir de um servidor web local. Lembre-se que para ver as aplicações construídas com o ArcGIS API para JavaScript, os arquivos HTML deve usar um servidor web local de sua escolha. Novamente, consulte o Apêndice A para obter mais informações. <! Doctype html> <html> <Head> <Title> ArcGIS Desenvolvimento Web </ title> Docs são seus amigos Este não é um livro de referência, de modo que não irá cobrir todos os métodos e propriedades na API do ArcGIS para JavaScript. Um recurso que você vai se tornar intimamente familiarizado com ao usar a API é a documentação, que você pode encontrar em https://developers.arcgis.com/en/ javascript / . As páginas de referência API você pode economizar tempo quando encontrar em https://developers.arcgis.com/en/ javascript / . As páginas de referência API você pode economizar tempo quando encontrar em https://developers.arcgis.com/en/ javascript / . As páginas de referência API você pode economizar tempo quando você está preso sobre como trabalhar com um determinado módulo. Esri, a empresa que fornece a API do ArcGIS para JavaScript, também fornece um conjunto de amostras em seu site que fazem um bom trabalho de introduzir os usuários para o básico da API e algumas ferramentas. Eu recomendo estas amostras e páginas de referência, que podem ser encontrados em http://esriurl.com/js , Como leitura obrigatória estas amostras e páginas de referência, que podem ser encontrados em http://esriurl.com/js , Como leitura obrigatória estas amostras e páginas de referência, que podem ser encontrados em http://esriurl.com/js , Como leitura obrigatória junto com este livro. Listagem 2.1 Uma aplicação simples mapeamento ArcGIS JavaScript www.it-ebooks.info 19A partir de dados para mapear <Link rel = "stylesheet" href = "// js.arcgis.com/3.11/esri/css/esri.css"> </ Head> <body> <Div id = "mapa"> </ div> </ body> <Script src = "// js.arcgis.com/3.11 /"> </ script> <script> require ([ 'ESRI / map'], a função (Mapa) { var map = new Mapa ( 'mapa', { mapa base: 'ruas'}); }); </ Script> </ html> Este é o código mínimo que você precisa para construir um mapa usando a API do ArcGIS para JavaScript: ■ Uma referência para a versão atual da API do ArcGIS para JavaScript. ■ Um elemento de recipiente, o mais comum dos quais é um div elemento em seu HTML. UMA div é um Um elemento de recipiente, o mais comum dos quais é um div elemento em seu HTML. UMA div é um Um elemento de recipiente, o mais comum dos quais é um div elemento em seu HTML. UMA div é um Um elemento de recipiente, o mais comum dos quais é um div elemento em seu HTML. UMA div é um Um elemento de recipiente, o mais comum dos quais é um div elemento em seu HTML. UMA div é um elemento HTML em nível de bloco usado para organizar sua página web e pode ser usado apenas dentro do <elemento HTML em nível de bloco usado para organizar sua página web e pode ser usado apenas dentro do < body> elemento da página. o div elemento que contém o mapa deve ter uma identificação única, que é body> elemento da página. o div elemento que contém o mapa deve ter uma identificação única, que é body> elemento da página. o div elemento que contém o mapa deve ter uma identificação única, que é body> elemento da página. o div elemento que contém o mapa deve ter uma identificação única, que é associado com um elemento em sua página web. Neste caso, o ID é mapa . Você poderia nomeá-lo Prumo enquanto associado com um elemento em sua página web. Neste caso, o ID é mapa . Você poderia nomeá-lo Prumo enquanto associado com um elemento em sua página web. Neste caso, o ID é mapa . Você poderia nomeá-lo Prumo enquanto associado com um elemento em sua página web. Neste caso, o ID é mapa . Você poderia nomeá-lo Prumo enquanto associado com um elemento em sua página web. Neste caso, o ID é mapa . Você poderia nomeá-lo Prumo enquanto associado com um elemento em sua página web. Neste caso, o ID é mapa . Você poderia nomeá-lo Prumo enquanto você faz referência a ID corretamente, mas mapa é um nome conveniente para este exemplo.você faz referência a ID corretamente, mas mapa é um nome conveniente para este exemplo.você faz referência a ID corretamente, mas mapa é um nome conveniente para este exemplo. ■ Uma referência para o arquivo Esri Cascading Style Sheets (CSS), que define como elementos olhar na página; o CSS é fornecido com a API para garantir que o mapa exibe corretamente. Com essas peças no lugar, algumas linhas de código JavaScript são tudo que você precisa fazer referência ao ESRI / map módulo Com essas peças no lugar, algumas linhas de código JavaScript são tudo que você precisa fazer referência ao ESRI / map módulo Com essas peças no lugar, algumas linhas de código JavaScript são tudo que você precisa fazer referência ao ESRI / map módulo e instanciar uma nova instância de um mapa. DEFINIÇÃO Eu uso o termo módulo para se referir a componentes individuais de JavaScript que são definidas na API DEFINIÇÃO Eu uso o termo módulo para se referir a componentes individuais de JavaScript que são definidas na API DEFINIÇÃO Eu uso o termo módulo para se referir a componentes individuais de JavaScript que são definidas na API DEFINIÇÃO Eu uso o termo módulo para se referir a componentes individuais de JavaScript que são definidas na API do ArcGIS para JavaScript. Para criar o mapa, você passa o identidade do div elemento como o primeiro argumento para do ArcGIS para JavaScript. Para criar o mapa, você passa o identidade do div elemento como o primeiro argumento para do ArcGIS para JavaScript. Para criar o mapa, você passa o identidade do div elemento como o primeiro argumento para do ArcGIS para JavaScript. Para criar o mapa, você passa o identidade do div elemento como o primeiro argumento para do ArcGIS para JavaScript. Para criar o mapa, você passa o identidade do div elemento como o primeiro argumento para o Mapao Mapa construtor. Este elemento é usado para desenhar o mapa na tela. Vamos dar uma olhada no mapa em um navegador. 2.1.1 Partes de um mapa básico Para ver os resultados do código na listagem 2.1, executar um servidor web local de sua escolha e exibir o arquivo HTML em um navegador da Web usando uma das opções de servidor fornecidos no apêndice A-Visual Studio, XAMPP (Apache, MySQL, PHP) ou Python: GORJETA Veja o Apêndice A para opções de servidor web viáveis. GORJETA Veja o Apêndice A para opções de servidor web viáveis. Estilo é necessário para mapa para exibir corretamente Mostra o mapa Referências atual versão do ArcGIS
Compartilhar