多边形扫描转换填充算法(即,抠图或多边形套索)

时间:2015-01-19 04:35:05
【文件属性】:

文件名称:多边形扫描转换填充算法(即,抠图或多边形套索)

文件大小:36KB

文件格式:RAR

更新时间:2015-01-19 04:35:05

抠图 多边形套索 多边形扫描转换 填充 扫描线

采用VC++语言编程实现多边形扫描转换的扫描线填充算法,可以画任意多边形。 多边形为任意多边形,如:凸多边形、凹多边形、含内环多边形。 上传的资源中没有采用通过鼠标画来实现多边形顶点的输入,而是在代码中人为给定 任意点数。 本人采用此代码,并添加了一些人工交互代码;实现了一个如Photoshop中多边 形套索的功能(即,抠图功能);完全可行,并应用于工程里面;对于小图,抠图的 时间在1s以内;对于大图(7000像素宽*5000像素高),抠图能在5s之内完成;应 该说,该代码的效率还是比较高的。 该代码适用人群:1,对于在校学生的课程设计,作业,该代码已经足够完美(从算法 角度);2,对于试图将该算法应用于实际工程项目中,上传的算法中还应该添加一些 代码,存在很细小的瑕疵。 当然,很乐意和大家一起讨论,抠图的实现;包括PS中的磁性套索;


【文件预览】:
PolyFill
----PolyFill.dsw(541B)
----PolyFillView.cpp(6KB)
----Resource.h(496B)
----PolyFillDoc.cpp(2KB)
----res()
--------PolyFillDoc.ico(1KB)
--------PolyFill.ico(1KB)
--------Toolbar.bmp(1KB)
--------PolyFill.rc2(400B)
----PolyFill.dsp(4KB)
----PolyFill.h(1KB)
----PolyFill.exe(116KB)
----PolyFill.plg(739B)
----PolyFillDoc.h(1KB)
----PolyFillView.h(2KB)
----StdAfx.cpp(210B)
----MainFrm.cpp(2KB)
----MainFrm.h(2KB)
----StdAfx.h(1KB)
----PolyFill.cpp(4KB)
----PolyFill.rc(10KB)
----PolyFill.opt(53KB)
----PolyFill.ncb(73KB)
----PolyFill.clw(2KB)
----ReadMe.txt(4KB)

网友评论

  • 你说的话比你写的代码还要多。没有套索啊。
  • 非常好的资料
  • 不是套索,是填充不规则图
  • 用不了啊,差评
  • 能够得到一部分想要的结果,理解稍微有点困难
  • 实话实说,根不是PS 套索功能,仅仅是给定点填充多边形,而且算法使用了大量的链表结构,而且是按照像素点SetPixel给颜色,效率太低,都让我不想细看,也许作者上传错了,也许是其他的,但是打这么高的分完全不对。
  • 如果能任意区域就好 了
  • 代码清楚明了
  • 怎么说呢,结果是出来了,但是判断了很多根本不需要判断的点,也开辟了很多根本用不到的内存空间,效率比较低,闪动很严重,而且没有析构,内存泄露严重 注释是有一些,但是理解起来还是需要自己再加注释 最后鼓励一下楼主吧,至少提出了一种思路
  • 好像不是我的效果!
  • 这个看上去不错,但是跟我们作业要求不同
  • 表示很差劲,跟描述差别很大
  • 不能实现内环多边形
  • 为什么只能画出一个已有的多边形?
  • 就是画多变形