微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – WPF:如何制作可编辑的路径

我想知道是否有人可以指导我解决这个问题:

我需要通过单击画布上的几个点来创建路径,这些点将添加到路径几何体中.完成路径后,用户可以“滑动”或移动路径的控制顶点(锚点)以调整路径的形状.

我已经想出如何绘制“套索”样式路径,但是如何让用户选择并移动路径中的单个点?

解决方法

您必须开发一个数据结构来存储点数据,以便可以轻松查询和操作它. Path对象可能对此本身就足够了,但考虑将其包装在另一个对象中以呈现更具域特定的接口.

您必须在Canvas中检测鼠标事件并对Path中的所有顶点进行测试.

命中测试是一种函数,它为您提供对最接近鼠标坐标的路径中的单个点的引用,或者如果单击距离任何被视为“命中”的点太远,则为null.您的命中测试功能将成为一个低级构造,您可以从中构建更有趣的编辑操作.

例如,您可以为路径中的每个点存储bool,指示是否选择了该点.使用按钮向下拖动鼠标时,可以通过在前面提到的数据结构中偏移其数据来拖动所有选定的点.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