前言
用 WebGL 渲染的 3D 机房现在也不是什么新鲜事儿了,这篇文章的主要目的是说明一下,3D 机房中的 eye 和 center 的问题,刚好在项目中用上了,好生思考了一番,最终觉得这个例子最符合我的要求,就拿来作为记录。
效果图
这个 3D 机房的 Demo 做的还不错,比较美观,基础的交互也都满足,接下来看看怎么实现。
代码生成
定义类
首先从 index.html 中调用的 js 路径顺序一个一个打开对应的 js,server.js 中自定义了一个 Editor.Server 类由 HT 封装的 ht.Default.def 函数创建的(注意,创建的类名 Editor.Server 前面的 Editor 不能用 E 来替代):
ht.Default.def('Editor.Server', Object, {//第一个参数为类名,如果为字符串,自动注册到HT的classMap中;第二个参数为此类要继承的父类;第三个参数为方法和变量的声明 addToDataModel: function(dm) { //将节点添加进数据容器 dm.add(this._node);// ht 中的预定义函数,将节点通过 add 方法添加进数据容器中 }, setHost: function() { //设置吸附 this._node.setHost.apply(this._node, arguments); }, s3: function() {//设置节点的大小 this._node.s3.apply(this._node, arguments); }, setElevation: function() {//控制Node图元中心位置所在3D坐标系的y轴位置 this._node.setElevation.apply(this._node, arguments); } });
相关教程
-
css实现悬浮效果的阴影的方法示例
本文介绍了css实现悬浮效果的阴影的方法示例,分享给大家,具体如下:要实现的效果图:实现的代码:-webkit-box-shadow:0px 3px 3px #c8c8c8 ;-moz-box-shadow:0px 3px 3px #c8c8c8 ;box-shadow:0px 3px 3px #c8c8c8 ;
5/9/2018 9:37:43 PM -
css选择器中有小数点的标签获取方法
需求说明因为项目中章节配置的时候有小数点,1,1.1,1.2,1.11的标题,这个时候每一行标题的id,class设置成标题号是独一无二的标记。但是,直接用js获取是获取不到的,例如$(#3.22)打印只能获取到document.解决方案var array = id.split(.);var id = ;for(var i=0;i…
5/9/2018 9:37:42 PM -
纯CSS制作各种各样的网页图标(三角形、暂停按钮、下载箭头、加号等)
三角形<div class="box"></div><style>.box{width: 0;height: 0;border-top: 50px solid transparent;border-bottom: 50px solid transparent;border-left: 50px solid transparent;border-right: 50px solid red;}</style>
5/9/2018 9:37:41 PM -
纯css实现多级折叠菜单折叠树效果
1、运用checkbox的checked值来判断下级栏目是否展开,CSS3的选择器中提供了:checked 这个伪类,这个伪类提供我们,当元素拥有checked这个值的时候就执行你的CSS。当有子菜单时,菜单项右侧有向下的箭头,当收起菜单项时,箭头朝上。图片可以自己替换。2、效果图3、代码片…
5/9/2018 9:37:40 PM
共有条评论 网友评论