| 
 
| 本帖最后由 tangan 于 2023-8-21 10:37 编辑 
 外网参考:https://docs.thingjs.com/cn/apidocs/
 
 
 
 Object3D                        三维世界中的物体类
 
 THING.BaseObject  基类
 
 alwaysOnTop                      渲染物体对象是否保持置于顶层
 object.alwaysOnTop = true;
 angles                                 获取/设置世界坐标系下的旋转角度信息
 inherit                                 获取继承信息
 object.inherit.visible = THING.InheritType.Break;
 object.inherit.pickable = THING.InheritType.Stop;
 keepSize                             按照在当前摄像机中呈现的大小锁定缩放值,以维持自身物体在视口中的渲染大小不变
 layerMask                           获取/设置遮罩层(LayerMask)。用于控制物体在指定摄像机渲染中的可见性。0 表示在指定摄像机中隐藏此物体,非 0 的值表示在指定摄像机中显示此物体。默认值为 1。通过“按位与”的计算,来判定物体在指定摄像机中的layerMask的值。在批量渲染模式下,不支持此功能
 localAngles                         获取/设置相对坐标系下的旋转角度信息
 position                              获取/设置物体在世界坐标系下的位置信息
 localPosition                       获取/设置物体在相对坐标系下(相对于父物体)的位置信息
 localQuaternion                  获取/设置惯性空间下的四元数
 tags                                     获取/设置标识列表
 visible                                  获取/设置显示状态,此属性操作会影响自身以及所有子物体
 pickable                               获取/设置可拾取状态
 quaternion                          获取/设置在世界坐标系下的四元数
 scale                                    获取/设置世界坐标系下的缩放信息
 style                                    获取/设置物体样式
 pivot                                   获取/设置轴心点信息。轴心点参考原点为自身包围盒的 [left, bottom, back] 的位置
 boundingBox                     获取世界坐标系下的包围盒数据
 
 
 ThingJS选择器类扩展
 
 const app = THING.App.current                      ThinigJS的主程序(下面的app均表示此信息)
 query(param [, recursive])                                在子物体中查询(不包括自己)   param查询条件,recursive是否递归查询所有子物体, 默认true
 app.query('*')                                                   同'.BaseObject',通配符*表示所有;BaseObject是基类
 has(object)                                                       判断集合中是否拥有某物体
 app.query('.Thing').has(app.query('#temp')[0])
 equals                                                              判断两个集合中是否相等
 app.query('.Campus').equals(app.query('#智慧产业园'))   // true
 getNodes                                                        返回node 节点
 app.query('#temp').getNodes()
 add                                                                 集合添加某个集合
 app.query('#temp').add(app.query('#temp1'))
 remove                                                           集合删除某个集合
 app.query('#temp').remove(app.query('#innerTemp'))
 reverse                                                           颠倒集合中对象的顺序
 app.query('#temp').add(app.query('#temp1')).reverse()
 indexOf(object)                                              获取对象集合中某物体的下标索引值 若对象集合中不包含此物体,则返回 -1
 concat                                                            拼接对象集合
 flipVisible                                                       集合的visible属性取反
 toJSON                                                           对象集合序列化
 app.query('#temp').toJSON()
 toArray                                                           将对象集合转换为数组
 app.query('#temp').toArray()
 axisHelper                                                      显示对象的x,y,z坐标轴
 app.query('#temp')[0].style.axisHelper = true
 boundingBox                                                 显示对象的边界盒
 app.query('#temp')[0].style.boundingBox = true
 orientedBoundingBox                                   显示对象的定向边界盒
 boundingBoxColor                                        更改边界盒的颜色
 app.query('#temp')[0].style.boundingBoxColor = 'yellow'
 defaultOutlineColor                                      修改默认勾边的颜色
 app.query('#temp')[0].style.defaultOutlineColor = 'blue'
 doubleSide                                                    物体增加两边线
 app.query('#temp')[0].style.doubleSide = true
 glow                                                              发光
 app.query('#temp')[0].style.glow = true
 lineBloom                                                      发光颜色,比glow强
 app.query('#temp')[0].style.lineBloom = true
 edgeColor                                                     显示/隐藏模型边缘
 app.query('#temp')[0].style.edgeColor = '#f00'
 emissive                                                        设置/获取材质自发光颜色
 app.query('#temp')[0].style.emissive = 'pink'
 emissiveScrollImage                                     设置/获取材质自发光滚动贴图。 最终的发光结果会乘以emissive的颜色。如果想让发光贴图生效,需要确认emissive不是黑色
 environmentImage                                       设置/获取反射贴图
 app.query('#temp')[0].style.environmentImage = 'BlueSky'
 focusRegion                                                  聚焦区域(集合)
 app.query('#temp')[0].style.focusRegion = true
 highlightIntensity                                          设置/获取高亮强度,默认0.5
 innerGlow                                                      内发光
 radialBlur                                Boolean                                         径向模糊
 app.query('#temp')[0].style.radialBlur = true
 radialOffset                        Boolean                                      径向偏移
 app.query('#temp')[0].style.radialOffset = true
 renderOrder                                                   控制渲染对象的顺序(见threejs)
 vertexNormalHelper                                      顶点法向量Helper类,从三维模型顶点引出直线(见threejs)
 wireframe                                                       设置物体线框模式
 app.query('#temp')[0].style.wireframe = true
 doubleSide                                                     设置双面渲染(比如天花板,房间天花板默认thingjs是单面渲染的)
 app.query('#temp')[0].style.doubleSide = true
 
 摄像机类
 app.camera.far = 100                                     设置/获取 摄像机远裁剪面的距离,超过这个距离的物体将不会被看到
 app.camera.fov = 90                                      设置/获取 摄像机FOV 值越大,视野越大 默认值为 60
 app.camera.near = 1                                      设置/获取 摄像机近裁剪面的距离,比这个距离近的物体将不会被看到
 app.camera.position = [10,10,10]                  设置/获取摄像机 镜头位置(眼睛位置)
 app.camera.target = [0,0,0]                           设置/获取摄像机 目标点位置
 app.camera.fit(obj)                                         观察某物体(没有飞行动作)
 app.camera.flyTo(obj)                                     摄像机飞行到某位置或物体(有飞行动作持续时间)
 app.camera.lookAt(obj)                                  看向某物体(设置后鼠标无法旋转和平移)
 app.camera.lookAt(null)                                 取消看向设置
 app.camera.flying                                           获取摄像机是否在飞行
 app.camera.stopFlying()                                 停止飞行
 
 全局绑定事件
 THING.App.current.on(eventType [, condition] [, userData], callback [, tag] [, priority])
 
 
 | 
 | 
|  | 
|
|  | 
|  |  |