Алгоритъм на Loop



Дата24.10.2018
Размер14 Kb.
#95931
Алгоритъм на Loop

Този subdivision алгоритъм е създаден през 1987 година от Charles Loop. Работи само с мрежи от триъгълници. На всяка стъпка от алгоритъма всеки триъгълник се подразделя на четири нови триъгълника по следния начин:




  1. за всяко ребро се изчислява ребрена точка като афинна комбинация на четири точки: 3/8 от сумата на двата му края + 1/8 от сумата на двете точки, които участват в един и същи триъгълник с реброто.

2) за всеки връх v се изчислява връхна точка като афинна комбинация на всички съседни върхове (т.е. върховете, които са съединени с ребро с върха v) по следната формула:

Vнов = (1-n α)*Vстар + α* Σ(съседните върхове),

където n е степента на върха (броят на съседните върхове) и

α=3/16 при n=3,

α=1/n*[5/8-(3/8+1/4cos(2π/n))^2] при n>3.


3) oт всеки триъгълник се получават 4 нови. Единият – като се свържат 3-те ребрени точки, другите 3 –като се свърже връхната точка в някой връх с ребрените точки на двете ребра, инцидентни с върха.
Ще отбележим, че ако всички върхове са от степен 6, граничната повърхнина, получена чрез многократно подразделяне, има гладкост С2. Върховете с различна от 6 степен клонят към връх, в чиято околност граничната повърхнина е само C1.

User guide
натискане на клавиш S : още една subdivision стъпка
натискане на клавиш Z : zoom in (уголемяване на образа)
• натискане на клавиш X : zoom out (смаляване на образа)
• натискане на клавиш H : скриване/показване на координатните оси
drag с мишката : завъртане на образа
• десен бутон на мишката : извежда меню, от което можем да изберем един от няколко off файла, съответстващи на различни многостени
Каталог: ~krassivl


Сподели с приятели:




©obuch.info 2024
отнасят до администрацията

    Начална страница