Costumava confiar no XTools para isso, mas no meu ambiente atual, não tenho acesso a ele.
Estou tentando fazer isso no ArcMap10.
O objetivo é quebrar uma representação de linha de um fluxo em um conjunto de pontos igualmente espaçados, a fim de determinar os valores de z nesses pontos, para que eu possa determinar o gradiente.
Meu fluxo de trabalho pretendido é como tal.
- dividir o fluxo em pontos
- cruzar os pontos com um DEM usando GME
- Ao determinar a distância entre os pontos, devo poder determinar que o gradiente é.
- Parece que faria sentido integrar os dados do ponto novamente às linhas de fluxo originais. Não tem certeza sobre esta etapa.
Aprecio qualquer crítica do meu método, mas minha prioridade neste momento é converter esses fluxos em pontos.
Obrigado!
arcgis-10.0
algorithm
Jacques Tardie
fonte
fonte
Respostas:
Ainda não estou usando o ArcGIS 10, mas na 9.3.1 você pode iniciar uma sessão de edição na camada de linha, realçar o recurso que deseja dividir e, na barra de ferramentas do Editor, selecionar a opção Dividir. Aqui você pode especificar a distância para dividir o recurso selecionado. Você pode usar a ferramenta Exportar nós no ET GeoWizard (ferramenta gratuita) para obter uma camada de pontos para cada segmento de linha dividido.
Você pode usar uma junção espacial para colocar as informações dos dados do ponto novamente na camada de linha. Clique com o botão direito do mouse na camada de linha no ArcMap TOC e selecione Unir e relacionar> Unir. Na primeira lista suspensa, selecione a opção "Unir dados de outra camada com base na localização espacial".
fonte
Não conheço uma ferramenta na interface do usuário que faça isso, mas isso pode ser feito programaticamente, por meio da interface IMSegmentation3 .
fonte
Você pode criar um buffer em uma extremidade do fluxo e, em seguida, identificar o ponto em que seu buffer cruza o fluxo. Então você pode continuar repetindo esta etapa. Não forneceria a distância exata do fluxo (como é uma linha reta, e não o comprimento do fluxo), mas se você pudesse dividir a linha em seções com base nesses pontos, e usando o comprimento dessas linhas, estimar o gradiente.
Isso poderia ser script em python se fosse uma abordagem digna!
fonte