本帖最后由 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]) 
 
 |   
 
 
 
 | 
| 
 | 
| 
 | 
| 
 | 
 |