【乐吾乐3D可视化组态编辑器】模型类型与属性

news/2024/7/20 17:41:13/文章来源:https://blog.csdn.net/le5le_iot/article/details/139265010

编辑器地址:3D可视化组态 - 乐吾乐Le5le

本章主要为您介绍模型的属性功能。

一个模型至少会包含一个节点(Node),从节点类型上可以分为转换节点(TransformNode)、网格(Mesh)、实例网格(InstancedMesh)。此外,系统自带了一种特殊的模型,即面板,它本质也是网格,只是材质固定为高级动态纹理。

下面我们详细介绍下这几种节点的区别以及可以设置的属性。

转换节点

转换节点没有实体,不会渲染,它一般用作网格的变换中心,当它的位置、缩放或者旋转值发生改变时,它下面挂载的子节点会以转换节点为中心发生改变。

转换节点是其他模型节点的父类,因此它可以设置的属性其他模型节点也都可以设置。

名称

模型节点的名称,不同节点名称可以重复。

数据类型:string

所属分组

模型节点所在的分组,一个节点可以设置到多个分组中。

数据类型:string[]

启用

是否显示节点,当关闭时,会隐藏当前节点及其所有子节点,并且在画布中不可被拾取。

数据类型:boolean

位置

节点的坐标点。如果节点为根节点,表示绝对坐标,如果节点有父节点,表示以父节点所在位置为原点的相对坐标。

数据类型:number

缩放

节点的缩放值。

数据类型:number

旋转

节点的旋转值,单位为角度。

数据类型:number

网格

3D场景中模型的形状是由网格构建的,每个网格都是由三角形的面连接在一起,每个面有三个顶点。模型越复杂,网格中的点和面就越多,对性能的要求就越高。因此在建模的时候,我们应该尽量精简点面的数量。我们可以通过添加材质和贴图来为网格覆盖颜色和图片,不同的材质表现的效果也不同。

网格是转换节点的子类,因此它也具有转换节点的属性。下面我们详细介绍网格特有的属性。

基础

可拾取

点击左键时,网格是否可以被拾取到。如果设置为不可拾取,在编辑状态下不可被左键选中(但是可以在结构中被选中),在运行状态下不会触发鼠标相关事件。

数据类型:boolean

透明度

改变网格的透明度,范围0-1,0表示完全不可见,1表示完全可见。只对自身有效,不会改变子节点的透明度。不会影响网格拾取。

数据类型:number

接收阴影

网格表面是否显示阴影。

数据类型:boolean

生成阴影

网格是否可以产生阴影。

数据类型:boolean

固定朝向

可以设置网格相对于相机的显示方向。当您需要模型始终面向相机时,可以设置此属性为水平面向相机或者垂直面向相机。

数据类型:number,0不固定,

渲染层级

设置网格在场景中的渲染层级。当您需要在场景上层始终显示网格,不希望被遮挡时,可以设置此属性为置顶。

数据类型:number

材质

我们可以给网格添加材质以显示出不同的效果,系统目前支持PBR材质、网格材质、渐变材质、水材质、节点材质等。

PBR材质

PBR即基于物理的渲染,它可以通过计算光线与物体表面的交互状态而实现模拟真实世界的画面。当配置了HDR后,模型表面即会反射出周围环境的效果,且HDR仅对PBR材质生效。

金属光泽

模型表面的金属光泽度,值越高,金属质感越强。范围0 - 1。

数据类型:number

金属因子

材质反射的亮度,值越高,反射亮度越强。

数据类型:number

粗糙度

模型表面的粗糙程度,值越高,表面显得越不光滑。范围0 - 1。

数据类型:number

漫反射色

材质在灯光下观察到的颜色。

数据类型:十六进制颜色或者RGB颜色字符串。例如 #ffffff 或者 rgb(255, 255, 255)。

自发光色

材质自身的颜色。

数据类型:十六进制颜色或者RGB颜色字符串。例如 #ffffff 或者 rgb(255, 255, 255)。

混合光影映射

开启后材质将光照贴图中获取阴影信息

数据类型:boolean

环境纹理强度

材质的环境纹理(ao)贴图影响因子,值越大,环境纹理贴图对材质的影响越大。

透明度

材质的透明度,值越小,材质显得越透明。范围0 - 1。

数据类型:number

透明模式

透明模式分为混合与叠加,材质或材质中的帖图含有透明时,默认为混合。将透明模式改为叠加后,材质遇到许多网格重叠的情况是,网格会发亮。

