BimModel
类:BIM单模型类,用以操作该模型内的构件、数据等
Constructor
new Glodon.Bimface.Model.BimModel()
构造BIM单模型类
Methods
activateAllComponents()
恢复所有构件处于激活状态
activateComponentsById(ids)
根据筛选条件将构件设置为激活状态
Parameters:
Name | Type | Description |
---|---|---|
ids | Array | 构件的ID集合,如["x1", "x2"] |
activateComponentsByObjectData(conditions)
依据筛选条件将构件设置为激活状态
Parameters:
Name | Type | Description |
---|---|---|
conditions | Array | 构件筛选条件,筛选字段可通过getObjectDataById方法获取 |
addBlinkComponentsById(objectIds, blinkOption)
根据构件ID在闪烁状态集合中继续添加构件
Parameters:
Name | Type | Description |
---|---|---|
objectIds | Array | 多个构件ID的数组 |
blinkOption | Object | 构件闪烁的配置项 |
addBlinkComponentsByObjectData(objectData, blinkOption)
根据筛选条件在闪烁状态集合中继续添加构件
Parameters:
Name | Type | Description |
---|---|---|
objectData | Array | 筛选条件,由构件objectData组成的数组 |
blinkOption | Object | 构件闪烁的配置项 |
addSelectedComponentsById(ids)
根据构件ID在选中集合中继续添加构件
Parameters:
Name | Type | Description |
---|---|---|
ids | Array | 多个构件ID的数组,如["x1", "x2"] |
addSelectedComponentsByObjectData(conditions)
根据筛选条件在选中集合中继续添加构件
Parameters:
Name | Type | Description |
---|---|---|
conditions | Array | 构件筛选条件,筛选字段可通过getObjectDataById方法获取 |
bringAxisGridsToFront(isEnabled)
将轴网浮在最上层
Parameters:
Name | Type | Description |
---|---|---|
isEnabled | Boolean | 是否将轴网提到最上层 |
clearAllBlinkComponents()
取消所有构件的闪烁状态
clearBlinkComponentsById(objectIds)
根据构件ID取消构件的闪烁状态
Parameters:
Name | Type | Description |
---|---|---|
objectIds | Array | 多个构件ID的数组 |
clearExplosion()
清空模型爆炸效果
Returns:
Type | Description |
---|---|
Number | 爆炸系数,取值范围[0, 3] |
clearFloorExplosion()
清空楼层爆炸效果
clearGlowEffect()
清空发光效果
clearIsolation()
取消模型隔离
clearOverrideColorComponents()
恢复全部构件的原来颜色
clearSelectedComponents()
清除构件选中状态
deactivateComponentsById(ids)
根据构件ID将构件设置为未激活状态 当构件被设置为未激活的状态后,构件无法被选择、修改颜色与材质、控制可见性(显示、隐藏)、设置隔离效果,用户可以穿透该构件选择其后方的构件、三维标签
Parameters:
Name | Type | Description |
---|---|---|
ids | Array | 构件的ID集合,如["x1", "x2"] |
deactivateComponentsByObjectData(conditions)
根据筛选条件将构件设置为未激活状态 当构件被设置为未激活的状态后,构件无法被选择、修改颜色与材质、控制可见性(显示、隐藏)、设置隔离效果,用户可以穿透该构件选择其后方的构件、三维标签
Parameters:
Name | Type | Description |
---|---|---|
conditions | Array | 构件筛选条件,筛选字段可通过getObjectDataById方法获取 |
enableShowGridBubblesAlongWithAxis(isEnabled)
轴号是否一直显示在窗口内,设置为true后,相机范围外的轴号将沿轴线显示在窗口边缘
Parameters:
Name | Type | Description |
---|---|---|
isEnabled | Boolean | 轴号是否沿轴线在视口显示 |
get3DViewStates(callback)
获取模型三维视图的状态,用于切换三维视图,当rvt文件转换时配置参数"export3DViews": true时可用
Parameters:
Name | Type | Description |
---|---|---|
callback | Function | 获取模型三维视图状态的回调函数 |
getAreaProperty(id, callback)
获取面积属性
Parameters:
Name | Type | Description |
---|---|---|
id | String | 要获取属性的面积ID |
callback | Function | 获取属性回调函数 |
getAreas(successCallback, failureCallback)
获取空间
Parameters:
Name | Type | Description |
---|---|---|
successCallback | Function | 获取空间信息成功后的回调函数 |
failureCallback | Function | 获取空间信息失败后的回调函数 |
getAxisGridsIntersection(fileId, floorId, axisNumber)
求多个轴线的交点
Parameters:
Name | Type | Description |
---|---|---|
fileId | String | 文件ID,如果是单文件,可不填;如果是集成模型,则为必填项 |
floorId | String | 楼层ID,如果是集成模型,则为单模型文件中的楼层ID(不是集成模型聚合后的楼层ID) |
axisNumber | Array | 相交轴线的轴号数组,例如["9", "A-R", "A-S"] |
Returns:
Type | Description |
---|---|
Array | 相交轴线的轴号及交点信息 |
getBlinkComponents()
获取闪烁状态集合中的构件ID数组
Returns:
Type | Description |
---|---|
Array | 构件ID数组 |
getBoundingBox(fileId, callback)
根据fileID获取模型的包围盒
Parameters:
Name | Type | Description |
---|---|---|
fileId | String | 文件ID,集成模型的子文件ID,如果是单文件或者集成文件,可不填(直接输入callback); |
callback | Function | 回调函数 |
getBoundingBoxById(id)
根据构件ID获取包围盒信息
Parameters:
Name | Type | Description |
---|---|---|
id | String | 构件ID |
Returns:
Type | Description |
---|---|
Object | 包围盒对象 |
getCategoryVisibility(success, failure)
获取图元类别的可见性
Parameters:
Name | Type | Description |
---|---|---|
success | Function | 加载成功之后的回调函数 |
failure | Function | 加载失败之后的回调函数 |
getComponentOverriddenProperty(id, successCallback, failureCallback)
获取修改后的构件属性
Parameters:
Name | Type | Description |
---|---|---|
id | String | 构件ID |
successCallback | Function | 获取属性成功的回调函数 |
failureCallback | Function | 获取属性失败的回调函数 |
getComponentProperty(id, successCallback, failureCallback)
获取构件属性
Parameters:
Name | Type | Description |
---|---|---|
id | String | 构件ID |
successCallback | Function | 获取属性成功的回调函数 |
failureCallback | Function | 获取属性失败的回调函数 |
getComponentsBySetId(id, callback)
根据集合ID获取集合中所有构件的ID
Parameters:
Name | Type | Description |
---|---|---|
id | String | 集合ID |
callback | Function | 获取集合中所有构件ID数组的回调函数 |
getComponentStatus(id)
获取构件显示状态 如显示隐藏、半透明、隔离、变色
Parameters:
Name | Type | Description |
---|---|---|
id | String | 构件ID |
Returns:
Type | Description |
---|---|
Object | 构件显示状态 |
getCurrentAxisGridsState()
获取当前轴网的状态
Returns:
Type | Description |
---|---|
Object | 当前轴网状态 |
getDimensions(fileId, successCallback, failureCallback)
获取三维标注信息
Parameters:
Name | Type | Description |
---|---|---|
fileId | String | 文件id,集成模型时为必填项 |
successCallback | Function | 获取成功回调函数 |
failureCallback | Function | 获取失败回调函数 |
getDrawingListbyId(fileId, componentId, callback)
根据文件ID和构件ID获取包含该构件的图纸列表
Parameters:
Name | Type | Description |
---|---|---|
fileId | String | 集成模型的子文件ID |
componentId | String | 构件ID |
callback | Function | 获取图纸列表成功后的回调函数 |
getDrawingPosition(option, callback)
根据图纸ID和模型中的坐标值,获取图纸对应坐标,仅支持rvt导出的单视口平面图纸
Parameters:
Name | Type | Description |
---|---|---|
option | Object | 获取图纸坐标的参数对象 |
callback | Function | 回调函数,返回图纸model空间对应的坐标,单位与point参数的单位一致。图纸单位为毫米,模型单位可以通过Viewer3D.getUnit()方法获取 |
getDrawingsheets(fileId, callback)
获取模型的图纸列表
Parameters:
Name | Type | Description |
---|---|---|
fileId | String | 集成模型的子文件ID,集成模型为必填项 |
callback | Function | 获取模型的图纸列表的回调函数 |
getDrawingTree(fileId, callback)
获取模型的图纸目录(前置条件:模型转换时设置参数'exportDrawing': true)
Parameters:
Name | Type | Description |
---|---|---|
fileId | String | 集成模型的子文件ID,集成模型为必填项 |
callback | Function | 获取模型的图纸列表的回调函数 |
getExplosionExtent()
获取爆炸效果离散系数
Returns:
Type | Description |
---|---|
Number | 爆炸系数,取值范围[0, 3] |
getFamilyTypes(callback)
获取族文件类型,仅对rfa文件生效
Parameters:
Name | Type | Description |
---|---|---|
callback | Function | 回调函数 |
Returns:
Type | Description |
---|---|
Array | 针对Rfa文件 |
getFeatureData(featureType)
获取模型的元素信息对象
Parameters:
Name | Type | Description |
---|---|---|
featureType | String | 元素信息类型,对于管网分析,featureType="pipeSystem"。 |
Returns:
Type | Description |
---|---|
Object | 元素信息对象 |
getFiles(callback)
获取集成模型的文件列表
Parameters:
Name | Type | Description |
---|---|---|
callback | Function | 获取集成模型的文件列表的回调函数 |
getFloorBoundingBoxById(floorId, callback)
根据楼层ID获取楼层包围盒
Parameters:
Name | Type | Description |
---|---|---|
floorId | String | 楼层ID |
callback | Function | 回调函数 |
getFloorExplosionDirection()
获取楼层爆炸离散方向
Returns:
Type | Description |
---|---|
Object | 爆炸方向 |
getFloorExplosionExtent()
获取楼层爆炸离散系数
Returns:
Type | Description |
---|---|
Number | 爆炸系数,取值范围[0, 30] |
getFloorExplosionList()
获取参与楼层爆炸的楼层ID列表
Returns:
Type | Description |
---|---|
Array | floorIds 参与楼层爆炸的楼层ID列表 |
getFloors(callback)
获取单模型、集成模型楼层列表
Parameters:
Name | Type | Description |
---|---|---|
callback | Function | 获取楼层回调函数 |
getFloorsbyFileId(fileId, callback)
在集成模型中根据文件ID获取单模型的楼层信息
Parameters:
Name | Type | Description |
---|---|---|
fileId | String | 集成模型的子文件ID |
callback | Function | 获取子模型楼层信息的回调函数 |
getGridBubblesColor()
获取轴网轴号的颜色
Returns:
Type | Description |
---|---|
Glodon.Web.Graphics.Color | 颜色 |
getGridLinesColor()
获取轴网轴线的颜色
Returns:
Type | Description |
---|---|
Glodon.Web.Graphics.Color | 颜色 |
getInformation()
获取模型基本信息,如构件数、三角面、定点数
Returns:
Type | Description |
---|---|
Object | 模型基本信息 |
getIntegrateTranslation(callback)
获取模型集成的平移值
Parameters:
Name | Type | Description |
---|---|---|
callback | Function | 模型集成的平移值的回调函数 |
getIsolatedComponentColor()
获取隔离构件的颜色
Returns:
Type | Description |
---|---|
Glodon.Web.Graphics.Color | 颜色 |
getLevelMapping(callback)
获取集成模型楼层id对应关系
Parameters:
Name | Type | Description |
---|---|---|
callback | Function | 获取集成后楼层id与单文件楼层id对应关系的回调函数 |
getLinksInfo(callback)
获取模型链接信息
Parameters:
Name | Type | Description |
---|---|---|
callback | Function | 获取链接信息成功后的回调函数 |
getManifest(successCallback, failureCallback)
获取manifest文件的数据
Parameters:
Name | Type | Description |
---|---|---|
successCallback | Function | 获取文件数据成功的回调函数 |
failureCallback | Function | 获取文件数据失败的回调函数 |
getMapInfo(callback)
获取模型的小地图信息
Parameters:
Name | Type | Description |
---|---|---|
callback | Function | 获取模型的小地图信息的回调函数 |
getMatchIds(conditions)
根据筛选条件获取对应构件id列表
Parameters:
Name | Type | Description |
---|---|---|
conditions | Array | 构件筛选条件,筛选字段可通过getObjectDataById方法获取 |
Returns:
Type | Description |
---|---|
Array | 符合条件的所有构件ID数组 |
getMaterialProperty(id, successCallback, failureCallback)
获取材质属性
Parameters:
Name | Type | Description |
---|---|---|
id | String | 构件ID |
successCallback | Function | 获取材质属性成功的回调函数 |
failureCallback | Function | 获取材质属性失败的回调函数 |
getMaterialsByComponentId(id)
根据构件ID获取材质对象
Parameters:
Name | Type | Description |
---|---|---|
id | String | 构件ID |
Returns:
Type | Description |
---|---|
Array | materials 材质对象的数组 |
getMepSystem(fileId, successCallback, failureCallback)
获取模型中的系统拓扑信息,目前支持rvt文件中的给排水、暖通系统
Parameters:
Name | Type | Description |
---|---|---|
fileId | String | 集成模型的子文件ID |
successCallback | Function | 获取系统拓扑信息成功之后的回调函数 |
failureCallback | Function | 获取系统拓扑信息失败之后的回调函数 |
getMinimumComponentDistanceById(componentId1, componentId2)
获取两个构件的最小距离
Parameters:
Name | Type | Description |
---|---|---|
componentId1 | String | 构件ID |
componentId2 | String | 构件ID |
Returns:
Type | Description |
---|---|
Object | 计算结果对象,包括两个构件的最小距离与拥有最小距离的两个点 |
getModelInfo(successCallback, failureCallback)
获取config文件数据
Parameters:
Name | Type | Description |
---|---|---|
successCallback | Function | 获取文件数据成功的回调函数 |
failureCallback | Function | 获取文件数据失败的回调函数 |
getModelSet(callback)
获取模型组属性
Parameters:
Name | Type | Description |
---|---|---|
callback | Function | 获取属性回调函数 |
getModelTransformation()
获取指定模型的坐标变换状态
Returns:
Type | Description |
---|---|
Array | 描述模型坐标变换的对象 |
getModelTree(callback)
获取模型构件树
Parameters:
Name | Type | Description |
---|---|---|
callback | Function | 获取目录树的回调函数 |
getNearestAxisGrids(point3d, fileId, callback)
获取距指定点最近的轴线及其偏移值
Parameters:
Name | Type | Description |
---|---|---|
point3d | Object | 点对象 |
fileId | String | 集成模型的子文件ID,单文件不填,集成模型为必填项 |
callback | Function | 获取轴网信息的回调函数 |
Example
// 构造三维点对象
let point = { x: 5000, y: 6000, z: -350 };
// 单模型获取指定点最近的轴线
viewer.getModel(modelId).getNearestAxisGrids(point, '', function(data) {
console.log(data);
});
getNestedComponents(callback)
获取嵌套构件信息
Parameters:
Name | Type | Description |
---|---|---|
callback | Function | 获取嵌套构件方法的回调函数 |
getObjectDataById(objectId)
根据构件ID获取ObjectData,用于作为筛选条件
Parameters:
Name | Type | Description |
---|---|---|
objectId | String | 构件ID |
Returns:
Type | Description |
---|---|
Object | 筛选条件ObjectData |
getObjectMap(callback)
获取构件映射关系
Parameters:
Name | Type | Description |
---|---|---|
callback | Function | 获取构件映射关系的回调函数 |
getProjectInfo(successCallback, failureCallback)
获取项目参数信息
Parameters:
Name | Type | Description |
---|---|---|
successCallback | Function | 获取项目信息成功之后的回调函数 |
failureCallback | Function | 获取项目信息失败之后的回调函数 |
getRoomProperty(id, callback)
获取房间属性
Parameters:
Name | Type | Description |
---|---|---|
id | String | 要获取属性的房间ID |
callback | Function | 获取属性回调函数 |
getScheduleById(id, callback)
根据明细表ID获取明细表内容
Parameters:
Name | Type | Description |
---|---|---|
id | String | 明细表ID |
callback | Function | 明细表内容 |
getScheduleList(callback)
获取明细表列表(仅对rvt文件生效,转换时需添加配置项"exportSchedule":"true")
Parameters:
Name | Type | Description |
---|---|---|
callback | Function | 获取目录树回调函数 |
getSelectedComponents()
获取选中集合中的构件ID数组
Returns:
Type | Description |
---|---|
Array | 构件ID列表 |
getSetByComponentId(id, callback)
根据构件ID获取所属集合的信息
Parameters:
Name | Type | Description |
---|---|---|
id | String | 构件ID |
callback | Function | 获取集合信息的回调函数,集合信息格式示例{id: "1234", name: "parent", type: "group", elements: ['1','2','3','4',...]} |
hideAllComponents()
隐藏模型全部构件
hideComponentsById(ids)
根据构件ID隐藏构件
Parameters:
Name | Type | Description |
---|---|---|
ids | Array | 多个构件ID的数组,如["x1", "x2"] |
hideComponentsByObjectData(conditions)
根据筛选条件隐藏构件
Parameters:
Name | Type | Description |
---|---|---|
conditions | Array | 构件筛选条件,筛选字段可通过getObjectDataById方法获取 |
isolateComponentsById(ids, state)
根据构件ID隔离构件,其他全部隐藏或半透明
Parameters:
Name | Type | Description |
---|---|---|
ids | Array | 多个构件ID的数组,如["x1", "x2"] |
state | Glodon.Bimface.Viewer.IsolateOption | 被隔离构件显示状态,如Glodon.Bimface.Viewer.IsolateOption.MakeOthersTranslucent |
isolateComponentsByObjectData(conditions, state)
根据筛选条件隔离构件,其他全部隐藏或半透明
Parameters:
Name | Type | Description |
---|---|---|
conditions | Array | 构件筛选条件,筛选字段可通过getObjectDataById方法获取 |
state | Glodon.Bimface.Viewer.IsolateOption | 被隔离构件显示状态,如Glodon.Bimface.Viewer.IsolateOption.MakeOthersTranslucent |
opaqueAllComponents()
取消所有构件半透明
opaqueComponentsById(ids)
根据构件ID取消构件半透明
Parameters:
Name | Type | Description |
---|---|---|
ids | Array | 多个构件ID的数组,如["x1", "x2"] |
opaqueComponentsByObjectData(conditions)
根据筛选条件取消构件半透明
Parameters:
Name | Type | Description |
---|---|---|
conditions | Array | 构件筛选条件,筛选字段可通过getObjectDataById方法获取 |
overrideAllComponentsColor(color)
给所有构件着色
Parameters:
Name | Type | Description |
---|---|---|
color | Glodon.Web.Graphics.Color | 着色颜色 |
overrideComponentsColorById(ids, color)
按构件ID给构件着色
Parameters:
Name | Type | Description |
---|---|---|
ids | Array | 多个构件ID的数组,如["x1", "x2"] |
color | Glodon.Web.Graphics.Color | 着色颜色 |
overrideComponentsColorByObjectData(conditions, color)
根据筛选条件给构件着色
Parameters:
Name | Type | Description |
---|---|---|
conditions | Array | 构件筛选条件,筛选字段可通过getObjectDataById方法获取 |
color | Glodon.Web.Graphics.Color | 颜色 |
overrideComponentsFrameColor(condition, color)
根据条件对构件线框着色
Parameters:
Name | Type | Description |
---|---|---|
condition | Object | 条件参数 |
color | Glodon.Web.Graphics.Color | 构件线框颜色 |
overrideComponentsMaterialById(ids, material)
按构件ID给构件替换材质
Parameters:
Name | Type | Description |
---|---|---|
ids | Array | 多个构件ID的数组,如["x1", "x2"] |
material | Glodon.Bimface.Plugins.Material.Material | 材质对象 |
overrideComponentsOpacityById(ids, opacity)
按构件ID设置构件的不透明度
Parameters:
Name | Type | Description |
---|---|---|
ids | Array | 多个构件ID的数组,如["x1", "x2"] |
opacity | Number | 不透明度,取值范围[0, 1] |
overrideComponentsOpacityByObjectData(conditions, opacity)
根据筛选条件设置构件的不透明度
Parameters:
Name | Type | Description |
---|---|---|
conditions | Array | 构件筛选条件,筛选字段可通过getObjectDataById方法获取 |
opacity | Number | 不透明度,取值范围[0, 1] |
removeAllAxisGrids()
隐藏模型中所有的轴网
removeAxisGridsByElevation(fileId, elevation)
按文件ID和给定高度移除轴网
Parameters:
Name | Type | Description |
---|---|---|
fileId | String | 文件ID,如果是单文件,可不填;如果是集成模型,则为必填项 |
elevation | Number | 高度 |
removeAxisGridsByFloor(fileId, floorId, callback)
按文件ID和楼层ID移除轴网
Parameters:
Name | Type | Description |
---|---|---|
fileId | String | 集成模型的子文件ID,如果是单模型文件,可不填;如果是集成模型,则为必填项 |
floorId | String | 楼层ID,如果是集成模型,则为单模型文件中的楼层ID(不是集成模型聚合后的楼层ID) |
callback | Function | 回调函数 |
removeGlowEffectById(ids)
根据构件ID移除发光效果
Parameters:
Name | Type | Description |
---|---|---|
ids | Array | 构件ID的数组 |
removeSelectedId(ids)
根据构件ID从选中集合中移除
Parameters:
Name | Type | Description |
---|---|---|
ids | Array | 多个构件ID的数组,如["x1", "x2"] |
restoreAllDefault()
恢复所有默认显示,包括着色、选择、隔离、半透明、空间等
restoreComponentsColorById(ids)
根据构件ID恢复构件的原来颜色
Parameters:
Name | Type | Description |
---|---|---|
ids | Array | 多个构件ID的数组,如["x1", "x2"] |
restoreComponentsColorByObjectData(conditions)
根据筛选条件恢复构件的原来颜色
Parameters:
Name | Type | Description |
---|---|---|
conditions | Array | 构件筛选条件,筛选字段可通过getObjectDataById方法获取 |
restoreComponentsFrameColor(condition)
根据条件清除构件线框着色,恢复默认显示
Parameters:
Name | Type | Description |
---|---|---|
condition | Object | 条件参数 |
restoreComponentsMaterialById(ids)
根据构件ID恢复构件的原来材质
Parameters:
Name | Type | Description |
---|---|---|
ids | Array | 多个构件ID的数组,如["x1", "x2"] |
restoreComponentsOpacityById(ids)
按构件id恢复构件不透明度
Parameters:
Name | Type | Description |
---|---|---|
ids | Array | 构件id数组,如['id1', 'id2'] |
restoreComponentsOpacityByObjectData(conditions)
按筛选条件恢复构件不透明度
Parameters:
Name | Type | Description |
---|---|---|
conditions | Array | 筛选条件,从getObjectDataById(objectId)获取 |
restoreDefault()
恢复默认显示(不含着色),包括选择、隔离、半透明、空间等
restoreIsolatedComponentColor()
恢复隔离状态下其他构件的颜色
searchText(text, callback)
对文本进行搜索,暂支持3dm文件
Parameters:
Name | Type | Description |
---|---|---|
text | String | 搜索的文字 |
callback | Function | 搜索之后的回调函数 |
setAxisGridsState(state)
设置当前轴网的状态
Parameters:
Name | Type | Description |
---|---|---|
state | Object | 轴网状态 |
setBlinkColor(color)
设置闪烁状态的构件颜色
Parameters:
Name | Type | Description |
---|---|---|
color | Glodon.Web.Graphics.Color | 构件闪烁颜色,当参数为空时,恢复为默认颜色 |
setBlinkComponentsById(objectIds, blinkOption)
根据构件ID设置多个构件为闪烁状态集合
Parameters:
Name | Type | Description |
---|---|---|
objectIds | Array | 多个构件ID的数组 |
blinkOption | Object | 构件闪烁的配置项 |
setBlinkIntervalTime(interval)
设置闪烁状态颜色变化的间隔时间
Parameters:
Name | Type | Description |
---|---|---|
interval | Number | 间隔时间(毫秒),参数为空时恢复为默认,参数 interval <= 0 时无效 |
setComponentsOpacity(ids, state)
根据构件ID设置构件半透明,或取消构件半透明
Parameters:
Name | Type | Description |
---|---|---|
ids | Array | 多个构件ID的数组,如["x1", "x2"] |
state | Glodon.Bimface.Viewer.OpacityOption | 半透明,或取消半透明,如Glodon.Bimface.Viewer.OpacityOption.Translucent |
setExplosionCenter(option)
指定爆炸中心
Parameters:
Name | Type | Description |
---|---|---|
option | Object | 指定中心选项 |
setExplosionExtent(extent)
设置爆炸效果离散系数,需在Viewer3DConfig中设置enableExplosion为true
Parameters:
Name | Type | Description |
---|---|---|
extent | Number | 爆炸系数,取值范围[0, 3] |
setFloorExplosion(extent, floorIds, direction)
设置楼层爆炸效果,需在Viewer3DConfig中设置enableExplosion为true
Parameters:
Name | Type | Description |
---|---|---|
extent | Number | 楼层爆炸离散系数,范围为[0, 30] |
floorIds | Array | 参与楼层爆炸的楼层ID列表,默认全部楼层参与,floorIds=[]时所有楼层不参与楼层爆炸 |
direction | Object | 楼层爆炸的方向,缺省值为{x: 0, y: 0, z: 1} |
setGlowEffectById(ids, option)
根据构件ID设置发光效果
Parameters:
Name | Type | Description |
---|---|---|
ids | Array | 构件ID的数组 |
option | Object | 发光效果配置项 |
setGridBubblesColor(color)
设置轴网轴号的颜色
Parameters:
Name | Type | Description |
---|---|---|
color | Glodon.Web.Graphics.Color | 颜色 |
setGridLinesColor(color)
设置轴网轴线的颜色
Parameters:
Name | Type | Description |
---|---|---|
color | Glodon.Web.Graphics.Color | 颜色 |
setIsolatedComponentColor(color)
设置隔离构件的颜色
Parameters:
Name | Type | Description |
---|---|---|
color | Glodon.Web.Graphics.Color | 颜色 |
setModelRotationX(basePoint, rotation)
设置模型绕X轴旋转
Parameters:
Name | Type | Description |
---|---|---|
basePoint | Object | 模型旋转的基点 |
rotation | Number | 模型旋转的弧度值 |
setModelRotationY(basePoint, rotation)
设置模型绕Y轴旋转
Parameters:
Name | Type | Description |
---|---|---|
basePoint | Object | 模型旋转的基点 |
rotation | Number | 模型旋转的弧度值 |
setModelRotationZ(basePoint, rotation)
设置模型绕Z轴旋转
Parameters:
Name | Type | Description |
---|---|---|
basePoint | Object | 模型旋转的基点 |
rotation | Number | 模型旋转的弧度值 |
setModelScale(basePoint, scale)
设置模型缩放
Parameters:
Name | Type | Description |
---|---|---|
basePoint | Object | 模型缩放的基点 |
scale | Number | 模型缩放系数 |
setModelTransformation(modelTransformation)
设置指定模型的坐标变换状态
Parameters:
Name | Type | Description |
---|---|---|
modelTransformation | Array | 描述模型坐标变换的对象 |
setModelTranslation(translation)
设置模型平移
Parameters:
Name | Type | Description |
---|---|---|
translation | Object | 模型平移的距离 |
Example
// 定义模型平移向量
let translation = { x: 5000, y: 6000, z: -350 };
// 平移模型
viewer.getModel(modelId).setModelTranslation(translation);
setSelectedComponentsById(ids)
根据构件ID设置多个构件为选中集合
Parameters:
Name | Type | Description |
---|---|---|
ids | Array | 多个构件ID的数组,如["x1", "x2"] |
setSelectedComponentsByObjectData(conditions)
根据筛选条件设置多个构件为选中集合
Parameters:
Name | Type | Description |
---|---|---|
conditions | Array | 构件筛选条件,筛选字段可通过getObjectDataById方法获取 |
setTransparentedComponentColor(color)
设置半透明构件的颜色
Parameters:
Name | Type | Description |
---|---|---|
color | Glodon.Web.Graphics.Color | 半透明构件的颜色 |
showAllAxisGrids()
显示所有轴网
showAxisGridsByElevation(fileId, elevation, callback)
按文件ID和高度显示轴网
Parameters:
Name | Type | Description |
---|---|---|
fileId | String | 文件ID,如果是单文件,可不填;如果是集成模型,则为必填项 |
elevation | String | 高度 |
callback | Function | 回调函数 |
showAxisGridsByFloor(fileId, floorId, callback)
按文件ID和楼层ID显示轴网
Parameters:
Name | Type | Description |
---|---|---|
fileId | String | 文件ID,如果是单文件,可不填;如果是集成模型,则为必填项 |
floorId | String | 楼层ID,如果是集成模型,则为单模型文件中的楼层ID(不是集成模型聚合后的楼层ID) |
callback | Function | 回调函数 |
showComponentsById(ids)
根据构件ID显示构件
Parameters:
Name | Type | Description |
---|---|---|
ids | Array | 多个构件ID的数组,如["x1", "x2"] |
showComponentsByObjectData(conditions)
根据筛选条件显示构件
Parameters:
Name | Type | Description |
---|---|---|
conditions | Array | 构件筛选条件,筛选字段可通过getObjectDataById方法获取 |
showExclusiveComponentsByObjectData(conditions, progressCallback, finishCallback)
根据筛选条件显示构件,其余全部隐藏
Parameters:
Name | Type | Description |
---|---|---|
conditions | Array | 构件筛选条件,筛选字段可通过getObjectDataById方法获取 |
progressCallback | Function | 加载进度回调函数,可不写 |
finishCallback | Function | 加载完成回调函数,可不写 |
showFamilyTypeById(id)
切换族类型,仅对rfa文件生效
Parameters:
Name | Type | Description |
---|---|---|
id | String | 族类型ID |
splitComponentByPlane(id, plane)
根据平面拆分构件
Parameters:
Name | Type | Description |
---|---|---|
id | String | 被拆分的构件ID |
plane | Object | 拆分用的平面对象,如{point, normal} |
Returns:
Type | Description |
---|---|
Array | 构件被拆分后的mesh对象列表 |
Example
// 构造切分平面,由一个点及一个向量确定
let splitPlane = {
point: { x: 198896, y: 3793, z: 14415 },
normal: { x: 0.99936, y: 0.03574, z: 0 }
};
// 切分指定构件
let splitComponentArr = viewer.getModel(modelId).splitComponentByPlane(objectId, splitPlane);
splitComponentByStretchedPlane(id, plane)
根据多段线拉伸平面拆分构件
Parameters:
Name | Type | Description |
---|---|---|
id | String | 被拆分的构件ID |
plane | Object | 拆分用的平面对象,使用多段线的顶点和拉伸方向定义{points, stretch:{direction}} |
Returns:
Type | Description |
---|---|
Array | 构件被拆分后的mesh对象列表 |
transparentAllComponents()
所有构件半透明
transparentComponentsById(ids)
根据构件ID设置构件为半透明
Parameters:
Name | Type | Description |
---|---|---|
ids | Array | 多个构件ID的数组,如["x1", "x2"] |
transparentComponentsByObjectData(conditions)
根据筛选条件设置构件为半透明
Parameters:
Name | Type | Description |
---|---|---|
conditions | Array | 构件筛选条件,筛选字段可通过getObjectDataById方法获取 |
zoomToSelectedComponents(margin, callback, duration)
缩放到加入选中集合的构件
Parameters:
Name | Type | Description |
---|---|---|
margin | Number | 相机距离选中构件的远近,margin > 0 模型缩小(相机远离),margin < 0 模型放大(相机靠近) |
callback | Function | 缩放完成时的回调函数,可不写 |
duration | Number | 动画持续时间,单位为毫秒,默认值为1000ms |