Encontrando recursos de polígono de parcelas com fachada em várias ruas usando o ArcGIS Desktop?


8

O Departamento de Obras Públicas gostaria de saber quantas propriedades na cidade têm uma calçada na frente e atrás. Para chegar a isso, estou procurando um método para encontrar parcelas com fachada em mais de uma estrada. Estou trabalhando no ArcInfo 9.3.1 (arquivo geodatabase). Estou procurando uma solução que não exija scripts ou faça o download de outras ferramentas. Linhas centrais de ruas e polígonos de parcelas estão disponíveis; não há camada de calçada.

Usando algumas das idéias deste fórum , desenvolvi e testei um processo. Alguns dos resultados são intrigantes (os lotes de esquina podem ou não ser incluídos nos resultados finais - acho que o DPW não quer que os lotes de esquina sejam incluídos) e estou preocupado em escalá-lo para as 42000 parcelas completas (testei 1223 parcelas ) Existem etapas a serem adicionadas a esse método para melhorar os resultados? Existe outra maneira de realizar a mesma coisa que poderia ser mais automatizada através do construtor de modelos?

  • Ferramenta Executar recurso para linha na classe de recurso polígonos de parcelas (duas linhas são criadas para limites compartilhados por polígonos e as linhas mantêm o ID da parcela)
  • Crie uma topologia de geodatabase com esta classe de recurso de linha de parcela recém-criada usando a regra "não deve ter sobreposições" e valide a topologia (as linhas internas estarão com erro)
  • No ArcMap, adicione topologia e classe de recurso e abra o inspetor de erros e procure por erros> selecione todos os erros> clique com o botão direito do mouse> selecione recursos> excluir (para excluir linhas internas)
  • Executar frequência nos recursos restantes na classe de recurso da linha de parcelas com o ID da parcela como campo de frequência - selecione os registros na tabela em Frequência> 1 e exporte para a nova tabela
  • Frequência de junção> 1 tabela para polígonos de parcelas com base no ID da parcela, mantendo apenas registros correspondentes - exportar resultados da junção

Você tem / ou acesso à extensão COGO? webhelp.esri.com/arcgisdesktop/9.3/...
Mapperz

Eu posso adicionar a barra de ferramentas COGO no ArcMap. Eu nunca usei isso. O COGO não está listado em Ferramentas> Extensões.
Cwb

Respostas:


8
  1. Se sua rede de estradas estiver dividida por segmentos, dissolva os buffers com base no nome da estrada ou em algum atributo comum, para que segmentos individuais de estradas não sejam contados como duas estradas separadas na próxima etapa.

  2. Faça um buffer de suas linhas centrais da rua em um valor padrão - mais da metade da largura ROW típica, mas não tão grande que possa sobrepor as parcelas que não estão na frente dela. Você pode escolher buffers diferentes para diferentes classes de estradas. Quando você fizer buffer, não mescle os polígonos.

  3. Junte espacialmente as parcelas aos amortecedores da estrada, escolhendo "um para muitos". O campo "contagem" nos resultados deve permitir identificar todas as parcelas com duas fachadas.

Agora você tem uma tabela com linhas para todas as sobreposições entre uma parcela e uma estrada. Você pode resumir isso facilmente para encontrar todas as parcelas sobrepostas a duas ou mais estradas usando GIS ou banco de dados. Mas a eliminação dos lotes de esquina será mais complicada. Aqui está um método amplo:

  1. Configure a topologia para a camada do buffer com uma regra "não deve cruzar".

  2. Exporte todos os erros para uma nova classe de interseções de recursos.

  3. Associe espacialmente as interseções à camada de buffer, escolhendo "um para muitos".

Neste ponto, você tem duas tabelas: uma com todas as fachadas e outra com todos os cruzamentos entre as estradas. Não será fácil, mas você pode escrever uma consulta SQL que seleciona encontra todas as parcelas com duas fachadas nas quais essas fachadas não se cruzam. Os resultados seriam o conjunto de todas as parcelas que possuem várias fachadas que não se cruzam.

Uma vantagem desse método é que ele evita a escolha de parcelas com arestas que não estão nas estradas, como onde uma parcela fica adjacente a um beco, características da água, uma linha ferroviária, etc. Uma desvantagem é que o buffer não será perfeito e você ainda precisará verificar visualmente se há erros.

Não tenho certeza de como escrever o SQL - talvez alguém possa falar sobre isso.

Edite pensamentos no SQL:

