Skocz do zawartości

Blokowanie pozycji Edit Point'ow


Rekomendowane odpowiedzi

Napisano

Witam,

czy jest w Mayi gdzieś opcja blokowania pozycji Edit Point'ow, tak aby nie zmieniały swojej pozycji wówczas, gdy zmienię pozycję control pointów? Wiem że control i edit pointy są ze sobą powiązane, ale może jednak jest jakiś trik to umożliwiający.

  • Odpowiedzi 10
  • Created
  • Ostatniej odpowiedzi

Top Posters In This Topic

Napisano

Dziwnie byś chciał. Tak się nie da po prostu.

Kształt krzywych NURBS jest determinowany przez pozycję CV. Edit Pointy to tylko taki wynalazek, którego się odradza używać kosztem właśnie CV, gdyż program musi sobie na podstawie EditPointów wyliczyć pozycje CV, a to jest nieco skomplikowana operacja i przy prezesunięciu jednego EditPointa, cała krzywa jest od nowa generowana. Wynika to z matematycznego opisu krzywej.

Napisano
Dziwnie byś chciał. Tak się nie da po prostu.

Kształt krzywych NURBS jest determinowany przez pozycję CV. Edit Pointy to tylko taki wynalazek, którego się odradza używać kosztem właśnie CV, gdyż program musi sobie na podstawie EditPointów wyliczyć pozycje CV, a to jest nieco skomplikowana operacja i przy prezesunięciu jednego EditPointa, cała krzywa jest od nowa generowana. Wynika to z matematycznego opisu krzywej.

Gdzie to wyczytałeś ? :) Ciekawy jestem :)

Napisano

Chyba gdzieś w jakiejś książce, może w manualu do Maya, może w książce o mentalu albo o rendermanie, nie pamiętam.

Coś oszukuję? Jeśli tak, chętnie się dowiem, jak jest w rzeczywistości.

Napisano (edytowane)

nie chce wyjść na polaczka pieniacza, który szuka zadymy tu i tam ale:

z tego co gdzieś tam kiedyś wyczytałem to EP występuje w miejscu sklejenia 2 funkcji Beziera, tyle ze CV rozpina Beziera a EP znajduje sie na końcach/początkach kolejnych funkcji sklejanych. Wiec jeżeli mamy sytuacje: w której krzywa ma przechodzić przez punkty to logiczne ze lepiej użyć EP do tworzenia, niz np CV i bawić sie w wyliczanie.

I na Boga to nie są jakieś mega skomplikowane wzory do przekształcenia transformacji podczas poruszania EP na CV.

A do blokowania:

string $curveShape = "curveShape1";
setAttr -lock true ($curveShape + ".cp
[*].xv");
setAttr -lock true ($curveShape + ".cp
[*].yv");
setAttr -lock true ($curveShape + ".cp
[*].zv");

 

Da sie, ale myślę ze jest to lekko pod gore, jestem wyznawca raczej prostych scen, chodzi mi o to ze jak ktoś weźmie do reki to sie nie połapie

Dziś miałem ochotę sobie popisać - wybaczcie :)

Edytowane przez bareja
Napisano (edytowane)

Niech ci będzie. Ale poszukam, gdzie to wyczytałem - może źle zrozumiałem.

 

W helpie Maya napisano:

n theory, moving edit points would be an excellent way to edit a curve, since they lie on the curve itself. Unfortunately, it doesn’t work out that way. This is because the shape of the curve determines the positions of edit points, not the other way around.

 

Maya does allow you to move edit points by “reverse engineering” the curve from the edit point. When you move an edit point, the Move tool tries to find a curve which passes through the new edit point location.

 

Because this process is time-consuming and has an infinite number of solutions, the tool must place constraints on how moving the edit point affects the curve. Because of these constraints, you usually cannot make major changes well by moving edit points. Moving edit points is best for small scale reshaping.

 

Even though it is slightly less intuitive, the only way to reshape the curve with complete power is by moving CVs.

Edytowane przez piotrek
Napisano

Dzięki Piotrek, dzięki Bareja! Też gdzieś wyczytałem, że Edit pointy są sztucznym tworem, wyliczanym na podstawie całej krzywej iteracyjnie przy każdej transformacji. Dobrze, że można prostym skryptem blokować ich pozycje. Dzięki za skrypt!

Napisano (edytowane)

Ale chyba jak zablokujecie pozycje ep to maya nie pozwoli poruszac control pointami?

W sensie ze jesli np zablokujemy pozycje ep1 (liczac je od 0) to mozemy ruszac tylko cv0.

A znow ruszajac CV0 nawet bez blokowania nie mamy wplywu na polozenie EP1.

Tak wiec to blokowanie nie ma sensu bo blokuje rownoczesnie zablokowanie cv odpowiedzialnych za najblizsze otoczenie punktu.

 

Mysle ze autor watku chce sobie zrobic "bezierowe" sterowanie nurbsami,

czyli postawienie punktu i wyginanie go modyfikatorami przypominajacymi nieco cv ;]

Jesli mam racje - to gdzies kiedys na highend.3d wiedzialem skrypt do mai wprowadzajacy do niej wlasnie krzywie beziera. A jak nie ma to - moze Bareja napisze jakis konwerter ? ;P

Edytowane przez ca mel
Napisano (edytowane)
Ale chyba jak zablokujecie pozycje ep to maya nie pozwoli poruszac control pointami?

dokładnie, blokujesz krzywą

Mysle ze autor watku chce sobie zrobic "bezierowe" sterowanie nurbsami,

czyli postawienie punktu i wyginanie go modyfikatorami przypominajacymi nieco cv ;]

bezier_curve_ncvs = curve_degree+1;

Jesli mam racje - to gdzies kiedys na highend.3d wiedzialem skrypt do mai wprowadzajacy do niej wlasnie krzywie beziera. A jak nie ma to - moze Bareja napisze jakis konwerter ? ;P

jak będzie trzeba ;)

Edytowane przez bareja
Napisano

Dzięki chłopaki, widzę, że rozpętałem niezłą burzę merytoryczną ;) Ale to chyba dobrze. Przecież chodzi o to, żeby się uczyć, uczyć i jeszcze raz uczyć. Pzdro dla wszystkich!

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się



×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Wykorzystujemy cookies. Przeczytaj więcej Polityka prywatności