Webgl(ThreeJS)空间测量、测距功能

工程地址:Webgl(ThreeJS)空间测量\\测距功能。-Javascript文档类资源-CSDN下载

先上最终效果图:

测量模式下,就不能旋转、缩放查看模型了,要调整摄像机视觉需要退出测量模式下才能进行。

根据实际比例,计算出来的真实距离,当然通过比例数据计算的,多少都会有点误差。

本项目涉及以下几个功用点:

一、webgl(threejs)加载gltf、glb模型

项目目录也比较简单,初学者可直接拿工程文件在此基础上做功能扩展。

加载glb模型的代码主要是:

二、webgl(threejs)在空间中画点、和画线段

关于在webgl(Threejs)在3D空间中画点和线段,上一篇也有详细说明,想了解更清楚的,可以找回我上一篇 文章查看:

Webgl(ThreeJS)3D画线(最新版本画线方式)_蒙双眼看世界的博客-CSDN博客

本次的操作是鼠标按下拖动实现测量。

因此在鼠标按下时,记录线段的起点,鼠标保持按下的情况下移动鼠标的坐标点作为线段终点来画一条线段,并计算起点和终点之间的距离。通过与真实环境下的距离进行换算。

关键代码:

画点:

画线:

显示距离的text标签跟随鼠标:

三、通过射线获取鼠标点击的模型坐标点。

通过射线碰撞,得出射线与模型碰撞的坐标点,多层模型就会得出多个碰撞的坐标点,以距离最近的点为目标坐标点,具体实现:

最后,将整个工程文件共享出来供大家学习。

Webgl(ThreeJS)空间测量\\测距功能。-Javascript文档类资源-CSDN下载

Webgl(ThreeJS)空间测量\测距功能(附工程文件)相关推荐

  1. 线性电路特性的研究与multisim仿真(附工程文件)

    目录 4.1  实验目的 4.2  实验原理 4.3  实验内容与步骤 4.4  实验要求与注意事项 4.5  实验报告与思考题 4.1  实验目的 1. 加深对线性电路主要特性(齐次性.叠加性.置换 ...

  2. 基尔霍夫定律的验证与multisim仿真(附工程文件)

    目录 3.1  实验目的 3. 2  实验原理 3. 3  实验内容与步骤 3.4  实验要求与注意事项 3.5 实验报告与思考题 3.1  实验目的 1. 加深对基尔霍夫定律的理解: 2. 学会使用 ...

  3. 用Python自带的tkinter制作一款简易音乐播放器(附工程文件)

    tkinter GUI 界面: 基于tkinter库实现简易可视化界面,并调用pygame等第三方库实现播放歌曲.切换歌曲.歌曲进度调整.批量导入曲库等基本功能:程序设置为单曲循环模式,需要手动切换歌 ...

  4. 【计算机网络】期末课程设计 ENSP组网综合实验(附工程文件)

    目录 前言 前期准备 组网要求 开始组网 分公司1 分公司2 核心交换机配置 实现内部服务器的搭建 acl_deny部分用户与服务器出口 配置出口防火墙 (修正)防火墙实现上网限制 dhcp分配ip ...

  5. Unity自定义快捷键功能,支持动态改键(附工程文件)

    简单的按键输入检测就是在Update里通过对 if(Input.GetKeyDown(KeyCode.A)){ //todo } 这样来判断,但是项目的需求中往往没有这么简单,都是需要支持用户自己修改 ...

  6. 一步步实现Android MQTT详细步骤,附工程文件

    一.lib下载 1,服务的lib org.eclipse.paho.android.service-1.1.1.jar 2,客户端的lib org.eclipse.paho.client.mqttv3 ...

  7. 基于proteus软件仿真AT89C52的电压表(附工程文件)

    通过ADC0808芯片进行高精度的电压转换,再通过LCD显示. 电压范围0-5V,精度0.05V ADC0808是采样分辨率为8位的.以逐次逼近原理进行模/数转换的器件.其内部有一个8通道多路开关,它 ...

  8. 大学生创新创业训练计划项目——无线充电装置(附工程文件)

    无线充电装置说明书及使用报告 一.产品简介 本产品是一款便携式大容量无线充电装置,充电高度可低至1CM.采用STM32F103C6T6微控制芯片作为主控.3节18650锂电池对整套装置进行供电,用OL ...

  9. NE555构成多谐振荡器及三角波、正弦波的生成(附工程文件)

    NE555构成多谐振荡器及三角波.正弦波的生成 积分产生三角波 低通滤波产生正弦波 二阶带通滤波滤出3次谐波 续上一篇:NE555基本原理及相关公式的推导 NE555通过外接R1.R2.CR1.R2. ...

  10. 【stm32f103】引脚功能、工程简介与添加步骤

    单片机最小系统.引脚.寄存器与工程简介与添加步骤 单片机最小系统 引脚功能分布 工程文件 添加工程文件的步骤 单片机最小系统 单片机最小系统大致上可以分为三个部分:电源部分.晶振部分.复位部分. 常用 ...

最新文章

  1. C# 获取 IE 临时文件
  2. 自定义全局按键修饰符
  3. 计算机组成原理 — IPMI/BMC
  4. 重复数据_MongoDB 自动过滤重复数据
  5. java百度地图坐标_java腾讯地图与百度地图坐标转换
  6. 【论文】Awesome Relation Extraction Paper(关系抽取)(PART III)
  7. CentOS7.3安装Nginx
  8. python全套完整教程-Python语言基础50课 全套完整版(含doc版)
  9. 电商平台的系统组织架构
  10. 去哪儿APP设计总结
  11. FileZilla传输文件乱码的解决方案
  12. HTML实现图文混排效果
  13. 2021年危险化学品经营单位主要负责人试题及解析及危险化学品经营单位主要负责人理论考试
  14. Vue 脚手架 环境搭配
  15. 【整理】详解嵌入式片上资源之SDRAM内存
  16. #windowsxpsp3系统MS10-046漏洞测试
  17. 2019XUPT_ACM 寒假训练第二期
  18. CMD窗口下进入PowerShell和退出PowerShell
  19. 初学python制作二维码以及最新感悟
  20. 离线百度地图嵌入开发

热门文章

  1. 2013小企业会计新准则下会计科目的变化
  2. matlab设计高频滤波器
  3. Windows 10 到期时间如何查看
  4. week15-作业题--字符串(hash、字典树、KMP)
  5. 命里有时终须有,命里无时莫强求
  6. android 陀螺仪滤波_高精度MEMS陀螺仪的滤波算法研究
  7. MySQL 案例实战--MySQL数据库主从复制
  8. intellij idea文件颜色代表的含义
  9. Windows查看开关机记录
  10. NMOS和PMOS详解以及电路设计