那个网站做字体,个人主页怎么找,武隆网站建设联系电话,家在深圳我在房网信息论坛江湖好汉#xff0c;休走#xff0c;废了半天力气把threejs自带的代码搬迁到自己项目中了#xff0c;高高兴兴给领导看。领导一句话#xff0c;顿时无奈#xff1a;领导曰#xff1a;点云单色太丑#xff0c;能不能按照分类展示#xff1f; 一句话难道英雄好汉#xf… 江湖好汉休走废了半天力气把threejs自带的代码搬迁到自己项目中了高高兴兴给领导看。领导一句话顿时无奈领导曰点云单色太丑能不能按照分类展示 一句话难道英雄好汉妈呀全部白费去整理资料问问gpt 去。点云文件pcd基础介绍-CSDN博客
pcd点云江湖之初探江湖点云文件pcd加载01-CSDN博客 通过资料梳理大概对点云分类有所了解
1利用three自带的肯定不太容易实现
2自定义着色器要求一定的功底
3希望之光potree 源码分析
进行整体思考后发现基于potree 源码提取相关的参数是最靠谱的路子当然你非得自己写我也不拦着好汉牛掰掰开个玩笑主要看自己对哪方面熟悉
我这里主要 讲解 potree 源码拆分 提取 。
关键技术PointCloudMaterialPoints
我们需要定义那些内容那 /*** PCD点云图层* param {string} name 名字* param {Object} opts 配置参数* param {string} opts.pointColorType 点云样式 defaultINTENSITY_GRADIENT可选参数INTENSITY_GRADIENT、HEIGHT* param {string} opts.gradient 颜色梯度 defaultGREY 可选参数如下 RAINBOW、BLUE_GREEN_YELLOW_RED、BLUE_WHITE_RED、RED_WHITE 、* RED_YELLOW、SPECTRAL、PLASMA、YELLOW_GREEN 、VIRIDIS 、INFERNO 、GRAYSCALE 、GREY 、BLUE 、GREYS 、YELLOW 、RED 、CYAN 、GREEN* param {number} opts.size 默认 1* param {number} opts.intensityGamma 默认 0.5* param {number} opts.intensityContrast 默认 0.4* param {number} opts.intensityBrightness 默认 0.3* param {Array} opts.intensityRange 默认 [0,255]* param {Array} opts.customGradient 如果gradient颜色梯度带默认值不满足条件可以自由配置*/ /*** 获取渐变颜色数组* private* param {string | [number, string][]} type - 渐变类型或自定义渐变点数组* returns {[number, THREE.Color][]} - 渐变颜色数组*/getGradient(type) {// 使用默认的渐变类型if (!type) return Gradients.GREY;// 如果 type 是字符串且存在于 Gradients 中直接返回if (typeof type string Gradients[type]) {return Gradients[type];}// 如果 type 是数组则创建自定义渐变if (Array.isArray(type)) {const arr type.map(([value, color]) [value, new THREE.Color(color)]);// 如果只有一个渐变点直接返回从0到1的渐变if (arr.length 1) {return [[0, arr[0][1]],[1, arr[0][1]],];}return arr;}// 如果 type 是有效的颜色字符串则创建简单的渐变const color new THREE.Color(type);return [[0, color],[1, color],];}代码内容太多我还是主要写思路吧
第一步创建点云类
第二步获取点云文件的数据
第三步解析点云的数据将数据转换为potree可以识别的数据
第四步将数据组装成geometry
第五步利用 PointCloudMaterial 着色
第六步: viewer.scene.scene.add(pcdLayer);
里面的核心技术还是将数据如何解析到potree认识的数据可以研究potree自带的加载方法 我不是成为工具人。
这就是我一个喜欢发问和思考的老码农技术交流 QQ 2945853209
web3d技术分享产品列表https://threelab.cn/#/