프로그래밍
Degree 관련 각종 Convert 함수들
준이바라기얍
2021. 12. 3. 15:41
반응형
Degree 관련 각종 Convert 함수들
public static string DegreeToDMS(double d)
{
double integer = Math.Truncate(d); double remainder = Math.Round((d - integer), 7);
double min = Math.Truncate((remainder * 60)); double sec = Math.Round((remainder - (min / 60)) * 3600, 1);
if (sec == 0)
{
return string.Format("{0:00}:{1:00}.{2:000}", integer, min, sec);
}
return string.Format("{0:00}:{1:00}.{2:000}", integer, min, int.Parse(sec.ToString().Replace(".", ""))); }
public static string DegreeToDMS(double d, bool type)
{
double integer = Math.Truncate(d); double remainder = Math.Round((d - integer), 7);
double min = Math.Truncate((remainder * 60)); double sec = Math.Round((remainder - (min / 60)) * 3600, 1);
if (type) {
if (sec == 0)
{
return string.Format("{0:00}:{1:00}.{2:000}", integer, min, sec);
}
return string.Format("{0:00}:{1:00}.{2:000}", integer, min, int.Parse(sec.ToString().Replace(".", ""))); }
else {
if (sec == 0)
{
return string.Format("{0:000}:{1:00}.{2:000}", integer, min, sec);
}
return string.Format("{0:000}:{1:00}.{2:000}", integer, min, int.Parse(sec.ToString().Replace(".", ""))); }
}
public static string DegreeToDMSwithSignSuffix(double d, bool type)
{
bool isNegativeNum = false;
string suffix = string.Empty;
if (d < 0)
{
d *= -1;
isNegativeNum = true;
}
double integer = Math.Truncate(d); double remainder = Math.Round((d - integer), 7);
double min = Math.Truncate((remainder * 60)); double sec = Math.Round((remainder - (min / 60)) * 3600, 1);
if (type) {
if (isNegativeNum)
suffix = "S";
else
suffix = "N";
if (sec == 0)
{
return string.Format("{0:00}:{1:00}.{2:000} {3}", integer, min, sec, suffix);
}
return string.Format("{0:00}:{1:00}.{2:000} {3}", integer, min, int.Parse(sec.ToString().Replace(".", "")), suffix); }
else {
if (isNegativeNum)
suffix = "W";
else
suffix = "E";
if (sec == 0)
{
return string.Format("{0:000}:{1:00}.{2:000} {3}", integer, min, sec, suffix);
}
return string.Format("{0:000}:{1:00}.{2:000} {3}", integer, min, int.Parse(sec.ToString().Replace(".", "")), suffix); }
}
반응형