OpenGL代码六太阳、地球和月亮天体图画动起来

这篇博客基于OpenGL入门教程,展示了如何让地球围绕太阳旋转,同时月亮绕着地球转动。作者提供了调整球体半径和观察点的建议,并指出原教程中的数值可能导致无法正确显示。虽然没有展示动态效果的图片,但代码可以直接运行看到动态画面。
摘要由CSDN通过智能技术生成

参考文章:
http://www.cppblog.com/doing5552/archive/2009/01/08/71532.html
对应上面教程OpenGL入门六,实现地球绕着太阳转,月亮绕着地球转,教程的代码直接就可以使用。
一点小提示:在上面参考教程的入门五中,按照教程中设置的太阳、地球、月亮的半径是无法画出相应的球的,因为值设的太大了,根本画不下。所以可以照着下面的代码修改一下球的半径以及观察点的位置,就可以画出静止不动的三个球了。
在我的实现中就不做前面静止的部分了,是直接动起来的。
在这里插入图片描述
在这里插入图片描述


#include <GL/glut.h>
#include <stdio.h>
#include <time.h>

// 太阳、地球和月亮
// 假设每个月都是12天
// 一年12个月,共是360天
static int day = 200; // day的变化:从0到359

double CalFrequency()
{
   
	static int count;
	static double save;
	static clock_t last, current;
	double timegap;

	++count;
	if (count <= 50)
		return save;
	count = 0;
	last = current;
	current = clock()
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值