Class: FdPickPMComponent

FdMicroApp. FdPickPMComponent

点选PMTS模型构件


new FdPickPMComponent()

Methods


addIgnorePModel(pModel)

添加一个PModel到忽略列表(PModel)中

Parameters:
Name Type Description
pModel PModelSet

忽略的PModel


cancel()

取消


createBB(boundsMin, boundsMax, modelMatrix)

绘制部件边框

Parameters:
Name Type Description
boundsMin String

部件最小包围盒字符串

boundsMax String

部件最大包围盒字符串

modelMatrix Matrix4

世界变换矩阵

Returns:

返回pritimive对象

Type
Object

createLinePrimitive()

绘制线primitive


getData()

获取数据

Returns:

返回值格式: [{ componentid: 组件ID, tileset: tileset对象, tilesetURL: tileset地址 }...]

Type
Array.<Object>

getMode()

获取显示模式


getSingleMode(single)

获取单选模式

Parameters:
Name Type Description
single Boolean

true为单选模式


getUidBoundingSphere(pModel, componentID, callback)

显示或者隐藏某个部件

Parameters:
Name Type Description
pModel Object

模型

componentID String

部件ID

callback FdMicroApp.FdPickPMComponent~Callback

获取部件包围球信息的回调函数


hideAllComponents()

隐藏所有组件


hideAllComponentsBoundingBox()

取消所有部件的边框高亮


highlightComponent(componentID, tileset, r, g, b, a)

高亮某个部件

Parameters:
Name Type Description
componentID String

部件ID

tileset Object

模型

r Number

颜色R分量,范围0~255

g Number

颜色G分量,范围0~255

b Number

颜色B分量,范围0~255

a Number

透明度,范围0~1

Returns:

返回true表示设置成功,否则表示未成功

Type
Boolean

highlightComponentsArray(componentsAndColorArray, tilesets, restColor)

批量高亮部件

Parameters:
Name Type Description
componentsAndColorArray Array.<Object>

部件数组和颜色

componentsAndColorArray[i].components Array.<String>

部件数组

componentsAndColorArray[i].color Array.<Number>

部件颜色

tilesets Array.<Freedo.FreedoPModelset>

需要设置的数据集数组

restColor Array.<Number>

除去componentsAndColorArray中指定的部件,剩余部件的颜色


on(listener [, scope])

注册事件捕捉

Parameters:
Name Type Argument Description
listener FdMicroApp.FdPickPMComponent~FdPickPMComponentCallback

当有事件触发时被执行的函数。

scope Object <optional>

listener函数执行时的绑定的对象。

Returns:

返回一个函数,调用该函数可以取消监听。

Type
Freedo.Event~RemoveCallback

reset()

重置


setBaseColor(r, g, b, a)

设置场景模型基本颜色

Parameters:
Name Type Description
r number

颜色R分量,范围0~255

g number

颜色G分量,范围0~255

b number

颜色B分量,范围0~255

a number

透明度,范围0~1


setBBoxColor(r, g, b, a)

设置线框颜色

Parameters:
Name Type Description
r Number

颜色R分量,范围0~255

g Number

颜色G分量,范围0~255

b Number

颜色B分量,范围0~255

a Number

透明度,范围0~1


setClearOnEmptyClick(clear)

点击空白处时是否清空特效,默认清空

Parameters:
Name Type Description
clear Boolean

true时为清空,false为不清空


setClickMode(mode)

设置点击模式(设置后覆盖鼠标操作模式设置)

Parameters:
Name Type Description
mode Number

参见ScreenSpaceEventType的取值


setHighlightColor(r, g, b, a)

设置高亮颜色

Parameters:
Name Type Description
r Number

颜色R分量,范围0~255

g Number

颜色G分量,范围0~255

b Number

颜色B分量,范围0~255

a Number

透明度,范围0~1


setIgnoreIDs(ignoreIDs)

设置忽略列表

Parameters:
Name Type Description
ignoreIDs Array.<String>

包含要过滤ID的数组


setIgnorePModels(pModels)

设置忽略列表(PModel)

Parameters:
Name Type Description
pModels Array.<PModelSet>

忽略列表


setMode(mode)

设置显示模式

Parameters:
Name Type Description
mode String

模式,HIGH_LIGHT(高亮模式),SHOW_HIDE(隐藏模式),PICK_MODE(选取模式,无特效),BLINK_MODE(闪烁模式),BBOX_MODE(线框模式)


setMouseMode(mode)

设置鼠标操作模式(可多选,设置后覆盖点击模式设置)

Parameters:
Name Type Description
mode String

可设置为'left' 'right' 'middle'中的一个或多个,当设置多个时,使用'|'分隔,如:'left|right'


setPMTSManager()

设置PMTSManager


setSingleMode(single)

设置单选模式

Parameters:
Name Type Description
single Boolean

true为单选模式


showAllComponents()

显示所有组件


showComponent(componentID, tileset, show)

显示或者隐藏某个部件

Parameters:
Name Type Description
componentID String

部件ID

tileset Object

模型

show Boolean

显示用true表示,隐藏用false表示


showComponentBBoxByUid(pmtsID, uid)

通过uid高亮某个部件的边框

Parameters:
Name Type Description
pmtsID String

pmtsID

uid STRING

部件uid

Returns:

返回true表示设置成功,否则表示未成功

Type
Boolean

showComponentBoundingBox(picked)

高亮某个部件的边框

Parameters:
Name Type Description
picked Object

部件feature

Returns:

返回true表示设置成功,否则表示未成功

Type
Boolean

showComponentsArray(componentsArray, tilesets, show)

批量显隐部件

Parameters:
Name Type Description
componentsArray Array.<String>

部件数组

tilesets Array.<Freedo.FreedoPModelset>

需要设置的数据集数组

show Boolean

部件数组的显隐


start()

开始


unhighlightAllComponents()

恢复所有高亮对象


unhighlightComponent(componentID, tileset)

取消某个高亮部件

Parameters:
Name Type Description
componentID String

部件ID

tileset Object

模型

Returns:

返回true表示设置成功,否则表示未成功

Type
Boolean

Type Definitions


Callback( [result] [, error])

FdPickPMComponent的回调函数类型

Parameters:
Name Type Argument Description
result Object <optional>

包围球对象,如果出现错误,则此参数为undefined

error String <optional>

返回错误字符串,如果是undefined,则表示没有错误


FdPickPMComponentCallback(eventType, eventArg)

Parameters:
Name Type Description
eventType String

事件类型有:DataChanged

eventArg Object

DataChanged事件返回模型和部件ID