Visão geral do exemplo do Bing Maps Trip Optimizer
Este documento descreve as características fundamentais do projeto do Bing Maps Trip Optimizer, por exemplo, como é criado, estruturado e compilado.
Dica
O código de exemplo que corresponde a este documento é encontrado no Exemplo Bing Maps Trip Optimizer.
Neste artigo
Criando projetos do Visual Studio
Compilando, implantando e executando o exemplo
Fluxo de trabalho do aplicativo
Próximas etapas
Criando projetos do Visual Studio no Visual Studio
Se você baixou e extraiu o exemplo, poderá abrir o arquivo de solução TripOptimizer.sln no Visual Studio, e o código será exibido a você. Você também poderá exibir o código-fonte do Exemplo Bing Maps Trip Optimizer na página da Galeria de Amostras do MSDN selecionando a guia Procurar Código.
Quando criamos projetos do Visual Studio para Bing Maps Trip Optimizer, usamos o modelo Aplicativo em branco JavaScript para criar o projeto de aplicativo principal, e o modelo Visual C++ Componente do Tempo de Execução do Windows criar a biblioteca de classes C++. O projeto JavaScript referencia o projeto C++. O documento Criando componentes do Tempo de Execução do Windows em C++ explica como configurar um referência de projeto.
Par ao projeto JavaScript, o modelo Aplicativo em Branco fornece a funcionalidade básica necessária para execução como aplicativo Windows Store. Use esse modelo para criar um aplicativo vazio. O Visual Studio inclui os modelos adicionais que fornecem uma funcionalidade avançada inicial. O Bing Maps Trip Optimizer usa os arquivos padrão que vêm com o modelo Aplicativo em Branco e adiciona outros arquivos de imagem e de código.
Uma configuração importante de projeto no modelo Biblioteca de classe WinRT é a opção /ZW, que permite ao programa usar as extensões de linguagem do Tempo de Execução do Windows.
Aviso
A opção /ZW não é compatível com opções como /clr.Isso significa que você não pode direcionar o .NET Framework e o Tempo de Execução do Windows do mesmo projeto em Visual C++.
Cada aplicativo Windows Store em Windows Store vem na forma de um pacote de aplicativos. Um pacote de aplicativos contém um manifesto de pacote, que contém informações sobre o aplicativo Por exemplo, você pode especificar seus recursos, que definem o acesso aos recursos protegidos do sistema ou aos dados do usuário. Se você determinar que seu aplicativo requer certos recursos, use o manifesto de pacote para declará-los. O Bing Maps Trip Optimizer especifica Internet (Cliente) para permitir que o aplicativo acesse os serviços Web do Bing Maps. Para obter mais informações sobre pacotes e recursos de aplicativos, consulte App packages and deployment.
Para obter mais informações sobre recursos e componentes que estão disponíveis no ambiente de desenvolvimento integrado do Visual Studio (IDE) para projetos em JavaScript, C++ e .NET, consulte Develop Windows Store apps using Visual Studio.
[Superior]
Compilando, implantando e executando o exemplo
Compile um projeto de aplicativo Windows Store como você compilaria um projeto padrão. (Na barra de menus, escolha Compilar, Compilar Solução). A etapa de compilação compila o código e também o embala para uso como um aplicativo Windows Store.
Depois de compilar o projeto, você deverá implantá-lo. (Na barra de menus, escolha Compilar, Implantar Solução). O Visual Studio também implantar o projeto quando você executa o aplicativo a partir do depurador.
Depois que você implantar o projeto, escolha o quadro Bing Maps Trip Optimizer para executar o aplicativo. Como alternativa, a partir do Visual Studio, na barra de menus, escolha Depurar, Iniciar Depuração. Certifique-se de que TripOptimizerWebApp seja o projeto de inicialização.
Dica
Uma chave do Bing Maps é necessário para executar esse exemplo.Para obter informações sobre como obter uma chave do Bing Maps, consulte Getting a Bing Maps Key.
[Superior]
Fluxo de trabalho do aplicativo
Aqui está o fluxo de trabalho do aplicativo.
Insira até 25 locais para a viagem. A primeira entrada especifica o local de início e de término.
Dica
Você pode selecionar Demonstração de Parques ou Demonstração de Entrega para preencher a área de locais com valores predefinidos.
Selecione o método de trajeto (dirigir ou andar), a unidade de distância (milhas ou quilômetros) e o método de otimização (minimizar distância, minimizar tempo ou evitar tráfego.)
Se você desejar, especifique as entradas para o algoritmo de otimização e se a computação paralela será usada. A computação paralela é ativada por padrão.
Dica
A seção Opções Avançadas é incluída como uma ferramenta de aprendizado para desenvolvedores.Essas opções não fazem parte de um aplicativo.
Escolha Obter Instruções para iniciar o processo. A parte de JavaScript do aplicativo transmite os locais e as opções ao componente em C++ do Tempo de Execução do Windows. O componente C++ executa estas etapas:
Usar os serviços da REST do Bing Maps para recuperar a latitude e a longitude de cada local. Como parte da resposta, o Bing Maps inclui todas as possibilidades que correspondem à cadeia de caracteres de local.
Para todos os locais que têm mais de uma possibilidade, exibir todas as possibilidades na interface do usuário e retornar para a etapa 1.
Usar os serviços da REST do Bing Maps para recuperar a distância (dirigindo ou andando) de cada local para cada local. Esta etapa usa os valores de latitude e de longitude obtidos na etapa A.
Calcular a rota otimizada entre todos os locais e transmitir a rota à parte de JavaScript do aplicativo.
A parte de HTML/JavaScript exibe instruções de trajeto passo a passo e usa o controle AJAX do Bing Maps para exibir a rota otimizada.
Você pode interagir com o mapa. Quando você escolhe uma etapa ou um local nas instruções de trajeto, o controle AJAX move-se para essa etapa ou local e adiciona um pino ao mapa.
A ilustração a seguir mostra uma visão mais básica do fluxo de trabalho.
O componente C++ usa os serviços da REST do Bing Maps em duas fases. A primeira fase ajuda o usuário a verificar se o Bing Maps tem os locais corretos. Por exemplo, se você especificar “Pittsburgh”, o Bing Maps talvez retorne “Pittsburgh, PA”, “Pittsburgh, ON” e “Pittsburgh, GA” como as possibilidades. Quando ambiguidades são resolvidas no início no processo, a segunda etapa, que recupera a distância de cada ponto a ponto, pode ser executada sem encontrar locais ambíguos.
Dica
Poderíamos ter executado a comunicação com os serviços da REST do Bing Maps na parte de JavaScript do aplicativo.Nós a adicionamos ao componente C++ porque desejávamos demonstrar como se comunicar com uma interface REST e analisar a resposta XML de C++.
[Superior]
Próximas Etapas
Leia Usando JavaScript no exemplo do Bing Maps Trip Optimizer para obter informações sobre como o JavaScript é usado no aplicativo Bing Maps Trip Optimizer.
[Superior]