Cálculo da largura do polígono no ArcGIS Desktop?

10

É fácil calcular a largura de um polígono usando o ArcGIS 9.3.1 ou 10?

Encontrei alguns scripts para a 9.1, mas eles não funcionarão. Eu posso usar a largura no ponto mais largo, no ponto mais estreito ou na média. Não precisa ser exato, mas precisa ser um pouco automatizado, porque tenho algumas centenas para calcular.

Ted Cisine
fonte
1
No caso de outra pessoa procurar uma resposta anos depois: gis.stackexchange.com/a/181801/10919
Tom

Respostas:

6

A largura do polígono pode ser obtida usando um retângulo delimitador de área mínima. Esse link ... contêineres delimitadores ... a fornece uma solução. Calcule isso como o mínimo do "comprimento" e "largura" do retângulo. Está disponível em todos os níveis de licença do ArcMap (atualizado em janeiro de 2016)

whuber
fonte
Esta resposta tem 5 anos. Houve alguma atualização no ArcGIS ou em outros métodos para fazer isso desde a publicação desta resposta?
dassouki 16/09/2015
1
@Dassouki Dan Patterson (que postou em outro lugar neste tópico) codifica esses tipos de soluções há anos. Ele é o primeiro lugar em que eu procuraria atualizações e novas soluções no ArcGIS.
whuber
@whuber atualizou o link ... graças a cabeça para cima
1

Esta é apenas uma resposta parcial à sua pergunta, mas pode ser um indicador na direção certa. Para esclarecer, isso encontrará a largura do envelope do polígono no ponto mais largo. Adicione um atributo com o tipo de campo double ao seu recurso. Abra a calculadora do campo e clique em Avançado. Cole esse código no bloco de código e defina o campo que você criou igual a Ouput

Dim Output As Double
Dim pPoly as IPolygon
Set pPoly = [Shape]
Dim pEnve as IEnvelope
Set pEnve = pPoly.Envelope
Output = pEnve.Width

Trabalhos em 9.3.1. Originalmente publicado aqui .

Zachary
fonte
Essa parece ser a largura do envelope: não parece ser o que o OP está pedindo.
whuber
Eu editei minha resposta para esclarecer isso, obrigado por apontar. A pergunta original dizia que não precisava ser exata, portanto a largura do envelope pode ser suficiente.
Zachary
1
Infelizmente, a largura do envelope é a mais inexata possível. Por exemplo, quando o recurso está alinhado com sua largura na direção vertical, a "largura" do envelope realmente calcula o comprimento do recurso . Sua idéia de explorar a largura do envelope foi usada em código que gira sistematicamente o recurso em uma busca pela largura mínima do envelope: em muitos casos, há uma reivindicação legítima de ser uma estimativa razoável da largura. Acredito que Dan Patterson tenha uma contribuição dessa natureza no ArcScripts.
whuber