初中知识回顾tan,sin,cos关系

如果K=tan,

sin 是X

x=k/power(1+k*k,0.5)  开平方

cos是y

y=1.0/power(1+k*k,0.5) 开平方

gisoracle总结

==================

#垂直平分线方程,
def getLineMPoint(p1,p2,dis):
    x=(p1.X+p2.X)/2
    y=(p1.Y+p2.Y)/2
    if abs(p1.X-p2.X)<0.0001:#垂线
        if p1.Y<p2.Y:
            x=x+dis
        else:
            x=x-dis
            
        
    elif abs(p1.Y-p2.Y)<0.0001:#水平线
        if p1.X<p2.X:
            y=y+dis
        else:
            y=y-dis
            
    else:
        if (p1.X>p2.X):
            dis=dis*(-1)
        k1 = (p1.Y - p2.Y)/(p1.X - p2.X)
        k2=-1.0/k1 #是tan
        sin=k2/pow(1+k2*k2,0.5)
        y=y+dis*sin
        cos=1.0/pow(1+k2*k2,0.5)
        x=x+dis*cos
        #arcpy.AddMessage(u"k1={0},k2={1},p1.x={2},p1.y={3}"+str(num)+u"个组成")
         
    point = arcpy.Point(x,y)
    return point

猜你喜欢

转载自www.cnblogs.com/gisoracle/p/11207272.html
今日推荐