three.js_三维坐标旋转矩阵

three.js_三维坐标旋转矩阵一、3D旋转rotate3d1、rotate3d语法2、rotate3d自定义轴旋转3、元素旋转方向-左手准则二、代码示例1、代码示例2、执行结果_rotate3d

一、3D 旋转 rotate3d


3D 旋转 指的是 在 三维空间坐标系 中 , 绕 X 轴 , Y 轴 , Z 轴 进行旋转 , 同时还可以绕 自定义轴 进行旋转 ;

2D 旋转只能 以 某个点为中心进行旋转 , 3D 旋转可以绕某个轴进行旋转 ;

1、rotate3d 语法

CSS3 中 3D 旋转 语法 :

  • 绕 X 轴旋转 : 沿着 X 轴 正方向 旋转 45 度 ;
transform: rotateX(45deg)
  • 绕 Y 轴旋转 : 沿着 Y 轴 正方向 旋转 45 度 ;
transform: rotateY(45deg)
  • 绕 Z 轴旋转 : 沿着 Z 轴 正方向 旋转 45 度 ;
transform: rotateZ(45deg)
  • 沿自定义轴旋转 : 沿着自定义的轴 旋转 deg 角度 ;
transform: rotate3d(x, y, z, deg)

2、rotate3d 自定义轴旋转

下面的 rotate3d 函数 , 接受四个参数 , 前 3 个参数是用来指定 自定义旋转的轴 ,

0, 0, 1, 说明这里只使用了 Z 轴作为旋转的轴 ,

下面的代码的实际作用是 绕 Z 轴旋转 360 度 ;

div { 
     
  transform: rotate3d(0, 0, 1, 360deg);  
}

3、元素旋转方向 – 左手准则

元素旋转时进行 方向判断 , 按照左手准则进行判断 ;

左手准则 : 左手 拇指 指向 对应轴 的 正方向 , 手指弯曲的方向就是 绕该轴旋转 的方向 ;

在这里插入图片描述
各个轴的正负方向 , 参考下图 :

在这里插入图片描述

二、代码示例


1、代码示例

代码示例 :

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>3D 转换 - 平移</title>
    <style> body { 
      /* 透视 属性 需要写在 被观察元素 的 父容器 上 视距越小 成像越大 如果想要网页中的元素看起来大一些 可以减小视距 */ perspective: 500px; } img { 
      /* 将图片设置为行内块元素 */ display: block; /* 设置图片 上下 100 像素外边距 水平居中对齐 */ margin: 100px auto; /* 设置动画过渡时间 2 秒 */ transition: all 2s; } img:hover { 
      transform: rotateX(180deg); } </style>
</head>

<body>
    <img src="images/logo.png">
</body>

</html>

2、执行结果

正常显示状态如下 :

在这里插入图片描述

鼠标移动到图像上方后 , 会变成如下样式 :

在这里插入图片描述

今天的文章three.js_三维坐标旋转矩阵分享到此就结束了,感谢您的阅读。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/79640.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注