Seria bastante simples resolver parcelas com duas fachadas, como abaixo. Talvez você precise analisar manualmente as parcelas com mais de duas fachadas, mas espero que haja poucas, e a maioria seria de lotes de esquina de qualquer maneira.

Isso pode funcionar para selecionar apenas parcelas não de canto com duas fachadas:

select ParcelID from parcels
where parcelID not in (
    ((select Parcels1.parcelID, intersections.intersectionID from
     intersections left join
        (Select first(RoadID) as Road1, last(RoadID) as Road2, count(*) as frontages, ParcelID
        from Parcels
        where count(*) = 2
        group by ParcelID) as Parcels1
    on intersections.RoadID = Parcels1.Road1) as int1
inner join
    (select Parcels2.parcelID, intersections.intersectionID from
    intersections left join
        (Select first(RoadID) as Road1, last(RoadID) as Road2, count(*) as frontages, ParcelID
        from Parcels
        where count(*) = 2
        group by ParcelID) as Parcels2
    on intersections.RoadID = Parcels2.Road2) as int2
on int1.intersectionID on int2.intersectionID))

1
+1 Solução muito criativa: bom uso de buffer. Uma união das parcelas e do amortecedor das ruas também serviria.
whuber

Eu gosto que o método buffer evite a escolha de parcelas em becos ou outras linhas de ruas que não sejam de rua. Mais ajuda com os cruzamentos seria ótima, no entanto. A topologia mostra as interseções como erros, mas como os erros são exportados? Selecionar os recursos que causam os erros retorna o buffer, não a interseção. Existe uma maneira de determinar interseções sem usar código ou baixar novas ferramentas?
Cwb

Desculpe, esqueci que usei um script quando exportei anteriormente erros de topologia. Apenas para referência, a ferramenta para fazer isso está aqui .
Patrick Patrick

1
A sugestão do @ whuber me dá uma idéia para resolver isso sem usar uma instrução SQL longa. Interseccione os buffers e as parcelas, incluindo todos os atributos. A classe de recurso resultante deve ter os atributos necessários para determinar quais polígonos representam interseções. Depois de ter esse conjunto de cruzamentos, você pode simplesmente remover os lotes que os cruzam do seu conjunto de todos os lotes.
Patrick

Se você usar esse método, faça a junção espacial na etapa 3 como "um para um". Isso fornecerá uma contagem do número de fachadas para cada parcela, permitindo selecionar apenas as parcelas com pelo menos duas fachadas.
Patrick

3

Consegui entregar resultados às Obras Públicas para que os funcionários possam analisá-los de acordo com seus critérios. Aqui está um esboço do meu procedimento final.

  1. Separe as linhas centrais das ruas por classe de estrada em novas classes de recursos (US & State Highway, Major City Street / City Street, Private Drive / Driveway, ignore Interestadual, Rampa, Caminho, Cemitério)

  2. Criar buffer em torno de cada classe de recurso de classe de estrada: Tipo final FLAT, tipo Dissolver LIST no campo de identificação do nome da rua, o tamanho do buffer depende da classe de estrada

  3. Mesclar as classes de recurso de buffer

  4. Interseção da classe de recurso de buffer mesclado com polígonos de parcela

  5. Executar ferramenta de frequência na classe de recurso Intersect com campo de frequência = campo de ID do pacote

  6. Exportar seleções da tabela Frequência com base no campo de frequência (ignorar frequência = 1, selecionar frequência = 2, frequência = 3, frequência = 4, frequência = 5 ou mais)

  7. Junte-se a cada tabela de frequência para agrupar polígonos no campo de ID do pacote - mantenha apenas registros correspondentes e exporte a classe de recurso associada

  8. Revise cada classe de recurso exportado - observe as áreas em que o buffer não cobre parcelas, como becos sem saída

a frequência 5+ inclui lotes de esquina com fachada traseira adicional ou formas ímpares, lotes grandes (campo de golfe) ou lotes de esquina com artefatos-tampão, lotes de esquina que incluem dois cantos, parcelas com estradas que atravessam

frequência 4 será lotes de esquina

a frequência 3 inclui parcelas adjacentes a lotes de esquina, grandes parcelas multipartes divididas por estrada, artefatos do buffer cross street, parcela com 3 vias de entrada

a frequência 2 inclui parcelas com fachada em duas estradas, mas observe as parcelas de canto onde o limite da parcela de canto está muito longe do buffer para cruzar, estrada dentro de uma parcela, 2 entradas para parcela na mesma estrada, a estrada muda o nome na frente de uma parcela, interestadual parcelas

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.