Kafes üzerindeki değerler verildiğinde, verimli bir şekilde ayarlanmış konturlar oluşturmak için hangi algoritmayı kullanabilirim?


9

Ağım var, yüzler F, kenarlar Eve köşeler Vve önceden tanımlanmış seviye ayarlanmış kontürler listem var.

Konturları en verimli şekilde oluşturmak için hangi algoritmayı kullanabilirim?

resim açıklamasını buraya girin

Konturun bir grafiği yukarıda gösterilmiştir. Aynı renkteki çizgiler aynız değer.


1
Neden inişli çıkışlı?
Graviton

1
emin değilim, bu benim için alakalı bir soru gibi görünüyor. Downvoter? Bir sorun, izolinlerin mesh verileri için özellikle iyi tanımlanmış görünmemeleridir. Çözmeye çalıştığınız sorunun grafiksel bir örneğini verebilir misiniz?
Aron Ahmadia

Yanıtlar:


4

Her elemanın üzerinde bir ilmek ile ve sonra her eleman için kenarların üzerinde bir ilmek ile yapılabilir. Daha sonra, her bir kenar için belirli bir konturun kenarı geçerse koordinatını belirleyin, yani konturun, köşe değerlerinin kapsadığı aralıkta bir değer alıp almadığını kontrol edin. Kontur iki kenarı geçerse, kenarlarda algılanan geçiş noktaları arasındaki koordinatlar arasında bir çizgi çizin.

Bunu tüm elemanlar için yapmak kontür yaratacaktır. Aynı zamanda, her bir üçgen üzerinde enterpolasyon yoluyla daha ince bir ağa rafine etmek ve daha sonra rafine edilmiş ağın delaunay üçgenlemelerini kullanmak ve daha sonra, yeterince iyi bir çözünürlük elde etmek için yukarıda tarif edildiği gibi rutini uygulamak bir seçenektir.


Bunun için çalışma zamanı O(Fn), nerede F yüz numarası ve nkontur sayısı, bu algoritmanın çalışma zamanında geliştirmek için yine de var mı?
Graviton

@Graviton: Sorun büyüklüğünde lineer ölçeklemeden çok daha iyi olacağınızı sanmıyorum ...
Allan P. Engsig-Karup
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.