当前位置:服务支持 >  软件文章 >  【代码分享-04-Delft3d结构化网格转MIKE非结构化网格存储及Delft3D、MIKE网格生成前处理GIS数据转换

【代码分享-04-Delft3d结构化网格转MIKE非结构化网格存储及Delft3D、MIKE网格生成前处理GIS数据转换

阅读数 187
点赞 0
article_banner

///

        /// 将GIS的线矢量shp文件转换为MIKE网格绘制需要的边界xyz文件(格式为:x y connectivity)

        ///

        ///

        ///

        public static void Shp2xyz(string shpfile, string xyzfile)

        {

            if (File.Exists(shpfile))

            {

                //存储所有线段的坐标点

                List<</SPAN>IList<</SPAN>Coordinate>> lstpts = new List<</SPAN>IList<</SPAN>Coordinate>>();

 

                IFeatureSet fs = FeatureSet.Open(shpfile);

                IFeatureList lstf = fs.Features;

                foreach (Feature f in lstf)

                {

                    lstpts.Add(f.Coordinates);

                }

 

                //写x,y,connectivity格式ascii文件

                StringBuilder sb = new StringBuilder();

                int idx = 1;

                foreach (IList<</SPAN>Coordinate> lstpt in lstpts)

                {

                    int idxpt = 1;

                    foreach (Coordinate coord in lstpt)

                    {

                        if (idxpt == 1)

                        sb.AppendLine(string.Format(" {0} {1} {2}", coord.X, coord.Y,0));

                        else if (idxpt == lstpt.Count) sb.AppendLine(string.Format(" {0} {1} {2}", coord.X, coord.Y, 0));

                        else

                            sb.AppendLine(string.Format(" {0} {1} {2}", coord.X, coord.Y, 1));

                        idxpt++;

                    }

                    idx++;

                }

                StreamWriter sw = new StreamWriter(xyzfile);

                sw.Write(sb.ToString());

                sw.Flush();

                sw.Close();

            }       

        }


免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删
相关文章
QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空