gpt4 book ai didi

paint - 在绘图应用程序中实现自由形式绘图

转载 作者:行者123 更新时间:2023-12-01 06:47:05 28 4
gpt4 key购买 nike

我想请教您如何在绘画应用程序中实现自由形式的绘画。鉴于命令对象将包含单击、任意拖动和释放,这将如何必然存储在命令中并绘制到位图上下文中?

对于初学者来说,数据是否只是放在一个大列表中的 mousemove 命令中报告的每个像素坐标?我想不出任何其他明显的方法,因为用户可能没有绘制可以优化的长而完全的直线。

它的绘制是否基本上是在鼠标移动报告的每个坐标处标记实心圆(半径即笔宽),如果移动跳得足够远,则在两者之间进行插值?

更新:澄清当我询问如何存储数据时我的意思。我正在谈论命令对象中的数据的外观并认为它将是一个“移动到”像素坐标列表来表示 Action 。我不是指正在绘制的位图图像中数据的表示。

最佳答案

我想这取决于您是否想要撤消功能。如果没有,则不需要存储命令列表,只需更新 MouseMove 处理程序中的位图即可。

如果您希望能够撤消,那么您可能希望存储命令(在这种情况下,鼠标在绘图期间移动到的坐标列表,即鼠标按钮按下时)是一种方法。您还需要跟踪设置(例如笔半径、颜色等)。

或者,您可以在每个命令完成后存储位图的多个副本(尽管这会为大位图使用大量内存)。

关于paint - 在绘图应用程序中实现自由形式绘图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3946717/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com