如何在具有压力敏感性的油漆程序中进行绘图?

时间:2013-03-01 19:43:46

标签: c# winforms drawing tablet system.drawing

我正在编写各种绘画程序,使用C#.Net / WinForms,压力敏感度是必须的。我已经完成了所有设置,并从平板电脑笔获取压力信息。这些都不是问题。

我无法接近的是,我将如何使用您的典型,简单的绘画程序(即“Scribble”)并使用我得到的压力数据绘制? Scribble类型的简单应用程序跟踪当前和上一个光标位置,同时启用绘图,并在它们之间绘制线条。但是,通过捕捉光标位置确定的每个点都是在使用固定宽度线之间绘制的。

假设我拥有所需的所有数据:x y位置和笔压力,我将如何开始考虑应该在不同宽度的点之间绘制?

2 个答案:

答案 0 :(得分:0)

我会将你的总xy位置分成许多较小的xy位置(可能是一个或两个像素长度),并根据笔压力相应地应用宽度。

答案 1 :(得分:0)

最简单的方法是跟踪前一个点和之前的大小(基于压力),然后使用之前的线尺寸大小绘制从前一个点到当前点的线条。 / p>

如果确保不在事件处理程序代码中创建新对象,即使使用GDI +也很快。

我提到的另一种方式更为先进(虽然可能会产生更好的结果),并且我可能会在以后执行它时,当我做所有基于矢量的时候。