ArcGIS Masaüstünde Çokgen Genişliği Hesaplama?


10

ArcGIS 9.3.1 veya 10 kullanarak bir çokgenin genişliğini hesaplamak kolay mı?

9.1 için bazı senaryolar buldum ama işe yaramayacaklar. Genişliği en geniş nokta, en dar nokta veya ortalama olarak kullanabilirim. Tam olması gerekmiyor, ancak biraz otomatik olması gerekiyor çünkü hesaplamak için birkaç yüzüm var.


1
Başka birisinin yıllar sonra cevap araması durumunda: gis.stackexchange.com/a/181801/10919
Tom

Yanıtlar:


6

Çokgenin genişliği, minimum alan sınırlayıcı dikdörtgen kullanılarak elde edilebilir. Bu bağlantı ... sınırlayıcı kaplar ... a bir çözüm sunar. Bunu, dikdörtgenin "uzunluk" ve "genişlik" değerlerinin minimum değeri olarak hesaplayın. ArcMap için tüm lisans seviyelerinde mevcuttur (Ocak 2016'ya güncellendi)


Bu cevap 5 yaşında. Bu cevabın yayınlanmasından bu yana ArcGIS'te herhangi bir güncelleme veya bunu yapmak için başka yöntemler var mı?
dassouki

1
@Dassouki Dan Patterson (bu konuda başka bir yerde yazan) yıllardır bu tür çözümleri kodlamaktadır. ArcGIS'te güncellemeleri ve yeni çözümleri aramaya gideceğim ilk yer o.
whuber

@whuber bağlantıyı güncelledi ... heads up için teşekkürler

1

Bu, sorunuza yalnızca kısmi bir cevaptır, ancak doğru yönde bir işaretçi olabilir. Açıklığa kavuşturmak için, bu çokgen zarfın genişliğini en geniş noktada bulacaktır. Özelliğinize alan türü çift olan bir özellik ekleyin. Alan hesap makinesini açın, ardından Gelişmiş'e tıklayın. Bu kodu kod bloğuna yapıştırın ve oluşturduğunuz alanı Çıkış'a eşit olarak ayarlayın

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

9.3.1'de çalışır. Başlangıçta buraya gönderildi .


Bu zarfın genişliği gibi görünüyor: OP'nin istediği gibi görünmüyor.
whuber

Cevabımı açıklığa kavuşturmak için düzenledim, işaret ettiğiniz için teşekkürler. Orijinal soru, kesin olması gerekmediğini söyledi, bu nedenle zarfın genişliği yeterli olabilir.
Zachary

1
Zarfın genişliği maalesef mümkün olduğunca kesin değildir . Örneğin, özellik dikey doğrultuda genişliği ile hizalandığında, zarfın "genişliği" aslında özelliğin uzunluğunu tahmin eder . Zarfın genişliğinden yararlanma fikriniz, minimum zarf genişliği aramasında özelliği sistematik olarak döndüren kodda kullanılmıştır: çoğu durumda bunun makul bir genişlik tahmini olduğu meşru bir iddiası vardır. Dan Patterson'un ArcScripts'te bu tür bir katkısı olduğuna inanıyorum.
whuber
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.