• 大小: 267KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-08
  • 语言: C#
  • 标签: 图像填充  

资源简介

计算机图形学 扫描线种子填充算法实现 1、初始化堆栈。   2、种子压入堆栈。   3、while(堆栈非空)     {      (1)从堆栈弹出种子象素。      (2)如果种子象素尚未填充,则:       a.求出种子区段:xleft、xright;       b.填充整个区段。       c.检查相邻的上扫描线的xleft≤x≤xright区间内,是否存在需要填充的新区段,如果存在的话,则把每个新区段在xleft≤x≤xright范围内的最右边的象素,作为新的种子象素依次压入堆栈。       d.检查相邻的下扫描线的xleft≤x≤xright区间内,是否存在需要填充的新区段,如果存在的话,则把每个新区段在 xleft≤x≤xright范围内的最右边的象素,作为新的种子象素依次压入堆栈。     }

资源截图

代码片段和文件信息

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace ImageTest
{
    public partial class Form1 : Form
    {
       
        private Bitmap _bmp;//存放位图
        private byte[] rgbValues;//存放位图数据
        private int WidthOfBmp;//位图的宽度
        private int point_X point_Y;//记录鼠标某时刻点击的位置
        private bool isNeedFill = false;//记录是否标记要填充
        private List stack = new List();//用来模拟实现堆栈的动态数组0为栈底,长度为栈顶
        //  |  7  |     栈顶
        //  |  6  |
        //  |  5  |
        //  |  4  |
        //  |  3  |
        //  |  2  |
        //  |  1  |
        //  |  0  |     栈底

        public Form1()
        {
            InitializeComponent();
            _bmp = new Bitmap(this.pictureBox1.Image);
        }        

        #region 打开文件
        private void button2_Click(object sender EventArgs e)
        {
            try
            {
                OpenFileDialog newOFD = new OpenFileDialog();
                newOFD.Filter = “图片文件(*.jpg*.gif*.bmp*.png)|*.jpg;*.gif;*.bmp;*.png“;
                newOFD.title = “打开图片“;
                newOFD.RestoreDirectory = true;
                if (newOFD.ShowDialog() == DialogResult.OK)
                {
                    try
                    {
                        //得到文件名及路径
                        string sPicPaht = newOFD.FileName.ToString();
                        this.pictureBox1.Image = new Bitmap(sPicPaht);
                        _bmp = new Bitmap(this.pictureBox1.Image);
                        WidthOfBmp = _bmp.Width;
                        isNeedFill = false;
                        button3.Text = “开始填充“;
                        pictureBox1.Cursor = Cursors.Default;
                        Refresh();
                    }
                    catch (Exception)
                    {
                        MessageBox.Show(string.Format(“无效图像文件 {0} !“ newOFD.FileName) “无效位图文件“ MessageBoxButtons.OK MessageBoxIcon.Exclamation);
                    }
                }

            }
            catch (Exception h)
            {

                MessageBox.Show(h.Message.ToString());
            }


        }       
        #endregion

        #region 拾取颜色
        private void panel_getColor_MouseClick(object sender MouseEventArgs e)
        {
            ColorDialog colorDialog = new ColorDialog();
            colorDialog.AllowFullOpen = true;
            colorDialog.FullOpen = true;
            colorDialog.ShowHelp = true;
            colorDialog.Color = Color.White;//初始化当前文本框中的字体颜色,当用户在ColorDialog对话框中点击“取消“按钮
            colorDialog.ShowDialog();
            this.panel_getColor.BackColor = colorDialog.Color;
        } 
        #endregion

        #region 判断颜色是否在容差范围
        /// 
        /// 判断颜色是否在容差范围
        /// 

        /// 

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      56832  2010-04-19 18:03  ImageTest\ImageTest\bin\Debug\ImageTest.exe

     文件      38400  2010-04-19 18:03  ImageTest\ImageTest\bin\Debug\ImageTest.pdb

     文件      14328  2010-04-19 18:03  ImageTest\ImageTest\bin\Debug\ImageTest.vshost.exe

     文件      14802  2010-04-19 17:25  ImageTest\ImageTest\Form1.cs

     文件       8724  2010-04-19 17:08  ImageTest\ImageTest\Form1.Designer.cs

     文件      67729  2010-04-19 17:08  ImageTest\ImageTest\Form1.resx

     文件       4041  2010-04-19 18:02  ImageTest\ImageTest\ImageTest.csproj

     文件       1830  2010-04-19 18:03  ImageTest\ImageTest\obj\Debug\ImageTest.csproj.FileListAbsolute.txt

     文件        847  2010-04-19 17:08  ImageTest\ImageTest\obj\Debug\ImageTest.csproj.GenerateResource.Cache

     文件      56832  2010-04-19 18:03  ImageTest\ImageTest\obj\Debug\ImageTest.exe

     文件      41562  2010-04-19 18:03  ImageTest\ImageTest\obj\Debug\ImageTest.Form1.resources

     文件      38400  2010-04-19 18:03  ImageTest\ImageTest\obj\Debug\ImageTest.pdb

     文件        180  2010-04-19 18:03  ImageTest\ImageTest\obj\Debug\ImageTest.Properties.Resources.resources

     文件        546  2010-04-19 18:02  ImageTest\ImageTest\obj\Release\ImageTest.csproj.FileListAbsolute.txt

     文件        847  2010-04-19 18:02  ImageTest\ImageTest\obj\Release\ImageTest.csproj.GenerateResource.Cache

     文件      55808  2010-04-19 18:02  ImageTest\ImageTest\obj\Release\ImageTest.exe

     文件      41562  2010-04-19 18:02  ImageTest\ImageTest\obj\Release\ImageTest.Form1.resources

     文件      26112  2010-04-19 18:02  ImageTest\ImageTest\obj\Release\ImageTest.pdb

     文件        180  2010-04-19 18:02  ImageTest\ImageTest\obj\Release\ImageTest.Properties.Resources.resources

     文件        578  2010-04-19 18:02  ImageTest\ImageTest\obj\x86\Release\ImageTest.csproj.FileListAbsolute.txt

     文件        847  2010-04-19 18:02  ImageTest\ImageTest\obj\x86\Release\ImageTest.csproj.GenerateResource.Cache

     文件      55808  2010-04-19 18:02  ImageTest\ImageTest\obj\x86\Release\ImageTest.exe

     文件      41562  2010-04-19 18:02  ImageTest\ImageTest\obj\x86\Release\ImageTest.Form1.resources

     文件      26112  2010-04-19 18:02  ImageTest\ImageTest\obj\x86\Release\ImageTest.pdb

     文件        180  2010-04-19 18:02  ImageTest\ImageTest\obj\x86\Release\ImageTest.Properties.Resources.resources

     文件        470  2010-04-03 16:19  ImageTest\ImageTest\Program.cs

     文件       1350  2010-04-03 16:19  ImageTest\ImageTest\Properties\AssemblyInfo.cs

     文件       2868  2010-04-03 16:19  ImageTest\ImageTest\Properties\Resources.Designer.cs

     文件       5612  2010-04-03 16:19  ImageTest\ImageTest\Properties\Resources.resx

     文件       1094  2010-04-03 16:19  ImageTest\ImageTest\Properties\Settings.Designer.cs

............此处省略22个文件信息

评论

共有 条评论