• 大小: 39KB
    文件类型: .rar
    金币: 2
    下载: 0 次
    发布日期: 2024-01-19
  • 语言: 其他
  • 标签: 插值  

资源简介

通过反距离加权插值算法,将离散的控制点按Grid格网的规则节点进行插值!

资源截图

代码片段和文件信息

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using System.Collections;
using System.Diagnostics;//用来计算程序运行时间所引用的类

namespace 反距离加权插值算法_正方形搜索域_
{
    class Program
    {
        static void Main(string[] args)
        {
            System.Diagnostics.Stopwatch sj = new Stopwatch();//定义一个时间的变量
            sj.Start();//开始计时
            double Xmax = 0;
            double Ymax = 0;
            double Zmax = 0;
            double Xmin = 0;
            double Ymin = 0;
            double Zmin = 0;
            int N;
            #region//从txt文本中提取控制点数据
            //从txt文本中提取控制点数据
            FileStream fs = new FileStream(@“C:\Users\zhangyongrui\Desktop\控制点.txt“ FileMode.Open);//FileStream打开文件
            StreamReader Reader = new StreamReader(fs Encoding.Default);//读取文件
            ArrayList list = new ArrayList();//定义一个动态数组list
            string line = Reader.ReadLine();//读取文件中的一行字符
            while ((line = Reader.ReadLine()) != null)//将文件中的数据写入到list数组中
            {
                list.Add(line);
            }
            Reader.Close();
            fs.Close();
            #endregion
            N = list.Count;//记录控制点的总数(list.Count记录的是数组的行数)
            double PEsum = 0;//各点高程值之和
            int Esum = 0;
            double PZsum = 0;//平均高程值
            double[] ERlist = new double[N 3];
            #region//求控制点平均高程
            //求控制点的高程平均值
            for (int i = 0; i < N; i++)
            {
                Esum++;
                string[] Templist = list[i].ToString().Split(‘‘);//将文件中第i行中的文本型转换成字符串型并存储到数组Templist中(Split(‘‘)的意思是将list一行中的字符串传递给数组Templist数组,并规定该数组中的字符串是以“,”分隔开的!)
                for (int j = 0; j < 3; j++)
                {
                    ERlist[i j] = Convert.ToDouble(Templist[j]);
                }
                if (i == 0)
                {
                    Xmax = Xmin = ERlist[0 0];
                    Ymax = Ymin = ERlist[0 1];
                    Zmax = Zmin = ERlist[0 2];
                }
                if (i > 0)
                {
                    double Xtemp = ERlist[i 0];
                    double Ytemp = ERlist[i 1];
                    double Ztemp = ERlist[i 2];
                    if (Xtemp > Xmax)
                    {
                        Xmax = Xtemp;
                    }
                    if (Xtemp < Xmin)
                    {
                        Xmin = Xtemp;
                    }
                    if (Ytemp > Ymax)
                    {
                        Ymax = Ytemp;
                    }
                    if (Ytemp < Ymin)
                    {
                        Ymin = Ytemp;
                    }
                    if (Ztemp > Zmax)
                    {
                        Zmax = Ztemp;
                    }
                    if (Ztemp < Zmin)
                    {
                        Zmin = Ztemp

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

     文件       9216  2014-06-14 21:51  反距离加权插值算法(正方形搜索域)\反距离加权插值算法(正方形搜索域)\bin\Debug\反距离加权插值算法(正方形搜索域).exe

     文件      22016  2014-06-14 21:51  反距离加权插值算法(正方形搜索域)\反距离加权插值算法(正方形搜索域)\bin\Debug\反距离加权插值算法(正方形搜索域).pdb

     文件      11600  2014-06-14 22:02  反距离加权插值算法(正方形搜索域)\反距离加权插值算法(正方形搜索域)\bin\Debug\反距离加权插值算法(正方形搜索域).vshost.exe

     文件        490  2010-03-17 22:39  反距离加权插值算法(正方形搜索域)\反距离加权插值算法(正方形搜索域)\bin\Debug\反距离加权插值算法(正方形搜索域).vshost.exe.manifest

     文件       6109  2014-06-14 21:51  反距离加权插值算法(正方形搜索域)\反距离加权插值算法(正方形搜索域)\obj\x86\Debug\DesignTimeResolveAssemblyReferencesInput.cache

     文件       1200  2014-06-14 22:02  反距离加权插值算法(正方形搜索域)\反距离加权插值算法(正方形搜索域)\obj\x86\Debug\反距离加权插值算法(正方形搜索域).csproj.FileListAbsolute.txt

     文件       7049  2014-06-11 09:00  反距离加权插值算法(正方形搜索域)\反距离加权插值算法(正方形搜索域)\obj\x86\Debug\反距离加权插值算法(正方形搜索域).csprojResolveAssemblyReference.cache

     文件       9216  2014-06-14 21:51  反距离加权插值算法(正方形搜索域)\反距离加权插值算法(正方形搜索域)\obj\x86\Debug\反距离加权插值算法(正方形搜索域).exe

     文件      22016  2014-06-14 21:51  反距离加权插值算法(正方形搜索域)\反距离加权插值算法(正方形搜索域)\obj\x86\Debug\反距离加权插值算法(正方形搜索域).pdb

     文件       8600  2014-06-13 22:13  反距离加权插值算法(正方形搜索域)\反距离加权插值算法(正方形搜索域)\Program.cs

     文件       1434  2014-06-10 19:54  反距离加权插值算法(正方形搜索域)\反距离加权插值算法(正方形搜索域)\Properties\AssemblyInfo.cs

     文件       3261  2014-06-13 22:02  反距离加权插值算法(正方形搜索域)\反距离加权插值算法(正方形搜索域)\QY.cs

     文件       2552  2014-06-11 09:45  反距离加权插值算法(正方形搜索域)\反距离加权插值算法(正方形搜索域)\反距离加权插值算法(正方形搜索域).csproj

     文件        995  2014-06-10 19:54  反距离加权插值算法(正方形搜索域)\反距离加权插值算法(正方形搜索域).sln

    ..A..H.     19968  2014-06-14 22:02  反距离加权插值算法(正方形搜索域)\反距离加权插值算法(正方形搜索域).suo

     目录          0  2014-06-10 19:54  反距离加权插值算法(正方形搜索域)\反距离加权插值算法(正方形搜索域)\obj\x86\Debug\TempPE

     目录          0  2014-07-18 16:07  反距离加权插值算法(正方形搜索域)\反距离加权插值算法(正方形搜索域)\obj\x86\Debug

     目录          0  2014-07-18 16:07  反距离加权插值算法(正方形搜索域)\反距离加权插值算法(正方形搜索域)\bin\Debug

     目录          0  2014-06-10 19:54  反距离加权插值算法(正方形搜索域)\反距离加权插值算法(正方形搜索域)\bin\Release

     目录          0  2014-07-18 16:07  反距离加权插值算法(正方形搜索域)\反距离加权插值算法(正方形搜索域)\obj\x86

     目录          0  2014-07-18 16:07  反距离加权插值算法(正方形搜索域)\反距离加权插值算法(正方形搜索域)\bin

     目录          0  2014-07-18 16:07  反距离加权插值算法(正方形搜索域)\反距离加权插值算法(正方形搜索域)\obj

     目录          0  2014-07-18 16:07  反距离加权插值算法(正方形搜索域)\反距离加权插值算法(正方形搜索域)\Properties

     目录          0  2014-07-18 16:07  反距离加权插值算法(正方形搜索域)\反距离加权插值算法(正方形搜索域)

     目录          0  2014-07-18 16:07  反距离加权插值算法(正方形搜索域)

----------- ---------  ---------- -----  ----

               125722                    25


评论

共有 条评论