Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как посчитать центр тяжести для n точечных масс в 3D?


ЦТ ©   (2006-05-02 04:03:00) 

Только быстро.


ЦТ   (2006-05-08 06:10:00) [1]

У меня попутно вопрос возник. Что можно почитать про развесовку вертексов в скелетной анимации?
Можно как нибудь сделать эффект, чтобы вертексы между двумя костями шли не линейно, а по дуге?


ЦТ   (2006-05-06 04:36:00) [2]


> XProger ©

Спасибо!


XProger   (2006-05-04 19:16:00) [3]

Думкин, BDS 2006 поддерживает перегрузку операторов. Поделив каждую компоненту вектора на N (имхо) должны получить среднюю массу сосредоточенную в центре тяжести :)


Думкин   (2006-05-04 06:13:00) [4]

Да и делить тогда надо на другое. :)
И еще:
sv := sv / N;
Я сильно отстал от жизни и такое уже?


Думкин   (2006-05-04 06:09:00) [5]

> XProger ©   (03.05.06 18:26) [5]

1. Рискни. И твой риск оправдан.

Но согласисиь с простым - это совсем иное таки.


XProger   (2006-05-03 18:26:00) [6]

Думкин, рискну предположить, что необходимо умножить все v[i] на массу? :)


Думкин   (2006-05-02 11:54:00) [7]

> XProger ©   (02.05.06 11:50) [3]

Массы точечные. Но никто не говорил, что одинаковые.


XProger   (2006-05-02 11:50:00) [8]


sv := Vector(0, 0, 0);
for i := 0 to N - 1 do
 sv := sv + v[i];
sv := sv / N;


Думкин   (2006-05-02 06:33:00) [9]

А считается по каждой координате просто:
x(?y,z?) = S(m(x)xdx)/S(m(x)dx)
Если к точечным, то интеграл Стильтьесса, а проще - проссуммировать.


Думкин   (2006-05-02 06:25:00) [10]

А причем тут 3D?
Как быстро посчитать центр масс в бухгалтерии? Только быстро.


Наверх

Титульная страница Поиск, карта сайта Написать письмо