码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • three图形控制页面


    安装

    npm i dat.gui

    引入 

    import * as dat from 'dat.gui'

     实例化

    this.gui = new dat.GUI()

    使用代码

    1. this.gui.add(this.camera.position, 'x', -5, 5, 0.1).name('相机位置x')
    2. this.gui.add(this.camera.position, 'y', -5, 5, 0.1).name('相机位置y')
    3. this.gui.add(this.camera.position, 'z', -5, 5, 0.1).name('相机位置z')

    使用参数说明 

    参数一: 控制的对象(注意第一个参数只能放对象 )

    参数二:控制对象里面的属性

    参数三: 属性的最低取值

    参数四: 属性的最高取值

    参数五: 属性每次增加(减少)的值

    .name(a): a是控制属性的名吧

    效果如图 

    上面可以把相机都放到一个文件下 

    1. const folder1 = this.gui.addFolder('相机位置')
    2. folder1.add(this.camera.position, 'x', -5, 5).name('相机位置x')
    3. folder1.add(this.camera.position, 'y', -5, 5).name('相机位置y')
    4. folder1.add(this.camera.position, 'z', -5, 5).name('相机位置z')

    效果如图 

    如果this.gui.add()只给两个参数 就会显示一个选框    选中为true  反之false

    1. const geometry1 = new THREE.BoxGeometry(1, 1, 1, 1, 1, 1)
    2. const material1 = new THREE.MeshBasicMaterial({ color: 0xff00ff})
    3. material1.wireframe = true
    4. this.cube1 = new THREE.Mesh(geometry1, material1)
    5. this.gui.add(this.cube1.position, 'x', -5, 5).name('物体位置-x')
    6. this.gui.add(this.cube1.position, 'y', -5, 5).name('物体位置-y')
    7. this.gui.add(this.cube1.position, 'z', -5, 5).name('物体位置-z')
    8. this.gui.add(material1, 'wireframe')

    图片

    给物体选择颜色this.gui.addColor()

    1. // 物体
    2. const cubeControls = { color: 0xff0000 }
    3. const geometry1 = new THREE.BoxGeometry(1, 1, 1, 1, 1, 1)
    4. const material1 = new THREE.MeshBasicMaterial({ color: cubeControls.color})
    5. material1.wireframe = true
    6. this.cube1 = new THREE.Mesh(geometry1, material1)
    7. this.gui.addColor(cubeControls, 'color').onChange(() => {
    8. material1 = cubeControls.color
    9. })

    效果如图所示

     按钮操作

     

  • 相关阅读:
    100天精通Python(爬虫篇)——第44天:requests库大总结
    300PLC转以太网与MatrikonOPC以太网通讯
    简单介绍ogb包(open graph benchmark)(图神经网络的基准数据集)
    k8s 入门到实战--部署应用到 k8s
    主播三维能力总览
    在SQL语句正确的情况下,使用druid库查询ES数据报错的可能原因!
    100天精通Python(爬虫篇)——第47天:selenium自动化操作浏览器
    PyCharm及python解释器详细安装教程
    JSP足球场地预约平台系统myeclipse定制开发mysql数据库网页模式java编程jdbc
    网站监测的原理和应用
  • 原文地址:https://blog.csdn.net/qq_52421092/article/details/126867750
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号