• 大小: 61KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-14
  • 语言: C#
  • 标签: D8  

资源简介

D8算法,运用c# 实现水流流向与汇流统计,基于D8算法实现确定各格网内水流方向。D8算法较为基础,主要是算法思想学习。

资源截图

代码片段和文件信息

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

namespace D8
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        int row col;
        double[] D8=new double[8];
        int[] resultr;
        int[] GY;
        int index;
        double max;
        int hx;
        bool flag = true;

        private void Form1_Load(object sender EventArgs e)
        {

        }

        private void button1_Click(object sender EventArgs e)
        {
            try
            {
                Bitmap bt = (Bitmap)pictureBox1.Image; 
                row = bt.Height; 
                col = bt.Width; 
                result = new int[row col]; 
                r = new int[row col]; 
                GY = new int[row col];
                for (int i = 0; i < row; i++)
                {
                    for (int j = 0; j < col; j++) 
                    {
                        result[i j] = 0; 
                        r[i j] = 0; 
                    }
                }

                for (int i = 0; i < row; i++)  //逐列
                {
                    for (int j = 0; j < col; j++)  //逐行
                    {
                        GY[i j] = Gray(bt.GetPixel(j i).R bt.GetPixel(j i).G bt.GetPixel(j i).B); 
                    }
                }
                for (int i = 0; i < row; i++)//逐列
                {
                    for (int j = 0; j < col; j++) //逐行
                    {
                        #region 九宫格
                        if (i != 0 && j != 0)
                        {
                            D8[5] = (GY[i j] - GY[i - 1 j - 1]) / Math.Sqrt(2);
                        }
                        else
                        {
                            D8[5] = -1;
                        }
                        if (i != 0 && j != col - 1)
                        {
                            D8[7] = (GY[i j] - GY[i - 1 j + 1]) / Math.Sqrt(2);
                        }
                        else
                        {
                            D8[7] = -1;
                        }
                        if (i != row - 1 && j != col - 1)
                        {
                            D8[1] = (GY[i j] - GY[i + 1 j + 1]) / Math.Sqrt(2);
                        }
                        else
                        {
                            D8[1] = -1;
                        }
                        if (i != row - 1 && j != 0)
                        {
                            D8[3] = (GY[i j] - GY[i + 1 j - 1]) / Math.Sqrt(2);
                        }
                        else
                        {
                            D8[3] = -1;
                        }
     

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

     文件      13824  2014-05-12 14:32  D8\bin\Debug\D8.exe

     文件      34304  2014-05-12 14:32  D8\bin\Debug\D8.pdb

     文件      23168  2019-01-10 19:50  D8\bin\Debug\D8.vshost.exe

     文件        490  2010-03-17 22:39  D8\bin\Debug\D8.vshost.exe.manifest

     文件       3663  2013-09-10 15:46  D8\D8.csproj

     文件        845  2014-03-25 14:33  D8\D8.sln

    ..A..H.     17408  2014-03-25 14:33  D8\D8.suo

    ..A..H.     40960  2019-01-10 21:29  D8\D8.v12.suo

     文件       9640  2019-01-10 21:29  D8\Form1.cs

     文件       8703  2013-09-11 13:19  D8\Form1.Designer.cs

     文件       5817  2013-09-11 13:19  D8\Form1.resx

     文件       1318  2019-01-10 19:50  D8\obj\x86\Debug\D8.csproj.FileListAbsolute.txt

     文件        975  2014-05-12 14:32  D8\obj\x86\Debug\D8.csproj.GenerateResource.Cache

     文件      16097  2014-05-12 14:32  D8\obj\x86\Debug\D8.csprojResolveAssemblyReference.cache

     文件      13824  2014-05-12 14:32  D8\obj\x86\Debug\D8.exe

     文件        180  2014-03-25 14:04  D8\obj\x86\Debug\D8.Form1.resources

     文件      34304  2014-05-12 14:32  D8\obj\x86\Debug\D8.pdb

     文件        180  2014-03-25 14:04  D8\obj\x86\Debug\D8.Properties.Resources.resources

     文件       5426  2019-01-09 17:32  D8\obj\x86\Debug\DesignTimeResolveAssemblyReferences.cache

     文件       7129  2019-01-10 19:49  D8\obj\x86\Debug\DesignTimeResolveAssemblyReferencesInput.cache

     文件        483  2013-09-10 15:23  D8\Program.cs

     文件       1336  2013-09-10 15:23  D8\Properties\AssemblyInfo.cs

     文件       2856  2013-09-10 15:23  D8\Properties\Resources.Designer.cs

     文件       5612  2013-09-10 15:23  D8\Properties\Resources.resx

     文件       1089  2013-09-10 15:23  D8\Properties\Settings.Designer.cs

     文件        249  2013-09-10 15:23  D8\Properties\Settings.settings

    ..AD...         0  2014-05-12 14:34  D8\obj\x86\Debug\TempPE

     目录          0  2019-01-09 17:32  D8\obj\x86\Debug

     目录          0  2014-03-25 14:03  D8\bin\Debug

     目录          0  2013-09-10 15:23  D8\obj\x86

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

评论

共有 条评论