gpt4 book ai didi

c++ - 旋转图像对象以及 C 中的指针

转载 作者:行者123 更新时间:2023-11-28 03:35:48 25 4
gpt4 key购买 nike

我有一个 C 应用程序,我已将我的图像 (gif) 对象加载到屏幕上。现在我希望 Image 对象随着我的指针在一个轴上旋转。

意味着无论我在屏幕上移动指针,我的图像都应该从一个固定点旋转...我该怎么做?

我见过这样的公式

newx = cos(angle) * oldx - sin(angle) * oldy

newy = sin(angle) * oldx + cos(angle) * oldy

但它也输入角度..但我没有角度...我有指针坐标...如何使对象根据鼠标指针移动?

最佳答案

说真的……你中学学过三角学吧?

angle = arctan((pointerY - centerY) / (pointerX - centerX))

在 C 中:

// obtain pointerX and pointerY; calculate centerX as width of the image / 2,
// centerY as heigth of the image / 2
double angle = atan2(pointerY - centerY, pointerX - centerX);

double newX = cos(angle) * oldX - sin(angle) * oldY
double newY = sin(angle) * oldX + cos(angle) * oldY

关于c++ - 旋转图像对象以及 C 中的指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10927419/

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