Dividir linhas automaticamente a distâncias específicas usando o ArcGIS Desktop?

8

Eu tenho um conjunto de polilinhas que preciso dividir em distâncias diferentes dos pontos de partida.

Em geral, estou procurando algo semelhante à função SPLIT na ferramenta de edição. Lá é possível especificar um determinado comprimento de linha onde a divisão deve ser aplicada.

Por exemplo: eu tenho uma linha A de 3200m de comprimento, que eu preciso dividir em duas geometrias separadas, uma de 0 a 1700m e uma de 1700m a 3200m.

Isso pode ser feito no ArcGIS Desktop?

Estou usando o ArcGIS Desktop 9.3.1. no WinXP com Python 2.7.2.

LarsVegas
fonte

Respostas:

4

Você pode usar ETGeowizards (polilinha-> polilinha dividida). Se você precisar incluir isso em um modelo de script ou geoprocessamento, os ETGeowizards poderão ser puxados para o ModelBuilder.

No PostGis, você pode usar ST_Line_Substring

MappaGnosis
fonte
A única restrição seria a licença. Você não pode usar o ET GeoWizzard no construtor de modelos sem licença. Manualmente, você pode usar o ET para a classe de apresentação que contém menos de 100 recursos.
Tomek
Pena: não consigo instalar o ETGeowiz no meu escritório. O PostGIS também não tem opção para mim ... Pensei em segmentação dinâmica que me dará os pontos para a divisão. Mas, então, estou preso ao que acabei de publicar nesta página: não tenho acesso à ferramenta de divisão de linhas no ponto.
LarsVegas
4

Existe uma ferramenta de gerenciamento de dados chamada Split Line At Point que faz exatamente isso, mas requer o ArcGIS Desktop 10.0 (ou posterior) e uma licença no nível ArcInfo (posteriormente denominada Advanced):

import arcpy
from arcpy import env

env.workspace="C:/data"
arcpy.SplitLineAtPoint_management("streets.shp","events.shp","splitline_out.shp","20 Meters")
Aragão
fonte
1
A ferramenta linha no ponto é o que estou procurando. Infelizmente ainda não existe com o ArcGis 9.3.1. A linha na ferramenta vértices não ajuda muito, porque eu acabar com milésimos de splits I don "t necessidade.
LarsVegas
3

Eu usei essa classe ArcObjects para dividir recursos de linha antes em distâncias específicas.

http://edndoc.esri.com/arcobjects/8.3/Samples/Editing/Edit%20Commands/Line%20Edit%20Toolbar/clsDivideLineFeatures.htm

artwork21
fonte
1
Este é um complemento muito interessante! Obrigado por compartilhar as informações. Você já o usou dentro de um script? Preciso aplicar divisões em distâncias variáveis ​​a mais de 100 linhas. Então, o que eu preciso aqui é chamar a ferramenta "Proportion" com uma variedade de distâncias. Isso é possível? Obrigado companheiro!
LarsVegas
2
Como você está usando o 9.3.1, você pode criar uma macro VBA ou uma dll do Visual Studio BaseCommand. edndoc.esri.com/arcobjects/9.2/NET/… . Em seguida, você pode percorrer sua camada, selecionando cada recurso e dividindo o recurso talvez pelo valor do campo do recurso (dividir pelo valor da distância).
artwork21
1
Obrigado, vou dar uma olhada. Parece muito trabalho, especialmente porque isso é terra incógnita para mim. Pode ser mais fácil encontrar alguém com o ArcGIS 10 instalado e deixá-lo executar a SplitLineAtPoint_managementferramenta.
LarsVegas