Easyx实现窗口自动碰撞的小球

本文实例为大家分享了Easyx实现窗口自动碰撞的小球的具体代码,供大家参考,具体内容如下

代码:

#include<easyx.h>
#include<stdlib.h>
#include<time.h>
 
int main()
{
    //创建窗口
    initgraph(640, 480);
 
    //定义小球的数据
    int bx = getwidth() / 2;
    int by = getheight() / 2;
    int br = 20;
    int xSpeed = 5;//速度
    int ySpeed = 5;
    
    //处理消息
    while (true)
    {
        int startTime = clock();//获取当前的毫秒数(程序启动到调用clock的时间)
        //双缓冲
        BeginBatchDraw();//开始双缓冲
        //清屏
        cleardevice();
        //绘制小球
        setfillcolor(GREEN);
        solidcircle(bx, by, br);
 
        //移动小球
        bx += xSpeed;
        by += ySpeed;
 
        //如果碰撞到边界就反弹
        if (bx+br>getwidth()||bx - br < 0)
        {
            xSpeed = -xSpeed;
        }
        if (by + br > getheight() || by - br < 0)
        {
            ySpeed = -ySpeed;
        }
        
        static ExMessage msg;//每次循环的时候,不要重新定义
        while (peekmessage(&msg,EM_MOUSE | EM_KEY))
        {
 
        }
        EndBatchDraw();//把内存中的图片显示到窗口上
 
        //fps帧数  一般游戏是24帧数或60帧数  怎么控制帧率  1000毫秒/60帧=16.666
        int frameTime = clock() - startTime;//获取当前帧执行了多少毫秒
        //如果当前帧执行时间小于美珍应该执行的时间(提前执行完毕)
        if (frameTime < 1000 / 60)
        {
            Sleep(1000 / 60 - frameTime);//多余的时间睡觉
            //Sleep(16);
        }
        
    }
 
    return 0;
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • EasyX实现自由落体小球

    本文实例为大家分享了EasyX实现自由落体小球的具体代码,供大家参考,具体内容如下 1. 要实现自由落体,首先得实现匀速下落 #include<graphics.h>    //图形库头文件 #include<conio.h> #include<cstdio> #define WIDTH 400   //窗口宽度 #define HEIGHT 600   //窗口高度 int main() {     //定义并初始化小球坐标     float ballX = WID

  • C语言基于EasyX库实现有颜色弹跳小球

    本文实例为大家分享了基于EasyX库实现有颜色弹跳小球的具体代码,供大家参考,具体内容如下 1.目标要求 1.实现一个有颜色小球在窗口中弹跳2.遇到边界弹跳 2.C语言代码 #include<graphics.h>  #include<stdio.h> #include<stdlib.h> #include<windows.h> #include<conio.h> #define High 480 #define Width 640//画布尺寸

  • Easyx实现窗口自动碰撞的小球

    本文实例为大家分享了Easyx实现窗口自动碰撞的小球的具体代码,供大家参考,具体内容如下 代码: #include<easyx.h> #include<stdlib.h> #include<time.h>   int main() {     //创建窗口     initgraph(640, 480);       //定义小球的数据     int bx = getwidth() / 2;     int by = getheight() / 2;     int

  • Android之小球自由碰撞动画示例

    目录 前言 1. add balls List 2.ball parameter 3. 判断是否有发生碰撞的小球 4.application display 前言 本文将基于Android对一个小球自由碰撞动画项目做一个简单介绍,并展示部分关键代码以及实际效果动态图 1. add balls List 添加颜色为绿,黄,红,黑,蓝,灰的小球,并设置其大小 ballList.add(new Ball(80, Color.GREEN, 700, width / 2, height / 2)); ba

  • C语言用easyx实现消砖块游戏

    本文项目为大家分享了C语言用easyx实现消砖块游戏的具体代码,供大家参考,具体内容如下 一.最终效果展示 效果图如下: 这个项目还是有很多的细节漏洞的.例如: 边界控制这里还是有点问题的. 二.绘制静态的挡板 代码如下: #include<conio.h> #include<graphics.h> #define High 480 //游戏画面尺寸 #define Width 640 //全局变量 int ball_x,ball_y;//小球的坐标 int ball_vx,bal

  • javascript实现10个球随机运动、碰撞实例详解

    本文实例讲述了javascript实现10个球随机运动.碰撞的方法.分享给大家供大家参考.具体如下: 学了一段时间的javascript了,做过一些小案例,目前最有难度的就是10个小球随机碰撞效果,这不,把它上上来与大家分享一下,相信不少和我一样的菜鸟在开始上手编程时都会有不少的困惑,希望它能给一些人带来帮助. 效果要求:10个小球在页面随机移动,碰到窗口边界或其他小球都会反弹 思路: 1.10个小球是10个div; 2.碰窗口反弹,定义vx vy为小球的移动变量,以及一个弹力变量bounce(

  • JS实现小球的弹性碰撞效果

    一.HTML代码(body部分) <body> <!--只需要做一个大div包裹几个小div即可,你想要几个小球碰撞就在内部做几个div即可,这里我们做了6个小球--> <div id="main"> <div></div> <div></div> <div></div> <div></div> <div></div> <di

  • 原生js实现移动小球(碰撞检测)

    本文实例为大家分享了js实现移动小球的具体代码,供大家参考,具体内容如下 </head> <style> *{margin: 0; padding:0;} #main{margin: 0px auto;position: relative;} #main div{overflow: hidden;position: absolute;width: 50px;height: 50px;opacity: 0.5; -moz-border-radius: 50%;-webkit-bord

  • 教你利用pygame模块制作跳跃小球小游戏

    前言 pygame是用来开发游戏的一套基于SDL的模板,它可以是python创建完全界面化的游戏和多媒体程序,而且它基本上可以在任何系统上运行.本文将详细介绍你利用pygame模块制作跳跃小球小游戏的相关内容,下面来一起看看吧 实现方法 首先创建一个游戏窗口,然后再窗口内创建一个小球.以一定的速度移动小球,当小球碰到游戏窗口的边缘时,小球弹回,继续移动.可以按照如下步骤实现该功能. (1)首先来创建一个游戏窗口,宽和高设置为640×480.代码如下: import sys #导入sys模块 im

  • JS关闭子窗口并且刷新上一个窗口的实现示例

    在开发后台项目的时候产品那边提出了这个一个需求:用户点击"选择模板"的时候会弹出一个新窗口,在新窗口选择模板点击确定后,会关闭当前的新窗口,并且原来的那个窗口自动显示用户在新窗口的选择项. 这样会涉及到一个技术点,就是怎么通过JS来实现关闭子窗口并且刷新上一个窗口. 百度了很久,尝试了以下几种方案: 方案一:通过在子窗口的关闭函数中加入以下代码,即可实现父窗口的刷新. window.opener.location.href = window.opener.location.href;

  • Android浮动窗口实现原理及代码实例

    1.浮动窗口的实现原理 看到上图的那个小Android图标了吧,它不会被其他组建遮挡,也可以响应用户的点击和拖动事件,它的显示和消失由WindowManager直接管理,它就是Android浮动窗口.Android浮动窗口的实现主要是靠WindowManager这个类.通过WindowManager类的addView(),updateViewLayout(),removeView()这几个方法,我们可以直接在Window中添加,更新,移除View. 2.浮动窗口实现的具体步骤 1)既然浮动窗口的

随机推荐