Files
fl-knowledge/LP/DisplayGanTaIn1XianLu.cs
T

145 lines
2.8 KiB
C#

using System;
using System.Collections.Generic;
namespace LP;
public class DisplayGanTaIn1XianLu
{
public static double mCenter_JingDu = 107.0;
public static double mCenter_WeiDu = 23.0;
public int mNumShowGanTas = 0;
public List<double> mListJingDu = null;
public List<double> mListWeiDu = null;
public List<double> mListX_m = null;
public List<double> mListY_m = null;
private int mID_XianLu = 0;
public int ID_XianLu
{
get
{
return mID_XianLu;
}
set
{
mID_XianLu = value;
}
}
public DisplayGanTaIn1XianLu()
{
if (mListJingDu == null)
{
mListJingDu = new List<double>();
}
if (mListWeiDu == null)
{
mListWeiDu = new List<double>();
}
if (mListX_m == null)
{
mListX_m = new List<double>();
}
if (mListY_m == null)
{
mListY_m = new List<double>();
}
MyClear();
mID_XianLu = 0;
}
public void MyClear()
{
mListJingDu.Clear();
mListWeiDu.Clear();
mListX_m.Clear();
mListY_m.Clear();
mNumShowGanTas = 0;
}
public void Destroy()
{
if (mListJingDu != null)
{
mListJingDu.Clear();
mListJingDu = null;
}
if (mListWeiDu != null)
{
mListWeiDu.Clear();
mListWeiDu = null;
}
if (mListX_m != null)
{
mListX_m.Clear();
mListX_m = null;
}
if (mListY_m != null)
{
mListY_m.Clear();
mListY_m = null;
}
mNumShowGanTas = 0;
}
public void Add1Point_JingDu_WeiDu(double _jingDu, double _weiDu)
{
mListJingDu.Add(_jingDu);
mListWeiDu.Add(_weiDu);
mNumShowGanTas++;
double num = 107.0;
double num2 = 23.0;
double num3 = _jingDu;
double num4 = _weiDu;
num = mCenter_JingDu;
num2 = mCenter_WeiDu;
num3 = _jingDu;
num4 = _weiDu;
num = num * Math.PI / 180.0;
num2 = num2 * Math.PI / 180.0;
num3 = num3 * Math.PI / 180.0;
num4 = num4 * Math.PI / 180.0;
double d = Math.Sin(num2) * Math.Sin(num4) + Math.Cos(num2) * Math.Cos(num4) * Math.Cos(num - num3);
d = 6371.0 * Math.Acos(d);
d *= 1000.0;
d = Math.Round(d, 1);
mListX_m.Add(d);
num = mCenter_JingDu;
num2 = mCenter_WeiDu;
num3 = _jingDu;
num4 = _weiDu;
num = num * Math.PI / 180.0;
num2 = num2 * Math.PI / 180.0;
num3 = num3 * Math.PI / 180.0;
num4 = num4 * Math.PI / 180.0;
d = Math.Sin(num2) * Math.Sin(num4) + Math.Cos(num2) * Math.Cos(num4) * Math.Cos(num - num3);
d = 6371.0 * Math.Acos(d);
d *= 1000.0;
d = Math.Round(d, 1);
mListY_m.Add(d);
}
public int MyGet_XianLuID()
{
return ID_XianLu;
}
public void MySet_XianLuID(int _id_XianLu)
{
ID_XianLu = _id_XianLu;
}
public static void MyCenterSet(double _center_jingdu, double _center_weidu)
{
mCenter_JingDu = _center_jingdu;
mCenter_WeiDu = _center_weidu;
}
}