Tag: viewport

视口内图形相对于鼠标坐标的实际坐标

正如我在标题中指出的那样,我已经开始研究一个简单的应用程序,它包含在主框架窗口中,一个双缓冲面板。 在这个面板中可以绘制一些图形,让我们认为这个面板是内部绘制元素的简单视口。 这里添加了两个function,平移和缩放可以使用在MouseDown上更新的delta和Move事件以及OnMouseWheel更新缩放变换来缩放转换和转换内部转换内部的转换。 在尝试添加function以支持在视口内创建节点(图形元素)到缩放大于1(缩放100%)时的精确位置时,真正的问题已经到来。 场景1 – >黄色矩形已正确创建,并且位于鼠标指针位置,如下图所示(比例== 1)。 场景2 – >黄色矩形相对于鼠标位置高度移动,视口比例为aprox。 40%,如下图所示(比例== 1.4)。 红色填充的圆圈是鼠标按下的(光标位置保持不变,只进行了缩放)。 测试场景 – >在发布之前我尝试了很多方法而没有成功,这是其中之一: 我非常感谢任何类型的输入,甚至是与更改OXY图形方法相关的想法(因为翻译函数使用相对坐标)。