自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 javaScript高级程序设计(18)——动画与Canvas图形

javascript早期定时动画类似这样上述定时动画存在的问题:1. 定时时间需要足够短,才能让不同的动画类型都能平滑顺畅;但又要足够长,让浏览器来得及渲染出来。2. 无法准确知晓循环之间的延时。setInterval和setTimeout都不能保证时间精度,第二个参数的时间只能保证何时会把代码添加到浏览器的任务队列,如果任务队列前面还有其他任务,需要等这些任务执行完在执行,浏览器自身计时器的精度问题更是雪上加霜。一般计算机显示器的屏幕刷新率都是60Hz,基本上意味着每秒需要重绘60次。

2023-10-22 18:04:34 161 1

原创 小步学习——orientationchange和resize事件

orientationchange执行时机问题,触发orientationchange事件时,浏览器横竖屏状态已经发生改变,但是浏览器还没有更新宽高数据。

2023-10-19 11:38:56 290

原创 Three.js入门(四)——顶点UV坐标、纹理贴图

顶点UV坐标和顶点位置坐标是一一对应的,UV顶点坐标你可以根据需要在0~1之间任意设置,具体怎么设置,要看你想把图片的哪部分映射到Mesh的几何体表面上0, 0,0.5, 0,0.5, 0.5,0, 0.5,]);// 设置几何体attributes属性的位置normal属性//2个为一组,表示一个顶点的纹理坐标。

2023-10-16 18:02:25 410 1

原创 Three.js入门(三)——层级模型

场景对象scene构成的层级模型本身是一个树结构,场景对象层级模型的第一层,也就是树结构的根节点,一般来说网格模型Mesh、点模型Points、线模型Line是树结构的最外层叶子结点。构建层级模型的中间层一般都是通过Threejs的Group类来完成,Group类实例化的对象可以称为组对象Object3D本身就是表示模型节点,因此也可以作为中间层Threejs场景对象Scene、组对象Group都有一个子对象属性.children,通过该属性可以访问父对象的子对象,子对象属性.children。

2023-10-16 16:38:06 163 1

原创 Three.js入门(二)——模型对象、材质

向量:向量是在数学和物理中常用的概念,它表示具有大小和方向的量。在三维空间中,向量通常用一组有序的数字表示,表示为 (x, y, z)。这些数字分别表示向量在 x、y 和 z 轴上的分量。在计算机图形学和Three.js中,常用的向量表示使用三维向量类,例如。通过模型位置属性.position可以设置模型在场景Scene中的位置。模型位置.position的默认值是,表示坐标原点。属性.scale表示模型对象的xyz三个方向上的缩放比例,.scale的属性值是一个三维向量对象Vector3,默认值是。

2023-10-16 15:48:42 233 1

原创 Three.js入门(一)——几何体BufferGeometry

非常简单,你的眼睛(相机)对着三角形的一个面,如果三个顶点的顺序是逆时针方向,该面视为正面,如果三个顶点的顺序是顺时针方向,该面视为反面。使用网格模型Mesh渲染几何体geometry,就是几何体所有顶点坐标三个为一组,构成一个三角形,多组顶点构成多个三角形,就可以用来模拟表示物体的表面。法线:数学上的法线概念,比如一个平面,法线的就是改平面的垂线,如果是光滑曲面,一点的法线就是该点切面的法线。对于曲面而言,细分数越大,表面越光滑,但是三角形和顶点数量越多,渲染性能越差。

2023-10-16 12:10:54 592 1

原创 WebGL支持检测

虽然大多数现代浏览器都支持 WebGL,但仍然有一些旧版本或特定配置的浏览器可能不支持。因此,在使用 WebGL 功能之前,最好进行浏览器兼容性检测,并提供替代方案或友好的降级体验,以确保你的应用程序在不支持 WebGL 的情况下仍然能够正常运行。

2023-10-13 16:33:23 348

原创 Three.js快速入门

Three.js是一款基于原生WebGL封装通用Web 3D引擎,可运用小游戏、产品展示、物联网、数字孪生、智慧城市园区、机械、建筑、全景看房、GIS等各个领域。学习阶段,如果只是想查看效果。推荐vscode安装live-server插件,打开对应.html文件,右键点击。在学习WebGL和Three.js之前,请先掌握基本的web知识。

2023-10-13 16:08:22 40

原创 算法基础入门(一)——数组和字符串——数组简介

集合 列表 和数组的区别集合一般被定义为:由一个或多个确定的元素所构成的整体。列表(又称线性列表)的定义为:是一种数据项构成的有限序列,即按照一定的线性顺序,排列而成的数据项的集合。数组是列表的实现方式之一,也是面试中经常涉及到的数据结构。对于数组,计算机会在内存中为其申请一段的空间,并且会记下索引为0处的内存地址。当我们要访问索引为3的数据,计算机会先找到索引为0的内存地址,再加上索引值,作为目标元素的地址读取元素的时间复杂度为查找元素的时间复杂度为插入元素的时间复杂度为。

2023-10-13 14:34:52 20

原创 关于video不能自动播放的问题解决

第一种: 用户触发播放:在页面上添加一个明显的播放按钮,引导用户主动点击,或者用户滑动,点击其他元素的时候触发视频播放。这种方法还是要求先有用户操作,如果你的项目需要完全脱离用户操作的自动播放,请参考下面两种方案。当用户手动点击元素时,浏览器会触发真实的鼠标点击事件,并将事件流信息(如鼠标位置等)传递给事件处理程序。方法来模拟点击时,事件是通过代码触发的,并没有真实的鼠标点击发生,也无法传递事件流信息。第二种:通过切换图片模拟视频播放,通过连续修改图片src,视觉上给用户一种播放视频的错觉。

2023-10-11 21:19:05 1435 1

原创 whistle网络代理实战分享

前端开发的小伙伴可能有遇到过这种情况:本地运行一个http协议的h5页面,在微信打不开,微信小程序业务域名只能配置https协议。这样就会导致真机调试非常麻烦,每次都要发一个版本。(如果小伙伴有不用代理解决的方法欢迎评论区交流~)此时,网络代理就能发挥作用啦~(我目前只用过whistle这一个代理工作,其他类似工具也欢迎小伙伴评论区讨论~)

2023-10-10 22:30:17 1415 2

原创 vscode插件分享

前端开发编辑器vscode插件推荐

2023-10-09 00:03:30 248 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除