隐藏背面

当相机旋转到该材质背面时是否隐藏材质。

数据类型:boolean

网格材质

可在模型表面显示出网格的材质。

网格色

网格块的颜色。

数据类型:十六进制颜色或者RGB颜色字符串。例如 #ffffff 或者 rgb(255, 255, 255)。

线条色

网格线的颜色。

数据类型:十六进制颜色或者RGB颜色字符串。例如 #ffffff 或者 rgb(255, 255, 255)。

线条缩放

线条间隔相对于模型的缩放比例。值越大,线条间隔越宽。

数据类型:number

透明度

同PBR材质-透明度。

隐藏背面

同PBR材质-隐藏背面。

渐变材质

水材质

1、凹凸纹理:水材质的形状法线贴图,需要一张法线贴图

2、波峰、波长、跳跃高度绝对每一条水波的高低起伏

3、流速,控制水面的流动速度

4、水色,控制水面的颜色

5、默认反射天空盒

节点材质

使用BJS节点编辑器,连接节点自定义材质。

纹理

当材质设置为PBR材质或者水材质时,您可以为材质添加纹理。系统支持的纹理有以下几种:

  1. 漫反射纹理:在灯光下观察到的纹理。
  2. 自发光纹理:无灯光时也能观察到的纹理。
  3. 环境纹理:又称作遮挡纹理,它可以把烘焙阴影添加到材质。
  4. 光照纹理:将预先计算的网格的光照信息存储在纹理中,可以减少处理光照的计算量。
  5. 反射纹理:可以显示反射的纹理。
  6. 凹凸纹理:存储用于置换纹理中网格的表面法线数据,可以模拟渲染表面的凹凸和凹痕。

下面介绍这些纹理可以设置的属性。

贴图

设置纹理贴图的资源路径。

数据类型:string

UV坐标索引

定义要使用的UV通道,从0开始,默认为0。

数据类型:number

包含RGBD

纹理是否包含RGBD数据。

数据类型:boolean

纹理透明

定义纹理是否可以透明显示。

数据类型:boolean

坐标模式

定义如何映射纹理。

数据类型:number

横向(u)偏移

定义纹理在U坐标上的偏移量。

类型:number

纵向(v)偏移

定义纹理在V坐标上的偏移量。

类型:number

横向(u)缩放

定义纹理在U坐标上的缩放量。

类型:number

纵向(v)缩放

定义纹理在V坐标上的缩放量。

类型:number

实例网格

当场景中有大量重复模型时,比如树林、人群等,如果每个模型都是单独的网格会非常消耗性能,比较好的解决办法是使用实例网格。实例网格与源网格共用顶点、几何体以及材质,这样会减少资源消耗,加快场景渲染速度。您可以通过复制为引用来创建模型的实例,我们也支持导入GLB本身自带的实例网格。当源模型被删除时,所有基于其创建的实例模型都会被删除。并且实例模型可配置的属性,以及动画、数据、交互等都是独立的,不会被源模型影响。

实例网格可以配置的属性与转换节点完全一致,您可以参考转换节点的属性介绍。

除此之外,系统在基础属性中提供了选择源模型的按钮,用来快速选中实例网格的源模型。

面板

面板是一种特殊的网格,它用来在场景中展示2D信息,例如设备的温度、描述、名称等。

面板的属性包括网格中的所有基础属性,您可以参考网格 - 基础属性介绍。另外,面板无法更改材质。

您可以点击基础属性下方的编辑面板内容按钮,在弹窗中通过面板编辑器来设置要显示的内容。

面板编辑器的操作和场景编辑器类似,左侧为面板支持的显示内容,右侧为属性配置栏,当没有选中内容时,右侧显示的是面板整体的配置属性,当选中某个内容时,右侧显示的是该内容类型对应的配置属性。

面板属性

宽度

面板的宽度,最好取2的整数倍。默认为1024。

数据类型:number

高度

面板的高度,最好取2的整数倍。默认为1024。

数据类型:number

背景色

面板的背景颜色。

数据类型:十六进制颜色或者RGB颜色字符串。例如 #ffffff 或者 rgb(255, 255, 255)。

背景图片

面板的背景图片地址。

数据类型:string

填充方式

设置背景图片填充到面板上的方式。1代表拉伸,图片会同时放大或缩小宽高来铺满背景,缺点是不会保持原比例。2代表适应,图片会保持原有的宽高比例并尽可能的最大显示,缺点是会有空白区域。默认为拉伸。

数据类型:number

文本属性

