资源简介
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个文件信息
评论
共有 条评论