SectionBox
类:剖切盒,用于在场景中自由构造剖切盒
Constructor
new Glodon.Bimface.Plugins.Section.SectionBox(sectionBoxConfig)
构造剖切盒对象
Parameters:
Name | Type | Description |
---|---|---|
sectionBoxConfig | Glodon.Bimface.Plugins.Section.SectionBoxConfig | 剖切盒的配置项 |
Methods
changeClipDirection(isReverse)
变更剖切方向
Parameters:
Name | Type | Description |
---|---|---|
isReverse | Boolean | 剖切方向,true:保留剖切盒外部构件;false:保留剖切盒内部构件,默认为false |
clearFilter()
清除筛选条件,清除后场景内所有模型均参与剖切
enable(isEnabled)
是否启用剖切实例
Parameters:
Name | Type | Description |
---|---|---|
isEnabled | Boolean | 是否启用 |
enableHatch(isEnabled)
开启/关闭补面填充
Parameters:
Name | Type | Description |
---|---|---|
isEnabled | Boolean | 是否开启补面填充 |
enableSnap(isEnabled)
是否开启剖面捕捉
Parameters:
Name | Type | Description |
---|---|---|
isEnabled | Boolean | 是否开启剖面上特殊点捕捉 |
exit()
退出剖切盒
fitToModel()
适应到模型
getSectionBox()
获取剖切盒当前的范围
Returns:
Type | Description |
---|---|
Glodon.Web.Geometry.BoundingBox | 剖切盒当前的范围 |
hideBox()
隐藏剖切盒
isHatchEnabled()
获取补面填充的状态
Returns:
Type | Description |
---|---|
Boolean | 是否开启补面填充 |
isIncluded(point)
判断某个坐标是否在剖切盒内,即尚未被剖切到
Parameters:
Name | Type | Description |
---|---|---|
point | Object | 世界坐标点 |
lockBox(faces)
锁定剖切盒
Parameters:
Name | Type | Description |
---|---|---|
faces | Array | 剖切盒中需要锁定的面,"Top"上, "Bottom"下, "Front"前, "Back"后, "Left"左, "Right”右 |
reset()
重置剖切盒
rotateByAxis(axis, degree)
旋转剖切盒
Parameters:
Name | Type | Description |
---|---|---|
axis | String | 旋转轴,"XAxis","YAxis"或"ZAxis" |
degree | Number | 旋转角度 |
setBoxByVectors(basePoint, xVector, yVector, zVector)
通过向量设置剖切盒
Parameters:
Name | Type | Description |
---|---|---|
basePoint | Object | 剖切盒的基点 |
xVector | Object | 剖切盒的x轴向量 |
yVector | Object | 剖切盒的y轴向量 |
zVector | Object | 剖切盒的z轴向量 |
setFilter(conditions)
根据筛选条件设置参与剖切的对象
Parameters:
Name | Type | Description |
---|---|---|
conditions | Array | 筛选条件。在Viewer3D下,由modelId、objectIds或objectData构成的对象组成的数组,例:[{modelId:"151367034813"},{modelId:"151367034816",objectIds:["11","22"]},{modelId:"151367034816",objectData: [{levelName:"F01"}]}];在ViewerGIS下,由layerId、objectIds或objectData构成的对象组成的数组,例:[{layerId:"layer_151367034813"},{layerId:"layer_151367034816",objectIds:["11","22"]},{layerId:"layer_151367034816",objectData:[{levelName:"F01"}]}] |
setSectionBox(box)
设置剖切盒的范围
Parameters:
Name | Type | Description |
---|---|---|
box | Glodon.Web.Geometry.BoundingBox | 剖切盒的范围,box.min的x,y,z必须小于box.max,否则无效 |
showBox()
显示剖切盒
unlockBox()
解除剖切盒锁定状态