渲染SDK 0.1.2
载入中...
搜索中...
未找到
AMCAXRender::PluginManage类 参考abstract

Plugin Management Class 更多...

#include <Interface/PluginManage.h>

Public 成员函数

virtual EntityId AddPluginFromMeshEntity (std::shared_ptr< AbstractEntity > entity, bool isInstancedRender=false)=0
 Add Plugin from Entity Geometry Data
 
virtual EntityId UpdateEntityPlugin (std::shared_ptr< AbstractEntity > entity)=0
 Update Plugin from Entity Geometry Data
 
virtual void UpdateInstancedPointData (EntityId id, InstancedPointData &data)=0
 Update Instanced Point Data
 
virtual EntityId AddPluginFromType (PluginType type, EntityId pid="")=0
 Create Plugin from Plugin Type
 
virtual void RemovePlugin (EntityId id)=0
 Remove Plugin
 
virtual void SetProperty (EntityId id, std::shared_ptr< PluginProperty > prop, ViewType viewType=ViewType::MAIN)=0
 Set Plugin Property
 
virtual std::shared_ptr< PluginPropertyGetProperty (EntityId id, ViewType viewType=ViewType::MAIN)=0
 Get Plugin Property
 
virtual void BatchSetProperties (EntityId id, std::shared_ptr< PluginProperty > prop)=0
 Set Batch Plugin Property
 
template<class T>
std::shared_ptr< T > GetProperty (EntityId id, ViewType viewType=ViewType::MAIN)
 Get Plugin Property
 
virtual void SetVisible (EntityId id, bool visible, ViewType viewType=ViewType::MAIN)=0
 Set Plugin Visibility
 
virtual void SetMatrix (EntityId id, double *matrix)=0
 Set Plugin Transformation Matrix
 
virtual void PickEventFilter (PickType type)=0
 Set Pick Event Filter
 
virtual EventId RegisterPickEvent (EventType event, PluginCallback command)=0
 Register Pick Event, Unregister Pick Event
 
virtual void UnregisterPickEvent (EventId id)=0
 Unregister Pick Event
 
virtual void UnregisterPickEvent (EventType event)=0
 Unregister Pick Event
 
virtual void SetHightLight (EntityId id)=0
 Set Highlight
 
virtual void ClearHightLight (EntityId id)=0
 Clear Highlight
 
virtual void SetHightLight (EntityId id, PickType type, std::vector< int > indexs)=0
 Set Highlight for Specific Plugin Submodule
 
virtual void ClearHightLight ()=0
 Clear Highlight
 
virtual void AddHightLight (EntityId id, PickType type, int index)=0
 Add Highlight to Plugin Submodule
 
virtual void RemoveHightLight (EntityId id, PickType type, int index)=0
 Remove Highlight from Plugin Submodule
 
virtual void SetHightLightColor (double rgb[3])=0
 Set Highlight Color
 
virtual void UpdateEntityCellRange (EntityId id, EntityPlugProp::DataType type, unsigned long long min=0, unsigned long long max=0)=0
 Set the cell display range for the Entity plugin
 
virtual void ResetEntityCellRange (EntityId id, EntityPlugProp::DataType type)=0
 Resets the range of visible cells. After calling this function, all cells will be hidden.
 
virtual void RemoveAll ()=0
 remove all plugins
 

详细描述

Plugin Management Class

Used for adding, deleting, modifying, and querying plugins, as well as message registration

成员函数说明

◆ AddHightLight()

virtual void AMCAXRender::PluginManage::AddHightLight ( EntityId id,
PickType type,
int index )
pure virtual

Add Highlight to Plugin Submodule

This interface can be used to set the highlight of specific points, lines, and surfaces in the plugin

参数
[in]idPlugin id
[in]typeData type, (point, line, surface)
[in]indexSubmodule number
注解
This interface only applies to plugins of type PluginType::kEntity

◆ AddPluginFromMeshEntity()

virtual EntityId AMCAXRender::PluginManage::AddPluginFromMeshEntity ( std::shared_ptr< AbstractEntity > entity,
bool isInstancedRender = false )
pure virtual

Add Plugin from Entity Geometry Data

参数
[in]entityEntity object
返回
Plugin id
注解
Entity data needs to be created first

◆ AddPluginFromType()

virtual EntityId AMCAXRender::PluginManage::AddPluginFromType ( PluginType type,
EntityId pid = "" )
pure virtual

Create Plugin from Plugin Type

参数
[in]typePlugin type
返回
Plugin id
注解
Plugins of type PluginType::kEntity are created through the AddPluginFromMeshEntity interface
参见
AddPluginFromMeshEntity

◆ BatchSetProperties()

virtual void AMCAXRender::PluginManage::BatchSetProperties ( EntityId id,
std::shared_ptr< PluginProperty > prop )
pure virtual

Set Batch Plugin Property

参数
[in]idPlugin id
[in]propPlugin property

◆ ClearHightLight() [1/2]

virtual void AMCAXRender::PluginManage::ClearHightLight ( )
pure virtual

Clear Highlight

注解
This interface only applies to plugins of type PluginType::kEntity

◆ ClearHightLight() [2/2]

virtual void AMCAXRender::PluginManage::ClearHightLight ( EntityId id)
pure virtual

Clear Highlight

参数
[in]idPlugin id
注解
This interface only applies to plugins of type PluginType::kEntity

◆ GetProperty() [1/2]

template<class T>
std::shared_ptr< T > AMCAXRender::PluginManage::GetProperty ( EntityId id,
ViewType viewType = ViewType::MAIN )
inline

Get Plugin Property

