SWiSH Forum
Forum użytkowników programów SWiSH

SWiSH Max - drag vertexu?

shastaan - Wto 21 Lip, 2009 12:32
Temat postu: drag vertexu?
Czołem,

Na www.beksinski.pl natrafiłem na coś co potrzebuję rozpracować - te linie które zmieniają kształt w zależności od położenia myszki.

Mi chodzi o efekt nieco prostszy bo potrzebuję, żeby tylko końcówka linii poruszała się wraz z pewnym obiektem.

Pozwolę sobie to porównać do słonecznika, przykładowo, który sterczy sobie z ziemi (jeden koniec łodygi cały czas w tym samym miejscu) ale wiatr porusza jego kwiatem więc porusza się tez górny koniec łodygi.

Ma ktoś na to pomysł? Od czego zacząć? Co poczytać? Gdzie poszperać?

sl01k - Czw 23 Lip, 2009 19:17

moze nie jest to do konca to co chcesz ale napewno bardzo bliskie temu ...
znalazlem to kiedys gdzies ale niewiem nawet gdzie :)
www.sl01k.cal.pl/line_menu.rar

shastaan - Czw 23 Lip, 2009 20:34

Tydzień spędze na sprawdzaniu co można odjąć żeby działało dalej. Potem tydzień na tym, żeby zrozumieć jak działa.
A do tego wszystkiego będę mógł się zabrać dopiero za tydzień. x]

Niemniej jednak to dobry punkt wyjścia. =] Bardzo dziękuje, sl01k.

Jak ktoś ma coś prostszego (albo chętniej bardziej trafnego) to poproszę.

sl01k - Czw 23 Lip, 2009 20:52

wiem ze to nie jest do konca to co jest ci potrzebne ale skrypt jest bardzo prosty
wszytsko dzieje sie w MC "nav"
Kod:
onFrame (1) {
    duplicateMovieClip("line", "newLine1", 1);
    newLine1._x = p1._x + p1.kp._x;
    newLine1._y = p1._y + p1.kp._y;
    newLine1._xscale = p2._x + p2.kp._x - (p1._x + p1.kp._x);
    newLine1._yscale = p2._y + p2.kp._y - (p1._y + p1.kp._y);
    duplicateMovieClip("line", "newLine2", 2);
    newLine2._x = p2._x + p2.kp._x;
    newLine2._y = p2._y + p2.kp._y;
    newLine2._xscale = p3._x + p3.kp._x - (p2._x + p2.kp._x);
    newLine2._yscale = p3._y + p3.kp._y - (p2._y + p2.kp._y);
    duplicateMovieClip("line", "newLine3", 3);
    newLine3._x = p3._x + p3.kp._x;
    newLine3._y = p3._y + p3.kp._y;
    newLine3._xscale = p4._x + p4.kp._x - (p3._x + p3.kp._x);
    newLine3._yscale = p4._y + p4.kp._y - (p3._y + p3.kp._y);
    duplicateMovieClip("line", "newLine4", 4);
    newLine4._x = p4._x + p4.kp._x;
    newLine4._y = p4._y + p4.kp._y;
    newLine4._xscale = p5._x + p5.kp._x - (p4._x + p4.kp._x);
    newLine4._yscale = p5._y + p5.kp._y - (p4._y + p4.kp._y);
}
tutaj sa tworzone linie ... przeciez widac jak na dloni ...

jezeli chodzi o zagięcie linie w gładnie łuki... to wydaje mi sie ze w SM2 jest to niewykonalne i musial bys to zrobic w flashu ... :) ... wiec tego co chcesz raczej nie osiagniesz...

shastaan - Czw 23 Lip, 2009 23:00

Myśle, że to wystarczy w zupełności. Raz jeszcze dzięki.

Powered by phpBB modified by Przemo © 2003 phpBB Group