BGRABitmap图像操作10:透视映射
来源:互联网 发布:js代码封装的好处 编辑:程序博客网 时间:2024/06/10 04:25
透视映射允许改变每一个点的深度。跟前一篇的图相比,看不出啥区别。
unit Unit1;{$mode objfpc}{$H+}interfaceuses Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, BGRABitmap, BGRABitmapTypes, BGRATransform;type { TForm1 } TForm1 = class(TForm) procedure FormPaint(Sender: TObject); private { private declarations } public { public declarations } end;var Form1: TForm1;implementation{$R *.lfm}{ TForm1 }procedure TForm1.FormPaint(Sender: TObject);var image: TBGRABitmap; tex: TBGRABitmap;begin image := TBGRABitmap.Create(ClientWidth,ClientHeight, BGRABlack ); tex:= TBGRABitmap.Create('image.png'); image.FillPolyPerspectiveMapping( [PointF(110,10), PointF(250,10), PointF(350,260), PointF(10,260)], [75, 75, 50, 50], tex, [PointF(0,0), PointF(tex.width-1,0), PointF(tex.Width-1,tex.Height-1), PointF(0,tex.Height-1)], true); tex.Free; image.Draw(Canvas,0,0,True); image.free;end;end.
深度是神马意思?改变一个点的深度试试。50改成750。
procedure TForm1.FormPaint(Sender: TObject);var image: TBGRABitmap; tex: TBGRABitmap;begin image := TBGRABitmap.Create(ClientWidth,ClientHeight, BGRABlack ); tex:= TBGRABitmap.Create('image.png'); image.FillPolyPerspectiveMapping( [PointF(110,10), PointF(250,10), PointF(350,260), PointF(10,260)], [75, 75, 50, 750], tex, [PointF(0,0), PointF(tex.width-1,0), PointF(tex.Width-1,tex.Height-1), PointF(0,tex.Height-1)], true); tex.Free; image.Draw(Canvas,0,0,True); image.free;end;
运行之:
0 0
- BGRABitmap图像操作10:透视映射
- BGRABitmap图像操作10:使用纹理映射
- BGRABitmap图像操作10:使用Affine 变换进行纹理映射
- BGRABitmap图像操作10:线型映射,让纹理图贴到多边形的边上
- BGRABitmap图像操作14:BGRABitmap的 Canvas2D
- BGRABitmap图像操作8:纹理
- BGRABitmap图像操作5:擦除部分图像
- BGRABitmap图像操作13:BGRABitmap的坐标系统
- BGRABitmap图像操作4:直接操作像素
- BGRABitmap图像操作12:文本操作功能
- BGRABitmap图像操作5:使用层、遮罩
- BGRABitmap图像操作6:平的线头
- BGRABitmap图像操作7:贝塞尔曲线
- BGRABitmap图像操作8:彩色纹理
- BGRABitmap图像操作8:彩色纹理,阈值
- BGRABitmap图像操作8:大理石纹理
- BGRABitmap图像操作8:木质纹理
- BGRABitmap图像操作11:组合变形
- BGRABitmap图像操作10:线型映射,让纹理图贴到多边形的边上
- memcache 存取图片的过程
- Activity的生命周期
- S_ISDIR 常见的宏
- IPC机制
- BGRABitmap图像操作10:透视映射
- OkHttp
- View的事件体系
- 在ubuntu 12.04 RTAI 下安装LABVIEW
- 栈的基本应用_将字符串逆序输出
- Http协议(重点)
- Java Application如何打jar包
- SQL复杂的查询
- Design Tic-Tac-Toe