MFC 如何让一个图形(比如小正方形)沿着一个圆的轨迹运动?

 我来答
百度网友fde8673
2011-05-20 · TA获得超过423个赞
知道小有建树答主
回答量:401
采纳率:0%
帮助的人:550万
展开全部
建立一个角度量theta,从0.00循环到3.14,在每一轮循环中取得x/y坐标

x = x_center + r * cos(theta);
y = y_center + r * sin(theta);

然后使用x,y绘制图形即可
追问
有个问题,MFC里面的坐标都是整数类型,而通过公式算出来的是浮点类型的,如果强制转换的话,必然会导致精度的下降……这个问题可以怎么解决呢……
追答
如果要四舍五入的话,可以这么写:

x_int = (int)(x_double + 0.5);
y_int = (int)(y_double + 0.5);

如果不在乎一个像素的误差,那0.5可以干脆不加。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式