Вниз
Скачать: CL | DM;

Генерация кривой   Найти похожие ветки 

← →
Broot   (2004-04-05 03:19) [0]

Привет Всем! Помогите соединить две точки на экране плавно изгибающейся волновой линией. Количество волн = Random(3)+1. Частота и амплитуда - тоже случайные числа, у каждой волны свои.


← →
Думкин ©   (2004-04-05 06:54) [1]

Поточнее бы про частоты и амплитуды. Я бы не про частоту сказал, а про длину волны.
На вскидку.
1. Поворотом и движением располагаем точки на оси Ох.
2. Если есть длины волн - бьем участок на эти длины. На каждом участке строим части синусоид.
3. Поворачиваем и двигаем обратно.

Проблема, в общем случае, нет гладкости в месте стыковок. Можно добиться (видимо - навскидку), если стыковку производить не в узлах, а в некоторой окрестности.

Если покрасивее, то делал бы суперпозицию нескольких простых синусоид с разными(даже не кратными) длинами волн. Но это - от преследуемой цели.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.024 c
3-1080737687
Xim
2004-03-31 16:54
2004.04.25
Хранимая процедура


1-1081378880
Romula
2004-04-08 03:01
2004.04.25
TPageControl


8-1074354648
Ianus
2004-01-17 18:50
2004.04.25
РЕЧЬ, ЕЕ рапознование....


14-1080821740
GanibalLector
2004-04-01 16:15
2004.04.25
INTEGER


8-1073769307
DDA
2004-01-11 00:15
2004.04.25
прозрачный круг по середине TImage




   Наверх