canvas3d图形转2d转换公式

思路 : https://www.jianshu.com/p/e3ebe08dddad

    to2d(x,y,z) {
      return {
        x:((x - view.x) * view.z) / (view.z - z) + offsetX,
        y:((y - view.y) * view.z) / (view.z - z) + offsetY
      };
    }

//offsetX是容器宽的一半
//offsety是容器高的一半
//x,y,z是被转换(被观测)的点对应的立体几何座标
//view是观察点的座标对象(根据观察点的变化,2d图形跟随变化)(自定义)

至于为什么要加容器的宽高一半,是因为,座标系以左边为原点,负座标的点就就看不到 了
加一半的宽高就把原点变成了画布的中点了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章