![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 24 Pomógł: 0 Dołączył: 3.04.2011 Ostrzeżenie: (0%) ![]() ![]() |
Tworzę aplikację przy użyciu biblioteki FabricJs i muszę wykonać efekt "magnes". Tzn. np. mam dwie linie proste, jedna w poziomie, a druga w pionie, w przypadku, gdy krańce linii będą blisko siebie (tutaj określę sobie jak blisko) to mają się przyciągnąć i połączyć, aby nie trzeba było "ręcznie" precyzyjnie ustawiać połączenia krańców linii. W przypadku, gdy linie są w pionie i poziomie to nie ma problemu, ale gorzej, gdy występuje rotacją, wtedy parametry punktu górnego mam dzięki funkcji getTop i getLeft, ale nie wiem, jak obliczyć po rotacji współrzędne punktu dolnego, mam jedynie kąt.
|
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 806 Pomógł: 1828 Dołączył: 11.03.2014 Ostrzeżenie: (0%) ![]() ![]() |
x2=x1+sin(kat)*dlugosc_linii;
y2=y1+cos(kat)*dlugosc_linii; -------------------- |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 24 Pomógł: 0 Dołączył: 3.04.2011 Ostrzeżenie: (0%) ![]() ![]() |
Nie do końca to działa, przy np. gdy linie pionową "zrotuję" do poziomu to oba punkty mają różne wartości y, np. jeden 400, a drugi 200, a powinny być takie same czyli 400, gdy nie rotuję linii to działa dobrze.
Ten post edytował andyet 2.07.2015, 18:34:11 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 6 806 Pomógł: 1828 Dołączył: 11.03.2014 Ostrzeżenie: (0%) ![]() ![]() |
Jakie współrzędne początku oraz długość linii?
-------------------- |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 10:07 |