Como posso representar a distância usando traços ou marcadores de uma linha de vetor?

14

Eu sou um usuário muito básico e não conheço o jargão para entender a essência da minha pergunta, portanto, alguns antecedentes podem ajudar.

Ofereci-me para criar um sistema de planejamento pré-incidente para o meu corpo de bombeiros rural. Nossa principal vulnerabilidade são entradas de automóveis não mapeadas extremamente longas.

Até agora, transferi com sucesso os dados de GPS das entradas de automóveis através de fotografias aéreas do distrito como linhas verdes brilhantes (uma camada .SHP) com uma etiqueta mostrando o comprimento de cada entrada de automóveis. Parece ótimo e é muito útil como está.

Agora a pergunta : eu quero desenhar as linhas do vetor da entrada de automóveis como traços ou com marcadores definidos em comprimentos de 100 pés. Nossas mangueiras da linha de suprimento têm comprimentos de 100 pés; Uma linha de vetor definida com marcadores em intervalos de 30 metros me economizaria muito tempo e melhoraria os dados imensamente.

Até agora, tentei o "Símbolo Único" como uma "Linha Simples" usando um padrão de traço personalizado e a "Linha do Marcador" usando o posicionamento do intervalo. Nenhuma dessas opções mantém o comprimento adequado durante o zoom ou "redimensionamento" (se esse for o termo).

Talvez seja impossível? (pelo menos no meu nível de conhecimento. Eu me ensinei até aqui e não tenho muito mais tempo para brincar :)

Bob Mitchell
fonte
4
Bem vindo ao site! Pergunta rápida: qual software você está usando para esse mapeamento? ArcGIS (e qual versão)? QGIS? Mapinfo? Dependendo do que você está usando, existem algumas maneiras diferentes de fazer isso.
Om_henners
2
Se você está trabalhando no QGIS, acabei de abrir isso para você hub.qgis.org/issues/6953 #
Nathan W

Respostas:

8

Como o QGIS também possui a linha Simple e Marker, responderei do ponto de vista do QGIS. Como Stephen disse, usar as linhas dos marcadores não dará o que você precisa - embora isso faça uma boa solicitação de recurso - que acabei de abrir .

É melhor você apostar no momento para gerar pontos ao longo da linha. Eu descrevi como você pode fazer isso no QGIS no meu blog em Gerando nós de cadeia (distância) no QGIS

Felizmente, um dos caras do projeto adotou minha lógica e o transformou em um plugin em https://github.com/mach0/qchainage .

Para instalar o plugin

  • Clique no botão ZIP no https://github.com/mach0/qchainage ou siga este link
  • Extraia o arquivo zip para {yourusername}\.qgis\python\plugins\. Agora você deve ter uma qchainage-masterpasta na sua pasta de plugins.
  • Abra o QGIS e ative QChainageno Gerenciador de plug-ins
  • Abra sua camada de linha
  • Selecione o item de menu Plugins->QChainage->Create Chainage
  • Preencha as opções

    opções de qchainage

    Estou usando 10 metros aqui. A distância está em unidades do mapa.

  • Clique OK

  • Lucro...

    resultado

Isso criará uma nova camada de pontos na memória, se você quiser salvá-la. Clique com o botão direito do mouse na nova camada de pontos e selecioneSave As...

Nathan W
fonte
Obrigado pela ajuda Nathan. Após algum esforço infrutífero ao tentar instalar o plug-in, li o post abaixo do mach0 .. :) Eu deveria ter postado minha versão do software com a pergunta que é: QGIS 1.7.3-Wroclaw contra a revisão de código 00624b3.
Bob Mitchell
6

Bem vindo ao site. Como você mencionou Simple Line e Marker Line, assumirei que você está usando o ArcMap.

Não tenho certeza se algum dos métodos de simbolização da linha permite especificar uma distância que será mantida quando você aumentar / diminuir o zoom.

Uma solução alternativa pode ser criar uma camada de pontos separada e colocar um ponto a cada 100 pés. Consulte o arquivo de ajuda em Criando novos pontos ao longo de uma linha para obter instruções sobre como fazer isso. Isso pode permitir que você conte rapidamente os pontos ao longo de uma linha para saber quanto tempo demorou.

Observe que esse método não é "ativo", portanto, você precisará recriar os pontos se alguma das linhas for alterada.

Stephen Lead
fonte
Obrigado Stephen, é isso que eu estava tentando evitar.
Bob Mitchell
@BobMitchell Se você acabar usando essa abordagem, poderá criá-la usando Python, para tornar muito fácil recriar os pontos quando os dados subjacentes forem alterados
Stephen Lead
1

A única coisa é que o plug-in está atualmente trabalhando apenas no mestre .. porque ele usa a função não fornecida na versão estável atual 1.8 .. Portanto, você deve usar o código noturno fornecido (provavelmente em paralelo à sua instalação estável existente) .. Normalmente Eu diria que o master é tão estável quanto o "stable 1.8" - mas há muita reestruturação para preparar o master para uma versão 2.0 - então você pode ter alguns problemas. Desculpe por isso - desculpe - mas o QGIS está em andamento progresso :)

Assim que houver um 2.0, haverá muitas novidades disponíveis.

Nathan - obrigado pelo algoritmo e por propagar um plugin lançado "não agora" - acho que é hora de enviá-lo para o repositório oficial.

mach0
fonte
2
você realmente deveria ter adicionado isso como um comentário à minha pergunta. Leia rapidamente as perguntas frequentes gis.stackexchange.com/faq
Nathan W