框架思考_output
2023-08-11 09:10:59 0 举报
这只是一个初步的想法
作者其他创作
大纲/内容
PolyDataStruct1D
Command
redo()undo()
Widget3d
Widget1D、Widge2D、Widget3DUI层逻辑分离
Widget1d
1D的所有操作接口
PropertyWidgetManager
DataFilterManager
触发
技术预研点:1. python 与 c++ 交互库的选型, pythonQT / pybind112. qwt 的替换, qchart / JKQtPlotter;3. 2d 相关的技术demo 及标尺;
Command***
BaseWidget
protected: enum widget_type_; std::vector<std::shared_ptr<PolyDataStruct>> poly_datas_;
DataFilter
PolyDataStruct
BasePropertyWidget
PolyDataManager
ConfigureManager
Config_1DConfig_2DConfig_3DConfig_Application_CommonConfig_Common
void load_config();
vtkEdit xxx
PythonCommandWriter
visual int write(std::string filename);
CommandWriter
PythonProxy
所有的python 调用 c++ 接口
CommandFactory
DataFilter ***
WidgetManager
CommandQueue
void push_command(std::shared_ptr<Command>);void undo()void redo();
Widget2d
Pan3d
PythonQT / bind11
PROPERTY_WIDGET_TYPE
CommandProxy
所有需要记录的操作
CommandRecorder
MaterialsManager
materials及相关设置
PropertyWidget***
QAction
actions_
Pan2d
收藏
收藏
0 条评论
下一页