名称

内容块的名称。在同一面板列表中不能重复。

数据类型:string

距左

内容块左上角顶点至面板左侧的距离。

数据类型:number

距上

内容块左上角顶点至面板顶部的距离。

数据类型:number

宽度

内容块的宽度。

数据类型:number

高度

内容块的高度。

数据类型:number

透明度

内容块的透明度。范围0 - 1。

数据类型:number

背景颜色

内容块的背景颜色。

数据类型:十六进制颜色或者RGB颜色字符串。例如 #ffffff 或者 rgb(255, 255, 255)。

文本

内容块显示的文字。

数据类型:string

颜色

文字颜色。

数据类型:十六进制颜色或者RGB颜色字符串。例如 #ffffff 或者 rgb(255, 255, 255)。

字体

文字字体。

数据类型:string

粗细

文字粗细。100 - 细,500 - 正常,900 - 粗。

数据类型:string

字号

文字大小。

数据类型:number

水平对齐

文字在内容块中水平的位置。start - 居左,center - 居中,end - 居右。

数据类型:string

垂直对齐

文字在内容块中垂直的位置。start - 居上,center - 居中,end - 居下。

图片属性

名称、距左、距上、宽度、高度、透明度、背景颜色均与文字属性相同。

图片

内容块显示的图片地址。

数据类型:string

填充方式

同面板属性的填充方式。

操作

目前面板编辑器支持的操作有:

  1. 添加内容:拖拽左侧内容块至面板显示区,即可生成对应内容。
  2. 选择内容:鼠标左键点击内容块,或者从列表中点击。
  3. 删除内容:选择内容后按Delete或者Backspace,也可从列表中点击删除按钮。
  4. 取消选择:Esc或者点击面板显示区非内容块的地方。
  5. 复制内容:按住Ctrl后鼠标拖拽内容块。
  6. 置顶:点击工具栏置顶按钮。
  7. 置底:点击工具栏置底按钮。
  8. 撤销:点击工具栏撤销按钮,或者Ctrl+Z。
  9. 恢复:点击工具栏恢复按钮,或者Ctrl+Shift+Z。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_1053970.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于 React + Nest 全栈开发的后台系统

Xmw Admin 基于 React Nest 全栈开发的后台系统 🪴 项目简介 🎯 前端技术栈: React、Ant Design、Umi、TypeScript🎯 后端技术栈: Nest.js、Sequelize、Redis、Mysql😝 线上预览: https://r…

4K型护套连接器与喇叭口替换插座

4K型护套连接器概述 4K型护套连接器作为煤矿一款关键的电气连接产品,一般安标认证型号包含:LCFB-4、LCFB-6、LCYB-8、LCYB-4、LCYB-8。根据不同的厂家也会有不同订货型号ZE0703-09/DLJ0601/conmN/4c等 4K型护套连接器是一种专为煤矿、非煤矿、石油化工等…

matplotlib ---词云图

词云图是一种直观的方式来展示文本数据,可以体现出一个文本中词频的使用情况,有利于文本分析,通过词频可以抓住一篇文章的重点 本文通过处理一篇关于分析影响洋流流向的文章,分析影响洋流流向的主要因素都有哪些 文本在文末结尾 …

设计模式:装饰模式(Decorator)

设计模式:装饰模式(Decorator) 设计模式:装饰模式(Decorator)模式动机模式定义模式结构时序图模式实现在单线程环境下的测试在多线程环境下的测试模式分析优缺点适用场景应用场景应用实例模式扩展参考 设计…

CSS 之 自定义属性(变量)

一、简介 ​ CSS的自定义属性,又称为CSS变量或级联变量,用于定义一个带有值的、可重复使用的CSS属性(变量)。其包含的值可以在其作用域内的任意属性上重复使用,在使用时需要借助var()函数获取自定义属性的值。当自定义…

apexcharts数据可视化之饼图