模板参数
Propertytype
参数
[in]idPlugin id
返回
Plugin property
参见
Property types can be found in PluginProperty.h

◆ GetProperty() [2/2]

virtual std::shared_ptr< PluginProperty > AMCAXRender::PluginManage::GetProperty ( EntityId id,
ViewType viewType = ViewType::MAIN )
pure virtual

Get Plugin Property

参数
[in]idPlugin id
返回
Plugin property

◆ PickEventFilter()

virtual void AMCAXRender::PluginManage::PickEventFilter ( PickType type)
pure virtual

Set Pick Event Filter

参数
[in]typeData type, point, line, surface
注解
This interface only applies to plugins of type PluginType::kEntity

◆ RegisterPickEvent()

virtual EventId AMCAXRender::PluginManage::RegisterPickEvent ( EventType event,
PluginCallback command )
pure virtual

Register Pick Event, Unregister Pick Event

参数
[in]eventEvent type
[in]typeCallback function
返回
Event id
注解
This interface only applies to plugins of type PluginType::kEntity, and only supports left mouse click event picking

◆ RemoveHightLight()

virtual void AMCAXRender::PluginManage::RemoveHightLight ( EntityId id,
PickType type,
int index )
pure virtual

Remove Highlight from Plugin Submodule

This interface can be used to set the highlight of specific points, lines, and surfaces in the plugin

参数
[in]idPlugin id
[in]typeData type, (point, line, surface)
[in]indexSubmodule number
注解
This interface only applies to plugins of type PluginType::kEntity

◆ RemovePlugin()

virtual void AMCAXRender::PluginManage::RemovePlugin ( EntityId id)
pure virtual

Remove Plugin

参数
[in]idPlugin id

◆ ResetEntityCellRange()

virtual void AMCAXRender::PluginManage::ResetEntityCellRange ( EntityId id,
EntityPlugProp::DataType type )
pure virtual

Resets the range of visible cells. After calling this function, all cells will be hidden.

参数
[in]idPlugin ID
[in]typeData type, currently supports line and face
参见
UpdateEntityCellRange

◆ SetHightLight() [1/2]

virtual void AMCAXRender::PluginManage::SetHightLight ( EntityId id)
pure virtual

Set Highlight

参数
[in]idPlugin id
注解
This interface only applies to plugins of type PluginType::kEntity

◆ SetHightLight() [2/2]

virtual void AMCAXRender::PluginManage::SetHightLight ( EntityId id,
PickType type,
std::vector< int > indexs )
pure virtual

Set Highlight for Specific Plugin Submodule

This interface can be used to set the highlight of specific points, lines, and surfaces in the plugin

参数
[in]idPlugin id
[in]typeData type, (point, line, surface)
[in]indexsSubmodule numbers
注解
This interface only applies to plugins of type PluginType::kEntity

◆ SetHightLightColor()

virtual void AMCAXRender::PluginManage::SetHightLightColor ( double rgb[3])
pure virtual

Set Highlight Color

参数
[in]rgbColor value, color range [0,1]
注解
This interface only applies to plugins of type PluginType::kEntity

◆ SetMatrix()

virtual void AMCAXRender::PluginManage::SetMatrix ( EntityId id,
double * matrix )
pure virtual

Set Plugin Transformation Matrix

参数
[in]idPlugin id
[in]matrixMatrix
注解
Matrix structure 4*4

◆ SetProperty()

virtual void AMCAXRender::PluginManage::SetProperty ( EntityId id,
std::shared_ptr< PluginProperty > prop,
ViewType viewType = ViewType::MAIN )
pure virtual

Set Plugin Property

参数
[in]idPlugin id
[in]propPlugin property

◆ SetVisible()

virtual void AMCAXRender::PluginManage::SetVisible ( EntityId id,
bool visible,
ViewType viewType = ViewType::MAIN )
pure virtual

Set Plugin Visibility

参数
[in]idPlugin id
[in]visibleVisibility flag

◆ UnregisterPickEvent() [1/2]

virtual void AMCAXRender::PluginManage::UnregisterPickEvent ( EventId id)
pure virtual

Unregister Pick Event

参数
[in]idEvent id
注解
This interface only applies to plugins of type PluginType::kEntity

◆ UnregisterPickEvent() [2/2]

virtual void AMCAXRender::PluginManage::UnregisterPickEvent ( EventType event)
pure virtual

Unregister Pick Event

参数
[in]eventEvent type
注解
This interface only applies to plugins of type PluginType::kEntity

◆ UpdateEntityCellRange()

virtual void AMCAXRender::PluginManage::UpdateEntityCellRange ( EntityId id,
EntityPlugProp::DataType type,
unsigned long long min = 0,
unsigned long long max = 0 )
pure virtual

Set the cell display range for the Entity plugin

参数
[in]idPlugin ID
[in]typeData type, currently supports line and face
[in]minMinimum index
[in]maxMaximum index
注解
please call "ResetEntityCellRange" before use this function

◆ UpdateEntityPlugin()

virtual EntityId AMCAXRender::PluginManage::UpdateEntityPlugin ( std::shared_ptr< AbstractEntity > entity)
pure virtual

Update Plugin from Entity Geometry Data

参数
[in]idPlugin id
[in]entityEntity object
返回
Plugin id
注解
Entity data needs to be created first

◆ UpdateInstancedPointData()

virtual void AMCAXRender::PluginManage::UpdateInstancedPointData ( EntityId id,
InstancedPointData & data )
pure virtual

Update Instanced Point Data

参数
[in]idPlugin id
[in]dataPoint data
注解
Entity plugin data needs to be created first

该类的文档由以下文件生成: