Главная страница
    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.038 c
10-1056018991
landy
2003-06-19 14:36
2004.10.31
Вызов метода сервера через SocketConnection


8-1091443808
sachem
2004-08-02 14:50
2004.10.31
Плавная смена картинок


14-1097636482
MBo
2004-10-13 07:01
2004.10.31
Delphi2005


1-1097754397
}|{yk
2004-10-14 15:46
2004.10.31
Формат даты в DateTimePicker


3-1096622628
vic1
2004-10-01 13:23
2004.10.31
Построение дерева





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский