arcmap十进制度和度分秒相互转换
生活随笔
收集整理的這篇文章主要介紹了
arcmap十进制度和度分秒相互转换
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
十進(jìn)制度轉(zhuǎn)度分秒
新建文本型字段,使用字段計(jì)算器構(gòu)建python表達(dá)式將十進(jìn)制度轉(zhuǎn)換成度分秒,代碼如下:
def dd2dms(dd):degree=(int)(float(dd))minute=(int)((float(dd)-degree)*60)second=(float(dd)-degree-float(minute)/60)*3600dms=str(degree)+' '+str(minute)+ ' '+str(second)return dms代碼首行中的dd為存儲十進(jìn)制經(jīng)緯度字段名稱,工具運(yùn)行之前需要將調(diào)用函數(shù)中的EXT_MIN_X替換為存儲十進(jìn)制度經(jīng)緯度字段名稱
度分秒轉(zhuǎn)十進(jìn)制度
新建雙精度類型字段,使用字段計(jì)算器構(gòu)建VB腳本將十進(jìn)制度轉(zhuǎn)換成度分秒,代碼如下:
Dim Degrees Dim Minutes Dim Seconds Dim DMS Dim DDDMS = Split([Latitude]) Degrees = CDbl(DMS(0)) Minutes = CDbl(DMS(1)) Seconds = CDbl(DMS(2)) If Degrees < 0 ThenDD = -(Seconds/3600) - (Minutes/60) + Degrees ElseDD = (Seconds/3600) + (Minutes/60) + Degrees End If在代碼的第六行中,DMS = Split([Latitude])括號 [ ] 中的文字指的是保存度分秒經(jīng)緯度值字段的名稱。所以在運(yùn)行前需要將代碼中的 Latitude 替換表中存儲 DMS 經(jīng)緯度值字段的名稱
總結(jié)
以上是生活随笔為你收集整理的arcmap十进制度和度分秒相互转换的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 基于HttpClient的正方教务系统模
- 下一篇: KUKA - KRL