ThingJS,提升你的3D设计力!

2024-03-30 18:08
文章标签 设计 3d 提升 thingjs

本文主要是介绍ThingJS,提升你的3D设计力!,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

如果一个设计中充斥着太多的内容,这个页面会显得杂乱无章,读者也无法从中很快看到所需的信息。ThingJS的3D开发也遵循同样的设计原则。

世界级设计师Robin Williams认为,复杂的设计原理不那么复杂,凝炼为亲密性、对齐、重复和对比4个基本原则。今天,来跟我了解什么是四大设计基本原则, 并且基于概念来找出自己目前面临的“形象设计”问题,不管是你的邮件还是文档,结果一定会让你刮目相看。

ThingJS平台提供的是3D开发平台,有场景搭建工具,也有3D开发应用,这都离不开设计审美力。因为3D不仅仅实现了图像的立体化,同时加入了动画效果,是对真实世界的仿真,充满更大的想象空间。四大设计基本原则,是基础中的基础。即使是3D动画,也需要模型草图,只有把设计基础打好了,才能够在二维屏幕上实现三维图像的不违和展现。

1-对比

元素要做到截然不同,才能让页面引人注目。具体实现起来,也许要思量一下,这个对比是怎么做到的?因为同样的元素,比如字体,我们都会选择相似的类型,美其名曰过渡和融入。

2-重复

有些视觉要素的重复效果,能够增加条理性和统一性。

3-对齐

每个元素都应该与另一个页面有某种视觉联系。不懂设计的人看页面,会对摆放的位置摸不着头脑,但是对于设计师而言,这是有一定的构图要求,每个元素都不是随意摆放的。

4-亲密性

找到元素之间的相关性,进行归类,在视图上的表现就是靠在一块,形成一个统一的视觉单元,多个单元的组合也不会乱,给人一种清晰的设计结构。好的设计是不存在孤立元素的。

亲密性是四大原则之首,有了逻辑才能够谈更多优化,不然还是混乱的信息。有了组织性,信息才更加易读。同样地,亲密性原则能够帮助你关注空间,了解空间对于表达的重要性。在3D可视化开发中,空间是非常重要的一个概念,因为这是一个仿真的三维世界。每个图层数据都包含不同的元素组合,有了空间,才能让整体具有结构感,读取信息才有了逻辑性。

在这里插入图片描述
在这里插入图片描述

了解设计的人都知道,如果元素很多,就要进行分类,这里的亲密性原则, 指的就是“将相关的项组织在一起”,先成组,后构图。这里有几个简单的步骤:1、把有关联的元素放在一起,2、在不同单元之间增加空间距离。真正的设计不是把东西都堆上去,而是要把有关联的元素汇合,设计不仅仅是感性的,也是理性的。因为要注意信息之间有逻辑上的关联性,哪些应该强调,哪些不用强调,而且通过元素分组、空白设计来表现。

注意,元素单元保持在3~5个就可以。归类的界限要清楚,不能含糊。

更加直观和准确,是设计的目标,让人们更加方便找到需要的信息,凸显设计的价值。3D和2D一样,都是把数据可视化,更清晰的展示在用户面前,物联网技术部署的最后一公里,就是可视化层面。3D动画有了更多的仿真增强,以前是需要学习3DMAX系统,具备专业的3D建模知识,随着物联网技术的生态扩展,不是一个供应商就能做好一个物联网方案的部署,它需要众多的合作,所以每个合作厂商只要把其中一个方面做到极致,就能够存活。ThingJS是3D可视化开发方面的佼佼者,为了更加快速推动物联网可视化技术,赶上物联网的大众创新浪潮,它利用JS封装3D库,并开发一系列3D地图及园区建模组件,把可视化开发步骤简化成了四步。

在CityBuilder或者CamBuilder场景搭建工具中,可以选择物体属性来内置模型动画,无缝集成到ThingJS平台上,就可以基于内置的模型动画运行JS代码,节省了大量的动效基础开发时间。

以下面的粮仓为例,在CamBuilder中我们可以通过选中该模型,查看模型是否带有动画,例如这个粮仓动画名为‘CloseRoof’和‘OpenRoof’,分别控制粮仓开盖关盖动画。
在这里插入图片描述

ThingJS使用 playAnimation 接口进行动画播放。

• 简单播放动画

obj.playAnimation("animation");

• 可以反向播放动画

obj.playAnimation({name: "animation",reverse: true//反转数组
});

• 可以循环播放动画,并且可以同 loopType ,来控制循环类型

obj.playAnimation({name: "open1",loopType: THING.LoopType.Repeat
});
•	还可以同时播放多个动画;
obj.playAnimation({name: ["open1", "open2"],loopType: THING.LoopType.PingPong,speed: 0.4
});

