Coal Mine Roadway名称显示方法设想

21 篇文章 1 订阅

1、可能需要定义的类

        a、二维和三维线段类(包含两个位置坐标,两种对象都是用Vector3类,对于三维线段来说,这个V3的值是三维空间坐标,对于二维线段来说,V3的x和y值表示二维坐标,z值表示基于当前渲染摄像机的三维深度,如果x和y的值都位于0和1之间,说明该点在屏幕范围内)

        b、二维和三维线条类(包含巷道名称和二三维线段列表)

2、具体做法

        a、首先把巷道所有中心线转化成三维线条对象

        b、其次把所有三维线条对象生成基于屏幕的二维线条对象,此时二三维线条对象的数量是相同的。

        c、再次,对所有的二维线条对象进行裁剪操作,生成屏幕范围内剪裁好的二维线条对象,对于一些裁剪之前的弯曲的二维线条对象,裁剪之后可能生成多个二维线条对象,但它们都与未裁剪的二维对象具有相同的巷道名称。

        d、然后,在裁剪之后的二维线条对象上确定文字显示的位置。

3、算法

        a、三维点转二维点。

        b、对二维线条内的线段逐个检测是否与屏幕范围交叠,将交叠的连续线段组成裁剪后的二维线条对象数组。

        c、计算二维线条的路径中点,沿中点排布文字位置。

                

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值