繁体   English   中英

在 C++ 中旋转点网格

[英]Rotate a grid of points in C++

如果我有一个点结构数组定义为

struct Point{

    float x;
    float y;

};

我如何将这个数组中的点旋转给定的角度?

举个例子:

例子

任何帮助,将不胜感激!

float x_old = p.x; float y_old = p.y;
p.x = x_old * cos(a) - y_old * sin(a);
p.y = x_old * sin(a) + y_old * cos(a);

当然,如果您以相同的角度旋转多个点,您将需要保存 sin 和 cos,而不是每个点计算两次。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM