![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
||||
|
||||
|
Подскажите, каким образом можно быстро расянуть массив данных (например увеличить вдвое). В матлабе делается функцией spline, каким образом её можно реализовать на дельфи, что-то адекватных решений гугл не выдал по запросу "delphi интерполяция сплайнами".
|
|
#2
|
||||
|
||||
|
Код:
SetLength(my_array,Length(my_array)*2) |
|
#3
|
||||
|
||||
|
Нененен, не изменение длины массива, а растяжение еще и данных в нем (например было 1 2 3 растянули в двое, стало 1 0 2 0 3 0, надо заместо нуликов подставить значения, в данном случае 1.5, 2.5, 3.5), т.е. кубическим сплайном заполнять образующиеся пустоты.
Вроде нашел пример кубического сплайна на дельфи. |
|
#4
|
||||
|
||||
|
На ум приходит только создать массив двойной величины и поочередно заполнять: 0-значение, полу-сумма 0+1-го, 1-значение, полу-сумма 1+2-го и так до упора.
|
|
#5
|
||||
|
||||
|
Через кубический сплайн надо, ибо если напрямую - уродство какое-то получится.
Разбираю пример кубического сплайна от KOOL, довольно ужасно написано. Последний раз редактировалось M.A.D.M.A.N., 11.01.2013 в 14:04. |
|
#6
|
||||
|
||||
|
Где в KOOL-е это описано?
|
|
#7
|
||||
|
||||
|
|
|
#8
|
||||
|
||||
|
Короче все, тема себя исчерпала, разобрался. Можно закрывать/удалять.
|