Canvas.Pixels 实例:判断一点是否在区域中
The Windows 3.1 and Windows 95 GDI heap is limited in regards
to scan converting large and complex regions such as Ellipses,
Polygons, and PolyPolygons. One "Brute Force" technique is to
create an "in memory" monochrome bitmap and draw the
required shape in black. You can then test to see if a given point in
the bitmap is black or white. If the test pixel is black, then the given
point is "in" the given region.
Example:
procedure TForm1.Button1Click(Sender: TObject);
var
bm : TBitmap;
begin
bm := TBitmap.Create;
bm.Monochrome := true;
bm.Height := 100;
bm.Width := 100;
bm.Canvas.Brush.Color := clWhite;
bm.Canvas.FillRect(Rect(0, 0, 100, 100));
bm.Canvas.Brush.Color := clBlack;
bm.Canvas.Pen.Color := clBlack;
bm.Canvas.Ellipse(10, 10, 90, 90);
if bm.Canvas.Pixels[20, 20] = clBlack then
ShowMessage('Point : (20, 20) is in region') else
ShowMessage('Point : (20, 20) is not in region');
if bm.Canvas.Pixels[50, 50] = clBlack then
ShowMessage('Point : (50, 50) is in region') else
ShowMessage('Point : (50, 50) is not in region');
bm.Free;
end;
Canvas.Pixels 实例:判断一点是否在区域中的更多相关文章
- c# 判断点是否在区域内 点在区域内 在多边形内 判断
方法一 算法 : public int isLeft(Point P0, Point P1,Point P2) { int abc= ((P1.X - P0.X) ...
- ylbtech-Java-Runoob-高级教程-实例-数组:15. Java 实例 – 判断数组是否相等
ylbtech-Java-Runoob-高级教程-实例-数组:15. Java 实例 – 判断数组是否相等 1.返回顶部 1. Java 实例 - 判断数组是否相等 Java 实例 以下实例演示了如 ...
- C 语言实例 - 判断回文数
C 语言实例 - 判断回文数 判断一个数是否为回文数. 设n是一任意自然数.若将n的各位数字反向排列所得自然数n1与n相等,则称n为一回文数.例如,若n=,则称n为一回文数:但若n=,则n不是回文数 ...
- C 语言实例 - 判断数字为几位数
C 语言实例 - 判断数字为几位数 用户输入数字,判断该数字是几位数. 实例 #include <stdio.h> int main() { long long n; ; printf(& ...
- C 语言实例 - 判断字母
C 语言实例 - 判断字母 C 语言实例 C 语言实例 用户输入一个字符,判断该字符是否为一个字母. 实例 #include <stdio.h> int main() { char c; ...
- C 语言实例 - 判断正数/负数
C 语言实例 - 判断正数/负数 用户输入一个数字,判断该数字是正数还是负数或是零. 实例 #include <stdio.h> int main() { double number; p ...
- C 语言实例 - 判断奇数/偶数
C 语言实例 - 判断奇数/偶数 C 语言实例 C 语言实例 以下实例判断用户输入的整数是奇数还是偶数. 实例 #include <stdio.h> int main() { int nu ...
- C 语言实例 - 判断元音/辅音
C 语言实例 - 判断元音/辅音 C 语言实例 C 语言实例 判断输入的字母是元音,还是辅音. 英语有26个字母,元音只包括 a.e.i.o.u 这五个字母,其余的都为辅音.y是半元音.半辅音字母,但 ...
- Java-Runoob-高级教程-实例-字符串:10. Java 实例 - 测试两个字符串区域是否相等-uncheck
ylbtech-Java-Runoob-高级教程-实例-字符串:10. Java 实例 - 测试两个字符串区域是否相等 1.返回顶部 1. Java 实例 - 测试两个字符串区域是否相等 Java ...
随机推荐
- docker把web jar包制作成镜像
1.新建一个spring boot项目 并使用maven打成jar包,放到linux(centos7)环境上. 运行 java -jar hello.jar 后结果如下(这里项目对外提供的端口是90 ...
- 201621123005《Java程序设计》第九次实验总结
201621123005<Java程序设计>第九周实验总结 1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结集合与泛型相关内容. 1.2 选做:收集你认为有用的代码片段 ...
- L194
For many of us, asking for help is it difficult concept. We may feel as if we are admitting a weakne ...
- 解决Eclipse中新创建的Maven项目不自动创建web.xml文件
1. 通过J2EE tools 2.项目右键-properties-project facets-勾选dynamic web moudle
- VMware 虚拟机快照、克隆、磁盘扩容
1. 快照 快照是虚拟机某个时间点上完整系统的镜像,可以在虚拟机内部通过快照文件恢复系统到之前的节点. 拍摄快照: 恢复快照: 2. 克隆 克隆是原始虚拟机全部状态的一个拷贝,是脱离原始虚拟机独立存在 ...
- HDU3335 Divisibility Dilworth定理+最小路径覆盖
首先需要一些概念: 有向图,最小路径覆盖,最大独立集,Dilworth,偏序集,跳舞链(DLX).... 理解一: 对于DAG图,有:最大独立集=点-二分匹配数,二分匹配数=最小路径覆盖. 而无向图, ...
- MAC远程桌面连接问题
如图,始终提示“证书或相关链无效.” 点击“取消” 点击“编辑连接...” 点击“打开” 点击“安全性” 选择“即使验证失败,也始终连接” OK
- C# winform javascript 互调用
1.准备环境 vs2010 2. 项目结构 index.htm 为需要显示的web页面 其中需要操作提供的方式的C# 调用的javascript 方法 以及进行测试javascript 调用C# 方法 ...
- PTHREAD的WINDOWS开发包
PTHREAD的WINDOWS开发包 网站地址是http://sourceware.org/pthreads-win32/
- curl查询公网出口IP
liuzhizhi@lzz-rmbp|logs # curl ipinfo.io { "ip": "114.110.1.38", "hostname& ...