Files
Shrlalgo.RvKits/ShrlAlgoToolkit.RevitAddins/RvIndependent/MetroGauges/RoadCfg.cs
2025-04-24 20:56:44 +08:00

135 lines
2.9 KiB
C#

using System.Collections;
namespace ShrlAlgoToolkit.RevitAddins.RvIndependent.MetroGauges
{
public class Units
{
public enum UnitType
{
Metric,
Imperial
}
public string angularUnit;
public string areaUnit;
public string diameterUnit;
public string directionUnit;
public string linearUnit;
public string pressureUnit;
public string temperatureUnit;
public string VolumUnit;
}
public class Project
{
public string Name { get; set; }
}
public class Application
{
public string desc;
public string manufacturer;
public string manufacturerURL;
public string timeStamp;
public string version;
public string Name { get; set; }
}
public class Alignment
{
public ArrayList CoordGeom;
public ArrayList Pa;
public double Length { get; set; }
public double StaStart { get; set; }
public string Name { get; set; }
}
//纵断面
public class ProfAlign
{
public double StaPile { get; set; }
public double StaElva { get; set; }
public double EndPile { get; set; }
public double EndElva { get; set; }
public double CircPile { get; set; }
public double CirElva { get; set; }
public List<CircCurve> CircCurves { get; set; }
//纵断面线
public string Name { get; set; }
}
public class ProfSurf
{
public List<Point2D> PntList2D;
public string Name { get; set; }
}
public class Point2D { }
public class HorLine
{
public double StartY { get; set; }
public double StartPX { get; set; }
public double EndPY { get; set; }
public double EndPX { get; set; }
public double Dir { get; set; }
public double Length { get; set; }
//角度转弧度
public static double j2h(double j)
{
return Math.PI * j / 180;
}
}
public class HorCurve
{
public double Length { get; set; }
public double Chord { get; set; }
public double StartPY { get; set; }
public double StartPX { get; set; }
public double CentPY { get; set; }
public double CentPX { get; set; }
public double EndPY { get; set; }
public double EndPX { get; set; }
public double PIPY { get; set; }
public double PIPX { get; set; }
public double DirEnd { get; set; }
public double DirStart { get; set; }
public int Radius { get; set; }
public string Rot { get; set; }
public string CrvType { get; set; }
public double Delta(double dirEnd, double dirStart)
{
return dirEnd - dirStart;
}
}
public class Spiral
{
public double Length { get; set; }
public double RadiusStart { get; set; }
public double StartPY { get; set; }
public double StartPX { get; set; }
public double PIPY { get; set; }
public double PIPX { get; set; }
public double EndPY { get; set; }
public double EndPX { get; set; }
public string RadiusEnd { get; set; }
public string SpiType { get; set; }
}
public class CircCurve
{
public double Length { get; set; }
public double CentPile { get; set; }
public double CentElve { get; set; }
public int Radius { get; set; }
}
}