145 lines
2.8 KiB
C#
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;
|
|
}
|
|
}
|