Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2004.10.31;
Скачать: [xml.tar.bz2];

Вниз

У кого есть описание или help по FastLib?   Найти похожие ветки 

 
Knight ©   (2004-10-09 01:45) [0]

...


 
Knight ©   (2004-10-09 01:55) [1]

А может кто так подскажет, какой процедурой можно вписать изображение в трапецию?


 
Knight ©   (2004-10-09 11:36) [2]

Как вращать нашёл, как выводить по трём точкам, делая сдвиг, тоже, а вот как в трапецию... никак :(


 
Fenik   (2004-10-10 10:49) [3]

Хелпа нет. И процедуры такой там тоже нет.
Самостоятельно. :)


 
Mihey_temporary ©   (2004-10-10 13:23) [4]

Используй Graphic32 (а именно TProjectiveTransformation).


 
Fenik   (2004-10-10 14:53) [5]

Дурацкий, но работающий вариант для TBitmap:

procedure Trapezoid(Src, Dest: TBitmap; Amount: Word; Style: Byte);
var dx, x, y, c, cx, w, h: Integer;
   p0, p1: pByteArray;
   Bmp: TBitmap;
begin
 w := Src.Width - 1;
 h := Src.Height - 1;
 Dest.Width := w+1;
 Dest.Height := h+1;
 Dest.Canvas.FillRect(Rect(0,0,Dest.Width,Dest.Height));
 Amount := Min(Src.Width div 2, Amount);
 Bmp := TBitmap.Create;
 try
   Bmp.Height := 1;
   Bmp.Width := w+1;
   Bmp.PixelFormat := pf24bit;
   cx := Src.Width div 2;
   p0 := Bmp.ScanLine[0];
   for y := 0 to h do begin
     p1 := Src.ScanLine[y];
     c := 0;
     for x := 0 to w do begin
       p0[c] := p1[c];
       p0[c+1] := p1[c+1];
       p0[c+2] := p1[c+2];
       Inc(c, 3);
     end;
     case style of
       0: dx := Round((h-y)/(h+1) * Amount);
       1: dx := Round(y/(h+1) * Amount);
     end;
     Dest.Canvas.StretchDraw(Rect(dx, y, (w+1) - dx, y+1), Bmp);
   end;
 finally
   Bmp.Free;
 end;
end;


Style = 0 - сжимаем вверху
Style = 1 - сжимаем внизу


 
Knight ©   (2004-10-10 18:24) [6]


> [5] Fenik   (10.10.04 14:53)
> Дурацкий, но работающий вариант для TBitmap:

У меня получилось примерно тоже самое... но это слишком тормознуто по-определению :(


> [4] Mihey_temporary ©   (10.10.04 13:23)
> Используй Graphic32 (а именно TProjectiveTransformation).

Где-то такое видел... гляну :)


 
Knight ©   (2004-10-10 19:11) [7]


> [4] Mihey_temporary ©   (10.10.04 13:23)

Спасибо... то, что надо :)



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

Форум: "Потрепаться";
Текущий архив: 2004.10.31;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.033 c
1-1097605384
Peter
2004-10-12 22:23
2004.10.31
Диалог о сохранении при закрытии приложения


4-1096284308
Rifo
2004-09-27 15:25
2004.10.31
Отключение монитора.


3-1096884772
_none_
2004-10-04 14:12
2004.10.31
stream read error


1-1098255088
BillyJeans
2004-10-20 10:51
2004.10.31
Как отловить окончание изменения TrackBar


1-1097828947
STM
2004-10-15 12:29
2004.10.31
Application.Minimize





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский