资源简介

利用C#编写的道路放线计算程序,内附测试数据与计算结果。

资源截图

代码片段和文件信息

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

namespace 道路放线_程序
{
    class DataProcess
    {
        //计算转角及转向
        public  void DriftAngle(DataStruct.Curve A DataStruct.Point B DataStruct.Point C)
        {
            double A0 A1;
            A0 = AzCompute(BA.JD);
            A1 = AzCompute(A.JDC);
            A.A0 = A0;
            if (A0 >= 0 && A0 < Math.PI)
            {
                if (A1 > A0 && A1 < (A0 + Math.PI))
                {
                    A.c = 1;
                    A.alf = A1 - A0;
                }
                else
                {
                    A.c = -1;
                    if(A1>=0)
                        A.alf = A0 - A1;
                    else
                        A.alf = A0 - A1+2*Math.PI;  
                }
            }
            else
            {
                if(A1(A0-Math.PI))
                {
                    A.c = -1;
                    A.alf = A0 - A1;
                }
                else
                {
                    A.c = 1;
                    if(A1>A0)
                        A.alf = A1 - A0;
                    else
                        A.alf = A1 - A0+2*Math.PI;
                }
            }      
        }

        //计算方位角
        public double AzCompute(DataStruct.Point ADataStruct.Point B)
        {
            double az=0;
            if (A.X == B.X)
            {
                if (A.Y < B.Y)
                    az = Math.PI / 2;
                else
                    az = Math.PI / 2 * 3;
            }
            else
            {
                if(A.X                    az = Math.Atan((B.Y - A.Y) / (B.X - A.X));
                else if(A.XB.Y)
                    az = 2*Math.PI+Math.Atan((B.Y - A.Y) / (B.X - A.X));
                else if(A.X>B.X&&A.Y                    az = Math.PI + Math.Atan((B.Y - A.Y) / (B.X - A.X));
                else if(A.X>B.X&&A.Y>=B.Y)
                    az = Math.PI + Math.Atan((B.Y - A.Y) / (B.X - A.X));
            }
            return az;
        }
        
        //计算曲线综合要素及各主点里程
        public void EleCompute(DataStruct.Curve[] Aint numDataStruct.Point B)
        {
            for(int i=0;i            {
                if(A[i].TCLength!=0)
                {
                    A[i].p = A[i].TCLength * A[i].TCLength / (24 * A[i].Radius) - A[i].TCLength * A[i].TCLength * A[i].TCLength * A[i].TCLength /
                    (2688 * A[i].Radius * A[i].Radius * A[i].Radius);
                    A[i].E0 = (A[i].Radius + A[i].p) / Math.Cos(A[i].alf / 2) - A[i].Radius;
                    A[i].q = A[i].TangentLength * 2 - A[i].Length;
                    if (i == 0)
                    {
                        A[i].JD.Mi = Math.Sqrt((B.X - A[i].JD.X) * (B.X - A[i].JD.X) + (B.Y - A[i].JD.Y) * (B.Y

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件        3393  2016-06-11 17:45  道路放线大作业\report.txt
     文件        3406  2016-05-27 08:34  道路放线大作业\报告.txt
     目录           0  2016-05-05 09:23  道路放线大作业\道路放线-程序\
     文件        1026  2016-05-05 09:23  道路放线大作业\道路放线-程序\道路放线-程序.sln
     文件       45568  2016-08-01 22:02  道路放线大作业\道路放线-程序\道路放线-程序.v12.suo
     目录           0  2016-05-28 12:04  道路放线大作业\道路放线-程序\道路放线-程序\
     文件         187  2016-05-05 09:23  道路放线大作业\道路放线-程序\道路放线-程序\App.config
     目录           0  2016-05-05 09:23  道路放线大作业\道路放线-程序\道路放线-程序\bin\
     目录           0  2016-05-07 19:54  道路放线大作业\道路放线-程序\道路放线-程序\bin\Debug\
     文件       31744  2016-07-31 16:50  道路放线大作业\道路放线-程序\道路放线-程序\bin\Debug\道路放线-程序.exe
     文件         187  2016-05-05 09:23  道路放线大作业\道路放线-程序\道路放线-程序\bin\Debug\道路放线-程序.exe.config
     文件       46592  2016-07-31 16:50  道路放线大作业\道路放线-程序\道路放线-程序\bin\Debug\道路放线-程序.pdb
     文件       24224  2016-08-01 10:51  道路放线大作业\道路放线-程序\道路放线-程序\bin\Debug\道路放线-程序.vshost.exe
     文件         187  2016-05-05 09:23  道路放线大作业\道路放线-程序\道路放线-程序\bin\Debug\道路放线-程序.vshost.exe.config
     文件         490  2010-03-17 22:39  道路放线大作业\道路放线-程序\道路放线-程序\bin\Debug\道路放线-程序.vshost.exe.manifest
     目录           0  2016-05-05 09:23  道路放线大作业\道路放线-程序\道路放线-程序\bin\Release\
     文件       13830  2016-05-27 08:27  道路放线大作业\道路放线-程序\道路放线-程序\DataProcess.cs
     文件        1398  2016-05-20 16:21  道路放线大作业\道路放线-程序\道路放线-程序\DataStruct.cs
     文件       18060  2016-05-28 12:04  道路放线大作业\道路放线-程序\道路放线-程序\Form1.cs
     文件       22512  2016-05-28 12:04  道路放线大作业\道路放线-程序\道路放线-程序\Form1.Designer.cs
     文件        6584  2016-05-28 12:03  道路放线大作业\道路放线-程序\道路放线-程序\Form1.resx
     目录           0  2016-05-05 09:23  道路放线大作业\道路放线-程序\道路放线-程序\obj\
     目录           0  2016-07-31 16:50  道路放线大作业\道路放线-程序\道路放线-程序\obj\Debug\
     文件        1453  2016-05-06 13:24  道路放线大作业\道路放线-程序\道路放线-程序\obj\Debug\DesignTimeResolveAssemblyReferences.cache
     文件        7257  2016-05-07 16:46  道路放线大作业\道路放线-程序\道路放线-程序\obj\Debug\DesignTimeResolveAssemblyReferencesInput.cache
     文件           0  2016-05-05 09:23  道路放线大作业\道路放线-程序\道路放线-程序\obj\Debug\TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs
     文件           0  2016-05-05 09:23  道路放线大作业\道路放线-程序\道路放线-程序\obj\Debug\TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs
     文件           0  2016-05-05 09:23  道路放线大作业\道路放线-程序\道路放线-程序\obj\Debug\TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs
     目录           0  2016-05-05 09:23  道路放线大作业\道路放线-程序\道路放线-程序\obj\Debug\TempPE\
     文件         180  2016-05-28 12:04  道路放线大作业\道路放线-程序\道路放线-程序\obj\Debug\道路放线_程序.Form1.resources
     文件         180  2016-05-07 17:12  道路放线大作业\道路放线-程序\道路放线-程序\obj\Debug\道路放线_程序.Properties.Resources.resources
............此处省略19个文件信息

评论

共有 条评论