c - 如何围绕质心旋转/缩放/平移

标签 c graphics centroid

rotating
x' = x*Cos(angle) - y*Sin(angle)
y' = x*Sin(angle) + y*Cos(angle)
Scaling
x' = x*sx
y' = y*sy
translate
x' = x+tx
y' = y+ty

但所有公式都将对原点进行处理。 如果我想做质心点。 (我有 (Cx,Cy) )。 公式是什么。

对不起,关于英语,我会多加练习。

谢谢。

最佳答案

平移物体使质心与原点重合,然后执行任何变换,然后将其平移回来。

根据您使用什么来实现几何,您可能能够在执行繁重的工作之前线性组合这些操作。或者您的库可能会提供带有不变点作为参数的操作版本,您可以为其指定质心。

但是相对于任何其他点,关于质心的变换并没有什么特别之处。

关于c - 如何围绕质心旋转/缩放/平移,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19781319/

相关文章:

java - 按预定时间更改对象颜色

c++ - 绘图圆,OpenGL 风格

Python:如何将初始质心放在k-means中的特定数据点上?

scikit-learn - 如何获得 GMM 集群的代表点?

c - 使用递归查找 n 个数字的数组中的最大和最小元素

c - 通过指针访问多维数组

C - 使用队列在线程之间传递消息的问题

c - 如何在c中编程以使c中的char和int分开?

android - 如何在 Android 中以编程方式为图像添加阴影?

image-processing - 不规则形状的 OpenCV 质心