一个简单的数学问题

前言

近来在项目中遇到一个显示问题,即使得无论线的方向如何,文本的位置都能够达到如图所示的效果:

2019-04-25T07:49:43.png
想了许久终于解决了,其实也是个普通的数学题。想到这里不仅有些疑惑:我智力退化如此了?! ̄□ ̄||

解决方法

  • 1.求得所有线段和X轴正方向的夹角θ∈[-π,π]
  • 2.构造向量 vector(cosθ,sinθ),本质上是该条线的方向向量
  • 3.将该方向向量逆时针旋转90°,得到该线的垂直方向的向量
  • 4.可以看到平行和非平行有区别,平行的情况下线段中点沿着步骤3的垂直向量正方向延伸,非平行情况下反向延伸

示意图如下所示:
示意图.png

最终效果

1.png
2.png

文章版权:My-World - 勿于浮沙筑高台

本文链接:http://doachieveit.cn/index.php/archives/44.html

版权声明:本文为作者原创,转载请注明文章原始出处 !

添加新评论