怎样获取以某点为中心,圆或环上的像素值 比如在任一图片上,指定(x,y)为中心,怎么获取:1、半径为r的圆的像素值、圆的填充区域的像素值?2、半径为r、R的两圆相减得到的圆环区域上的像素值? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 创建一个GraphicsPath和RegionGraphicsPath path = new GraphicsPath();path.AddEllipse(100, 100, 200, 200);//圆心为150,150半径为50的圆Region r = new Region(path);遍历圆的外接矩形区域for(int x = 100,x<200;x++){ for(int y = 100,y<200;y++) { if(r.Intersect(new Rectangle(x,y,1,1)) { //这就是圆内的点,获取像素即可。坐标,颜色,都有了。 } }} 谢谢楼上,不过如果我是直接操作图像数据(即图像数值矩阵),不是GetPixel取像素,该怎么办? 问一个C#加载程序集的问题 大家说说自己做过的项目,主要有哪些特点 ◆GridView简单问题请教◆ 请问被DataContractAttribute修饰的类能否被继承? C#操作注册表的问题,郁闷~~ ListItemType.Item 和 ListItemType.AlternatingItem 的区别? 消息队列问题 wpf 动态绑定和静态绑定数据 有关于IFRMAE问题 关于时间类型的查询问题,请赐教! 有朋友用过NSIS打包工具的吗?问个多语言的问题。 winform的图片和文字显示问题
GraphicsPath path = new GraphicsPath();
path.AddEllipse(100, 100, 200, 200);//圆心为150,150半径为50的圆
Region r = new Region(path);
遍历圆的外接矩形区域
for(int x = 100,x<200;x++)
{
for(int y = 100,y<200;y++)
{
if(r.Intersect(new Rectangle(x,y,1,1))
{
//这就是圆内的点,获取像素即可。坐标,颜色,都有了。
}
}
}