Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Action script 2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=49)
-   -   Вектора (http://www.flasher.ru/forum/showthread.php?t=51689)

Nucer 19.11.2003 15:41

Вектора
 
Стала тут передо мной такая задача: нужно сложить восемь векторов и , соответсвенно, в результате получить вектор. И ещё это всё в трёхмерной системе координат. Если кто знает, то хоть поскажите как это можно реализовать...

Usnul 19.11.2003 16:07

Длинна вектора - vl
Координаты начала вектора:
v1x
v1y
v1z
Координаты конца вектора:
v2x
v2y
v2z
Флеш код выдающий значение vl:

vxl=Math.sqrt(Math.pow(Math.sqrt(Math.pow(v1x,2))-Math.sqrt(Math.pow(v2x,2)),2));
vyl=Math.sqrt(Math.pow(Math.sqrt(Math.pow(v1y,2))-Math.sqrt(Math.pow(v2y,2)),2));
vzl=Math.sqrt(Math.pow(Math.sqrt(Math.pow(v1z,2))-Math.sqrt(Math.pow(v2z,2)),2));
vl=Maths.sqr(Maths.pow(Maths.sqr(Maths.pow(vxl,2)+Maths.pow(vyl,2)),2)+Maths.pow(vzl,2));
trace("Vector length = '"+vl+"'.");

прошу прощения за грамоздкость

старина смерть 20.11.2003 14:01

Просто складываешь соответствующие координаты векторов.
К примеру
ResultVector = (x1+x2+x3+x4+x5+x6+x7+x8, y1+y2+y3+y4+y5+y6+y7+y8, z1+z2+z3+z4+z5+z6+z7+z8)

старина смерть 20.11.2003 14:03

Цитата:

Оригинал написал(а) Usnul
Длинна вектора - vl
Координаты начала вектора:
v1x
v1y
v1z
Координаты конца вектора:
v2x
v2y
v2z
Флеш код выдающий значение vl:

vxl=Math.sqrt(Math.pow(Math.sqrt(Math.pow(v1x,2))-Math.sqrt(Math.pow(v2x,2)),2));
vyl=Math.sqrt(Math.pow(Math.sqrt(Math.pow(v1y,2))-Math.sqrt(Math.pow(v2y,2)),2));
vzl=Math.sqrt(Math.pow(Math.sqrt(Math.pow(v1z,2))-Math.sqrt(Math.pow(v2z,2)),2));
vl=Maths.sqr(Maths.pow(Maths.sqr(Maths.pow(vxl,2)+Maths.pow(vyl,2)),2)+Maths.pow(vzl,2));
trace("Vector length = '"+vl+"'.");

прошу прощения за грамоздкость

А Usnul прогнал, простите за выражение.

Nucer 21.11.2003 00:11

Спасибо всем, я у же и сам догнал

Usnul 22.11.2003 05:15

ок, как расчитать длинну одного - единственного вектора? валяй, я не претендовал на краткость, но решение верно.


Часовой пояс GMT +4, время: 08:30.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.