栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

arcpy 基于python制作六十进制与十进制互换的工具箱

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

arcpy 基于python制作六十进制与十进制互换的工具箱

#将六十进制的度分秒转换为十进制的度:
import math

dms=[1,2,3]
deg=dms[0]+dms[1]/60.0+dms[2]/3600.0
print (deg)
#上述算法写为函数形式:
def dmsdeg(dms):
    deg=dms[0]+dms[1]/60.0+dms[2]/3600.0
    return deg
dmsdeg(dms)
print (deg)

开发为脚本:

import arcpy
import math
def dms2deg(dms):
    deg=dms[0]+dms[1]/60.0+dms[2]/3600.0
    return deg
s_deg=arcpy.GetParameterAsText(0)
s_min=arcpy.GetParameterAsText(1)
s_sec=arcpy.GetParameterAsText(2)
dms=[float(s_deg),float(s_min),float(s_sec)]
dd=dms2deg(dms)
arcpy.SetParameter(3,dd)
arcpy.AddMessage(str(dd))


在1处右键,添加脚本文件。

把编写好的脚本文件加进去。

按照上述设置。

验证:输入角度。


输出结果。

下面是把十进制转换为六十进制的脚本文件:

import arcpy
import math
def deg2dms(deg):
    secs=deg*3600
    sec_parts=math.modf(secs)
    sec_decimal=sec_parts[0]
    sec_int=int(sec_parts[1])
    s=sec_int % 60
    dm=sec_int // 60
    m=dm % 60
    d=dm // 60
    return d,m,s
s_deg=arcpy.GetParameterAsText(0)
deg=float(s_deg)
dms=deg2dms(deg)
arcpy.SetParameter(1,dms)
arcpy.AddMessage(str(dms))





验证工具箱的效果。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/840564.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号