Вверх ↑
Ответов: 963
Рейтинг: 12
#1: 2017-08-02 13:13:58 ЛС | профиль | цитата
И так "Супер Зум" вернулся !




Несильно лучше чем было в версии на ХайАсме
Пытался, кстати "поднять" старую версию вправив ей мозги но УВЫ ... оказалось проще переписать с нуля ... хотя теперь можно будет сделать "Реинженериг" обратно в ХайАсм "Основной код" преобразования занимает несколько строк ...

Type
RG=Record R,G,B : byte; end;
Arr=Array [0..1] of RG;
...
//LI[] - Список кадров
// SQ корень квадратный из количества кадров (которое фиксировано привязано к квадратичному ряду ... )
SQ:=trunc(Sqrt(StrToint(Self.ComboBox1.Text)));
B.SetSize(ABS(RR.Right -RR.Left)*SQ,ABS(RR.Bottom -RR.Top)*SQ);//"Размер результата" размер_болка*SQ

for J:=0 to b.Height-1 do begin
for I:=0 to b.Width-1 do
begin
J1:=RR.Top*sq+J;I1:=RR.Left*sq +i;
B1:=TBitmap( LI[(i1 mod sq)+SQ*((J1 mod sq))]);
B.BeginUpdate(False);// это прикол LCL в ХайАсме с его Кол не нужен
Arr(b.ScanLine[J]^)[I]:=Arr(b1.ScanLine[J1 div sq]^)[i1 div sq];
B.EndUpdate(False);// тоже самое "только для LCL "
end;
//...
end;
//"Вот и вся недолга" !

Да чуть не забыл ...
Собственно новая версия "Подзорной трубы" Truba_DS_0_0058.7z

Продолжение следует !
карма: 0

0
Редактировалось 6 раз(а), последний 2017-08-30 01:32:17