ThingJS让你的3D设计能力更加容易实现!

这篇关于ThingJS,提升你的3D设计力!的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/862206

相关文章

Mysql中设计数据表的过程解析

《Mysql中设计数据表的过程解析》数据库约束通过NOTNULL、UNIQUE、DEFAULT、主键和外键等规则保障数据完整性,自动校验数据,减少人工错误,提升数据一致性和业务逻辑严谨性,本文介绍My... 目录1.引言2.NOT NULL——制定某列不可以存储NULL值2.UNIQUE——保证某一列的每一

PowerShell中15个提升运维效率关键命令实战指南

《PowerShell中15个提升运维效率关键命令实战指南》作为网络安全专业人员的必备技能,PowerShell在系统管理、日志分析、威胁检测和自动化响应方面展现出强大能力,下面我们就来看看15个提升... 目录一、PowerShell在网络安全中的战略价值二、网络安全关键场景命令实战1. 系统安全基线核查

使用Python绘制3D堆叠条形图全解析

《使用Python绘制3D堆叠条形图全解析》在数据可视化的工具箱里,3D图表总能带来眼前一亮的效果,本文就来和大家聊聊如何使用Python实现绘制3D堆叠条形图,感兴趣的小伙伴可以了解下... 目录为什么选择 3D 堆叠条形图代码实现:从数据到 3D 世界的搭建核心代码逐行解析细节优化应用场景:3D 堆叠图

MyBatis设计SQL返回布尔值(Boolean)的常见方法

《MyBatis设计SQL返回布尔值(Boolean)的常见方法》这篇文章主要为大家详细介绍了MyBatis设计SQL返回布尔值(Boolean)的几种常见方法,文中的示例代码讲解详细,感兴趣的小伙伴... 目录方案一:使用COUNT查询存在性(推荐)方案二:条件表达式直接返回布尔方案三:存在性检查(EXI

Python使用Matplotlib绘制3D曲面图详解

《Python使用Matplotlib绘制3D曲面图详解》:本文主要介绍Python使用Matplotlib绘制3D曲面图,在Python中,使用Matplotlib库绘制3D曲面图可以通过mpl... 目录准备工作绘制简单的 3D 曲面图绘制 3D 曲面图添加线框和透明度控制图形视角Matplotlib

使用DeepSeek API 结合VSCode提升开发效率

《使用DeepSeekAPI结合VSCode提升开发效率》:本文主要介绍DeepSeekAPI与VisualStudioCode(VSCode)结合使用,以提升软件开发效率,具有一定的参考价值... 目录引言准备工作安装必要的 VSCode 扩展配置 DeepSeek API1. 创建 API 请求文件2.

C#使用yield关键字实现提升迭代性能与效率

《C#使用yield关键字实现提升迭代性能与效率》yield关键字在C#中简化了数据迭代的方式,实现了按需生成数据,自动维护迭代状态,本文主要来聊聊如何使用yield关键字实现提升迭代性能与效率,感兴... 目录前言传统迭代和yield迭代方式对比yield延迟加载按需获取数据yield break显式示迭

Python中的可视化设计与UI界面实现

《Python中的可视化设计与UI界面实现》本文介绍了如何使用Python创建用户界面(UI),包括使用Tkinter、PyQt、Kivy等库进行基本窗口、动态图表和动画效果的实现,通过示例代码,展示... 目录从像素到界面:python带你玩转UI设计示例:使用Tkinter创建一个简单的窗口绘图魔法:用

不懂推荐算法也能设计推荐系统

本文以商业化应用推荐为例,告诉我们不懂推荐算法的产品,也能从产品侧出发, 设计出一款不错的推荐系统。 相信很多新手产品,看到算法二字,多是懵圈的。 什么排序算法、最短路径等都是相对传统的算法(注:传统是指科班出身的产品都会接触过)。但对于推荐算法,多数产品对着网上搜到的资源,都会无从下手。特别当某些推荐算法 和 “AI”扯上关系后,更是加大了理解的难度。 但,不了解推荐算法,就无法做推荐系

无人叉车3d激光slam多房间建图定位异常处理方案-墙体画线地图切分方案

墙体画线地图切分方案 针对问题:墙体两侧特征混淆误匹配,导致建图和定位偏差,表现为过门跳变、外月台走歪等 ·解决思路:预期的根治方案IGICP需要较长时间完成上线,先使用切分地图的工程化方案,即墙体两侧切分为不同地图,在某一侧只使用该侧地图进行定位 方案思路 切分原理:切分地图基于关键帧位置,而非点云。 理论基础:光照是直线的,一帧点云必定只能照射到墙的一侧,无法同时照到两侧实践考虑:关