apexcharts数据可视化之饼图 有完整配套的Python后端代码。 本教程主要会介绍如下图形绘制方式: 基础饼图单色饼图图片饼图 基础饼图 import ApexChart from react-apexcharts;export function SimplePie() {// 数据序列const series [44, 55, 13, 43, 22]// …

C++青少年简明教程:for循环语句

C青少年简明教程:for循环语句 C的for循环语句是一种迭代控制语句,用于重复执行一段代码。 语法格式: for(表达式1;表达式2;表达式3) 循环体 for循环语句执行流程图: 不太好理解,请看下图&am…

DNS 解析过程

文章目录 简介特点查询方式⚡️1. 浏览器缓存2. 系统缓存(hosts文件)3. 路由器缓存4. 本地域名服务器5. 根域名服务器6. 顶级域名服务器7. 权限域名服务器8. 本地域名服务器缓存并返回9. 操作系统缓存并返回10. 浏览器缓存并访问流程图 总结 简介 DNS&a…

前端渲染页面的原理

之前一直不愿意写一篇关于原理的,因为说起来实在是太繁杂,要写得细,码字梳理,计算下来起码都要差不多三周。以前一直躲避这个事情,现在反正有时间,为了不荒废自己,那就从头捋一遍。也方便自己后…

技术创新加速生态繁荣 | 软通动力子公司鸿湖万联亮相OpenHarmony开发者大会2024

5月25日,由开放原子开源基金会OpenHarmony项目群工作委员会主办的OpenHarmony开发者大会2024在深圳成功举行。本次大会紧扣OpenHarmony 4.1 Release版本发布契机,以“鸿心聚力,智引未来”为主题、通过“1场主论坛6场技术分论坛”承载&#xf…

SpringBoot基础篇

1:parent 目的:减少依赖配置 开发SpringBoot程序要继承spring-boot-starter-parentspring-boot-starter-parent中定义了若干个依赖管理继承parent模块可以避免多个依赖使用相同技术出现依赖版本冲突继承parent的形式也可以采用引入依赖的i形式实现效果…

解决SSH客户端远程连接CentOS7虚拟机时加载过慢问题

1、编辑 /etc/ssh/sshd_config 文件,将 useDNS 中的 yes 改为 no ,关闭UseDNS加速: vi /etc/ssh/sshd_config2、重启ssh服务: systemctl restart sshd

三品软件:打造高效安全的图文档管理体系

在数字化转型的浪潮中,工程设计单位和企业设计部门面临着电子图文档管理的巨大挑战。随着电子图纸和文档数量的激增,如何有效组织、管理和共享这些资源,成为提升工作效率和保障信息安全的关键。本文将探讨当前图文档管理面临的问题&#xff0…

基于51单片机的汽车智能灯光控制系统

一.硬件方案 本设计硬件部分,中央处理器采用了STC89C52RC单片机,另外使用两个灯珠代表远近光灯,感光部分采用了光敏电阻,因为光敏电阻输出的是电压模拟信号,单片机不能直接处理模拟信号,所以经过ADC0832进…

安卓六种页面加载优化方案对比总结

根据工作经验,笔者提炼了六种页面加载优化方式,按照业务与非业务,将六种加载方式分为两类: 业务类 控制业务与UI的执行顺序、控制多业务之间的执行顺序 ①预加载:是指在进入页面之前,提前获得页面所需得数据…

2024年JAVA、C++、Pyhton学哪种语言更容易进国央企?

对于不同编程语言在进入国有企业的观点大体是正确的,不过在实际选择时还需考虑一些因素。我这里有一套编程入门教程,不仅包含了详细的视频讲解,项目实战。如果你渴望学习编程,不妨点个关注,给个评论222,私信…

【链表】Leetcode 82. 删除排序链表中的重复元素 II【中等】

删除排序链表中的重复元素 II 给定一个已排序的链表的头 head , 删除原始链表中所有重复数字的节点,只留下不同的数字 。返回 已排序的链表 。 示例 1: 输入:head [1,2,3,3,4,4,5] 输出:[1,2,5] 解题思路 由于链表…

代码文本编辑器-小白教程(Sublime text, Notepad++ Acode下载安装与使用)

代码文本编辑器-小白教程(Sublime text, Notepad Acode下载安装与使用) 1. Windows平台和Linux平台1.1 Sublime text1.2 Notepad 2. 安卓平台 Acode参考资料 1. Windows平台和Linux平台 1.1 Sublime text 一、安装教程 1、打开Sublime Text官网下载安…

UE5 UE4 快速定位节点位置

在材质面板中,找到之前写的一个节点,想要修改,但是当时写的比较多,想要快速定位到节点位置. 在面板下方的 Find Results面板中,输入所需节点,找结果后双击,就定位到该节点处。 同理,…

STM32简易音乐播放器(HAL库)

一、设计描述 本设计以STM32MP157A单片机为核心控制器,加上其他的模块一起组成基于单片机的音乐盒的整个系统,通过不同频率的PWM使蜂鸣器播放音乐,通过按键中断实现歌曲切换,音量调节,定时器中断实现播放速度调节&…