自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 ThreeJS源码学习10Light

light解析lightlight灯光是三维场景必不可少的元素。threeJS中light是所有灯光的父类,它又继承自Object3D。function Light(color, intensity) { Object3D.call(this); this.type = 'Light'; this.color = new Color(color); this.intensity = intensity !== undefined ? intensity : 1; } Light.

2021-06-09 17:44:08 205

原创 ThreeJS源码学习9Pass

后处理通道解析PassShaderPassRenderPassPass可以看到pass最核心的部分如下,创建一个平铺屏幕的平面作为RTT最终效果呈现的载体,再创建一个正交相机作为观察相机。THREE.Pass.FullScreenQuad = ( function () { var camera = new THREE.OrthographicCamera( - 1, 1, 1, - 1, 0, 1 ); var geometry = new THREE.PlaneBufferGeometry(

2021-06-09 17:21:22 495

原创 ThreeJS源码学习8PlaneGeometry

PlaneGeometry解析解析var PlaneGeometry = /*#__PURE__*/function (_Geometry) { _inheritsLoose(PlaneGeometry, _Geometry); function PlaneGeometry(width, height, widthSegments, heightSegments) { var _this; _this = _Geomet

2021-06-09 11:01:50 351

原创 ThreeJS源码学习7Camera

Cameracameracamerathree.js中的camera是object3D的子类。function Camera() { Object3D.call(this); this.type = 'Camera'; this.matrixWorldInverse = new Matrix4(); this.projectionMatrix = new Matrix4(); this.projectionMatrixInverse = new Matrix4(); }从代码

2021-06-09 10:41:00 193

原创 ThreeJS源码学习6Object3D

Object3D这是threejs里重要的一个父类。几乎常用的方法(例如:scene、camera、geometry等)都继承于此。

2021-06-08 14:19:22 118

原创 ThreeJS源码学习5WebGLRenderer

代码1300多行,就不贴了,逐行分析。。。canvas判断在开头,主要是一些内置属性的定义,还有一小段canvas创建判断,如下,如果没有主动创建画布,则内部创建补上。_canvas = parameters.canvas !== undefined ? parameters.canvas : createCanvasElement()获取像素比通过getTargetPixelRatio方法获取设置的像素比function getTargetPixelRatio() {

2021-06-02 20:47:40 467

原创 ThreeJS源码学习4EffectComposer

可参考

2021-06-01 15:34:04 115

原创 ThreeJS源码学习3Texture

Texture先贴第一段代码。通过这段时间学习,可以基本摸索出ThreeJS的代码风格。定义一个新方法,首先在主函数中确定必要属性function Texture(image, mapping, wrapS, wrapT, magFilter, minFilter, format, type, anisotropy, encoding) { Object.defineProperty(this, 'id', { value: textureId++ }); this.uuid = Ma

2021-06-01 10:10:27 285

原创 ThreeJS源码学习2WebGLRenderTarget

继承方法threejs中通过 Object.assign方法向对象添加属性和方法等以实现继承。WebGLRenderTarget离屏渲染,是获取深度图,构建主渲染的必要方法。也是实现后处理过程的核心方法。

2021-05-27 10:39:56 372

原创 ThreeJS源码学习1

整体结构版本功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入版本我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:全新的界面设计 ,

2021-05-26 16:30:02 247

原创 Cesium.js加载ArcGIS Server中发布的地图服务

这是一篇长期更新的文章,学到多少更多少Cesium.js首先贴上代码Cesium.Ion.defaultAccessToken = '密钥';var viewer;viewer= new Cesium.Viewer('cesiumContainer');var imageryLayers = viewer.imageryLayers;imageryLayers.addImageryProvider(new Cesium.ArcGisMapServerImageryProvider({

2020-06-13 15:53:44 1625 2

原创 一名GISer研究生入学前的计划

这里写自定义目录标题我的成神之路复试前要干的事研究生入学前(本科毕业前)要干的事收藏的学习及功能网站电脑资料上传云端灵感天堂我的成神之路12.22考研初试最后一门考试结束铃声响起,我随着人流一同走出考场,内心毫无波澜。。。甚至有点想笑(噗嗤)。当然了,虽说好的开始是成功的一半,但是另一半也不能不重视,因此在次日晨,列下如下计划,开启我的GIS成神之路!复试前要干的事WebGL及相关库学...

2020-03-27 21:18:10 105

原创 查找基础算法

直接插入折半插入希尔排序冒泡排序快速排序简单选择排序堆排序二路归并排序直接插入//直接插入void InsertSort(int R[],int n){ int i,j,temp; for(i=1;i<n;++i){ temp=R[i]; j=i-1; while(j>=0&&temp<R[j]) { R[j+...

2019-10-11 21:59:45 92

原创 数据结构图的主要算法

数据结构定义#define maxsize 100邻接矩阵typedef struct{ int no;}VertexType;typedef struct{ int edges[maxsize][maxsize]; int n,e; VertexType vex[maxsize];}MGraph;邻接表typedef struct ArcNode{ int adj...

2019-10-10 20:35:11 1148

原创 字符串系列问题

@TOC最长回文子序列(c语言)最长公共重复字串(c语言)最长公共子串(c语言)最长公共子序列(c语言)最长回文字串(c语言)最长回文子序列使用动态规划法,时间复杂度是O(n^2)#include<stdio.h>#include<string.h>#define len 13int MAX(int a,int b){ if(a<=b) ...

2019-10-09 11:01:04 98

空空如也

空空如也

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

TA关注的人

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