• 大小: 73KB
    文件类型: .zip
    金币: 2
    下载: 2 次
    发布日期: 2021-06-12
  • 语言: 其他
  • 标签: 缓和曲线  

资源简介

缓和曲线及圆曲线放样计算代码,VS2010开发工程

资源截图

代码片段和文件信息

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace 放样黄
{
    public class Compute
    {
        public double Dist(double X1 double Y1 double X2 double Y2)
        {
            double d;
            d = Math.Sqrt((X2 - X1) * (X2 - X1) + (Y2 - Y1) * (Y2 - Y1));
            return d;
        }

        public double Azimuth(double X1 double Y1 double X2 double Y2)
        {
            double dx dy Angle1 Cal;
            dx = X2 - X1;
            dy = Y2 - Y1;
            Angle1 = Math.Atan(dy / dx);


            if (dx != 0 && dy != 0)             //此处分情况讨论
            {
                if (dx > 0 && dy < 0)
                    Cal = 2 * 3.141592653 + Angle1;
                else if (dx < 0 && dy < 0)
                    Cal = 3.141592653 + Angle1;
                else if (dx < 0 && dy > 0)
                    Cal = 3.141592653 + Angle1;
                else
                    Cal = Angle1;
            }
            else if (dx == 0 && dy == 0)
            { Cal = 0; }
            else if (dx != 0 && dy == 0)
            {
                if (dx > 0)
                    Cal = 0;
                else
                    Cal = 3.141592653;
            }
            else             //此情况下只有dx=0&&dy!=0分情况当dy>0时,方位角是90度
            {
                if (dy > 0)
                    Cal = 0.5 * 3.141592653;
                else
                    Cal = 3 * 3.141592653 / 2;
            }
            return Cal;
        }


        public double arc2dms(double Val)
        {
            int iDegree iMin;
            double dSec dDms;
            Val = Val * 180 / 3.141592653;
            //Val; //十进制角度(度)控件变量
            //dDms;//度分秒格式角度,控件变量
            double dTmp; //临时变量

            iDegree = (int)Val;//截取度
            dTmp = (Val - iDegree) * 60;//把度的小数部分转换为分
            iMin = (int)dTmp;//截取分
            dSec = (dTmp - iMin) * 60;//把分的小数部分转换为秒
            dDms = iDegree + (double)iMin / 100 + dSec / 10000;//合并为度分秒形式

            return dDms;
        }


        public double arc2ang(double Val)
        {
            double ang;
            ang = Val * 180 / 3.141592653;

            return ang;
        }

        public double dms2arc(double Val)
        {
            int iDegree iMin;
            double dSec arc dDeg;
            //dDeg; //十进制角度(度)
            //Val;//度分秒格式角度

            iDegree = (int)Val; //截取整数部分,即度
            iMin = (int)((Val - iDegree) * 100); //截取分
            dSec = ((Val - iDegree) * 100 - iMin) * 100;//获得秒
            dDeg = iDegree + (double)iMin / 60 + dSec / 3600; //把分和秒转换成度,再相加
            arc = dDeg * 3.141592653 / 180;

            return arc;
        }

        public double dms2ang(double Val)
        {
            int iDegree iMin;
            double dSec dDeg;
            //dDeg; //十进制角度(度)
            //Val;//度分秒格式角度

            iDegree 

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2012-11-28 20:47  放样黄\
     目录           0  2012-11-28 20:47  放样黄\bin\
     目录           0  2012-11-28 20:47  放样黄\bin\Debug\
     文件       35840  2012-12-02 08:15  放样黄\bin\Debug\放样黄.exe
     文件         391  2012-11-30 19:49  放样黄\bin\Debug\放样黄.exe.mbxcfg
     文件       44544  2012-12-02 08:15  放样黄\bin\Debug\放样黄.pdb
     文件       11608  2012-12-04 12:10  放样黄\bin\Debug\放样黄.vshost.exe
     文件         490  2010-03-17 22:39  放样黄\bin\Debug\放样黄.vshost.exe.manifest
     目录           0  2012-11-28 23:33  放样黄\bin\Release\
     文件        4415  2012-11-29 02:32  放样黄\Compute.cs
     文件       12452  2012-12-02 08:15  放样黄\Form1.cs
     文件       38824  2012-12-02 08:15  放样黄\Form1.Designer.cs
     文件       12549  2012-12-02 08:15  放样黄\Form1.resx
     目录           0  2012-11-28 20:47  放样黄\obj\
     目录           0  2012-11-28 20:47  放样黄\obj\x86\
     目录           0  2012-11-28 20:47  放样黄\obj\x86\Debug\
     文件        6118  2012-12-02 08:15  放样黄\obj\x86\Debug\DesignTimeResolveAssemblyReferencesInput.cache
     文件         466  2012-12-02 08:15  放样黄\obj\x86\Debug\GenerateResource-ResGen.read.1.tlog
     文件        1098  2012-12-02 08:15  放样黄\obj\x86\Debug\GenerateResource-ResGen.write.1.tlog
     目录           0  2012-11-28 20:47  放样黄\obj\x86\Debug\TempPE\
     文件        1599  2012-12-04 12:10  放样黄\obj\x86\Debug\放样黄.csproj.FileListAbsolute.txt
     文件       35840  2012-12-02 08:15  放样黄\obj\x86\Debug\放样黄.exe
     文件        4852  2012-12-02 08:15  放样黄\obj\x86\Debug\放样黄.Form1.resources
     文件       44544  2012-12-02 08:15  放样黄\obj\x86\Debug\放样黄.pdb
     文件         180  2012-12-02 08:15  放样黄\obj\x86\Debug\放样黄.Properties.Resources.resources
     文件         502  2012-11-28 23:08  放样黄\Program.cs
     目录           0  2012-11-28 20:47  放样黄\Properties\
     文件        1368  2012-11-28 20:47  放样黄\Properties\AssemblyInfo.cs
     文件        2866  2012-11-28 20:47  放样黄\Properties\Resources.Designer.cs
     文件        5612  2012-11-28 20:47  放样黄\Properties\Resources.resx
     文件        1092  2012-11-28 20:47  放样黄\Properties\Settings.Designer.cs
............此处省略4个文件信息

评论

共有 条评论