项目

一般

简介

新增功能 #60

【LC】增加测量距离功能

王 绪伦11 个月 之前添加. 更新于 11 个月 之前.

状态:
已解决
优先级:
紧急
指派给:
开始日期:
2024-06-17
计划完成日期:
% 完成:

100%

预期时间:

描述

1.在src\core\application\commands\CmdMeasureDistance.cpp中完成;
2. 界面包含一个3列可修改的点坐标表格控件(分别对应X、Y、Z坐标),三个按钮(X对齐,Y对齐,Z对齐),和四个编辑框(用于显示所有相邻点对的距离和);
3. 用户输入交互方式为在屏幕上选点(通过初始化命令时设置m_pDoc->getViewData()->enableRenderMode(ViewPickPoint)激活选点模式),注意退出时要disable ViewPickPoint模式;
4. 当选点模式时,用户在屏幕上选择一点,在cmd的onPickChanged响应该事件,通过 PickPoint * XViewData::getLastPickPoint()获取所选点的坐标加入到点坐标表格控件中,算出距离和,更新显示距离的编辑框;
5. 当选择节点模式时,用户选择任意节点,在cmd的onPickChanged响应该事件,获得XPicker选择的最后一个节点,讲所选点的坐标加入到点坐标表格控件中,算出距离和,更新显示距离的编辑框;;
6. 当点坐标表格控件中的行数小于2,距离编辑框显示为0;
7. 在界面配置文件中为点坐标表格控件添加右键菜单,支持选择某行删除(deleteRow);
8. X对齐,Y对齐,Z对齐按钮功能分别为按照第一个点的X/Y/Z坐标调整第一个点以外的所有X/Y/Z坐标,并更新距离编辑框的值
9. 参照void CmdCreateNode::onControlEvent(const char * ctrlName, TypeID event)调用void XRenderData::makeLines(const Vector3r * pts, int ptCount)
实现选点连线的显示,颜色设置为绿色;

导出 Atom PDF