当前位置:JS特效 » 图片效果 » 3D房屋特效demo
3D房屋特效demo
如果您觉得内容不错,请分享:
标签: 3d特效demo

插件介绍

基于css实现的3d房屋效果,可以使用按键进行移动 function TurnLeft() { //先增加Y轴旋转角度 rotate.rotateY -= 5; if {rotate.rotateY -= 360; } if {rotate.rotateY += 360; } //目前已知旋转角度rotate.rotateY,圆半径1,可以求得点B的X轴和Y轴坐标 rot

浏览器兼容性

浏览器兼容性
时间:2021-09-17 阅读:180
简要教程

【案例简介】

基于css实现的3d房屋效果,可以使用按键进行移动

【案例截图】

【核心代码】


 function TurnLeft() {
        //先增加Y轴旋转角度
        rotate.rotateY -= 5;
        if (rotate.rotateY >= 360) {
            rotate.rotateY -= 360;
        }
        if (rotate.rotateY < 0) {
            rotate.rotateY += 360;
        }
        //目前已知旋转角度rotate.rotateY,圆半径1,可以求得点B的X轴和Y轴坐标(点B的意思请查看计算原理.md)
        rotate.rotate3d.z = 1 * Math.sin(getRadianFromAngle(rotate.rotateY));
        rotate.rotate3d.x = 1 * Math.cos(getRadianFromAngle(rotate.rotateY));
        setAttributes();
    }

    function TurnRight() {
        //先增加Y轴旋转角度
        rotate.rotateY += 5;
        if (rotate.rotateY >= 360) {
            rotate.rotateY -= 360;
        }
        if (rotate.rotateY < 0) {
            rotate.rotateY += 360;
        }
        //目前已知旋转角度rotate.rotateY,圆半径1,可以求得点B的X轴和Y轴坐标(点B的意思请查看计算原理.md)
        rotate.rotate3d.z = 1 * Math.sin(getRadianFromAngle(rotate.rotateY));
        rotate.rotate3d.x = 1 * Math.cos(getRadianFromAngle(rotate.rotateY));
        setAttributes();
    }

    function LookSky() {
        rotate.rotate3d.rotate += 5;
        if (rotate.rotate3d.rotate >= 360) {
            rotate.rotate3d.rotate -= 360;
        }
        if (rotate.rotate3d.rotate < 0) {
            rotate.rotate3d.rotate += 360;
        }
        setAttributes();
    }

    function LookEarth() {
        rotate.rotate3d.rotate -= 5;
        if (rotate.rotate3d.rotate >= 360) {
            rotate.rotate3d.rotate -= 360;
        }
        if (rotate.rotate3d.rotate < 0) {
            rotate.rotate3d.rotate += 360;
        }
        setAttributes();
    }


Top