package gui;

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

/**

* 编写一个Java GUI应用程序,采用Java多线程技术,有两个线程,模拟垂直上抛运动和水平抛体运动:一个球垂直上抛,一个球水平抛出。(本题30分)

(垂直上抛物理公式:h=v0*t-g*t2/2 ;平抛运动物理公式:h=g*t*2/2 ,x=v*t ;

h代表高度,v0代表初速度=30 m/s ,t代表时间,g代表重力加速度=9.8 m/s2 ,v代表平抛速度=30 m/s )

@start 2010-9-19 11:40

@end 12:20

* */

public class Two_TwoBallTwo {

public static void main(String[] args){

TwoBallTwo ball=new TwoBallTwo();

ball.init();

ball.start();

}

}

class TwoBallTwo extends JFrame{

JRadioButton ball1=new JRadioButton();

JRadioButton ball2=new JRadioButton();

double g=9.8;

double v0=30;

double t=1;

double t2=1;

double t3=1;

int width=800;

int height=600;

public void init(){

this.getContentPane().add(ball1);

this.getContentPane().add(ball2);

ball1.setBounds(50, height/2,20 ,20);

ball2.setBounds(5,10,20,20);

ball1.setSelected(true);

ball2.setSelected(true);

this.validate();

this.setVisible(true);

this.setBounds(111, 111, 800, 600);

}

public void start(){

//上 抛     --加修 正

Thread thread1=new Thread(){

public void run(){

while(true){

//side area confirm

if(Math.abs(ball1.getX())<width&&Math.abs(ball1.getY())<height){

t3+=0.1;

if(t<1){

t+=0.1;

}

ball1.setBounds(ball1.getX(),(int)(ball1.getY()-(v0*t-g*t3*t3/2)), 20, 20);

}

else{

try{

this.sleep(1000);

}

catch(Exception e2){}

t3=1;

ball1.setBounds(50, height/2,20 ,20);

t=1;

}

try{

this.sleep(30);

}

catch(Exception e){}

}

}

};

//平 抛 --add修 正

Thread thread2=new Thread(){

public void run(){

while(true){

//side area confirm

if(Math.abs(ball2.getX())<width&&Math.abs(ball2.getY())<height){

t2+=0.2;

ball2.setBounds((int)(ball1.getX()*t2),(int)(g*t2*t2/2), 20, 20);

}

else{

try{

this.sleep(30);

}

catch(Exception e2){}

t2=1;

ball2.setBounds(5, 10,20 ,20);

}

try{

this.sleep(30);

}

catch(Exception e){}

}

}

};

thread1.start();

thread2.start();

}

}

模拟垂直上抛运动和水平抛体运动相关推荐

  1. matlab模拟斜抛运动60,大学物理教学改革论文,关于大学物理教学方法改革-Matlab的妙用相关参考文献资料-免费论文范文...

    导读:本文是一篇关于大学物理教学改革论文范文,可作为相关选题参考,和写作参考文献. (1.长江师范学院大学物理教研室 重庆 408100, 2.内蒙古工业大学 理学院物理系 内蒙古呼和浩特 01005 ...

  2. Unity 斜抛运动 路径点

    1.截图   2.代码介绍 使用Unity自带Rigidbody刚体插件. 代码比较简单:使用Unity的 Rigidbody.velocity 进行位移(不使用AddForce). private ...

  3. Python + matplotlib.animation 模拟斜抛运动动画(含完整代码)

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 Abstract Introduction Matplotlib.animation Physics model and C ...

  4. 越区切换技术从层次网络上可以划分为水平切换和垂直切换,其中水平切换又可以分为硬切换、软切换、接力切换。

    一.越区切换阐述 当移动台从一个小区(指基站或者基站的覆盖范围)移动到另一个小区时,为了保持移动用户的不中断通信需要进行的信道切换称为越区切换. 越区切换技术从层次网络上可以划分为水平切换和垂直切换, ...

  5. C语言编码小球斜抛运动,利用C4droid绘制小球斜抛运动轨迹(考虑空气阻力)

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 我把源代码分享出来,欢迎有兴趣的朋友下载测试,修改优化. /*********************************************** ...

  6. 模拟数据集上训练神经网络,网络解决二分类问题练习

    #2018-06-24 395218 June Sunday the 25 week, the 175 day SZ ''' 模拟数据集上训练神经网络,网络解决二分类问题.'''import tens ...

  7. java 模拟post上传文件_JAVA模拟HTTP post请求上传文件

    在开发中,我们使用的比较多的HTTP请求方式基本上就是GET.POST.其中GET用于从服务器获取数据,POST主要用于向服务器提交一些表单数据,例如文件上传等.而我们在使用HTTP请求时中遇到的比较 ...

  8. matlab 地形模拟程序,MATLAB模拟小球自由落体运动

    大部分朋友学习MATLAB,需要一个学习示例用来参考,有一个比较经典的题目就是如何利用Matlab模拟小球自由落体运动,这可能会是你的某次课后作业,这个程序的编写过程可以分为三个步骤: 第一部分,设置 ...

  9. 【181130】VC++ 模拟地球太阳月亮运动的过程源代码

    源码下载简介 VC++ 模拟地球太阳月亮运动的过程. 源码下载地址:点击下载 备用下载地址:点击下载

最新文章

  1. 青少年编程竞赛交流群周报(第036周)
  2. Java提升篇:对象克隆(复制)
  3. 实验 6 数组1输出最大值和它所对应的下标
  4. mppt多峰追踪MATLAB仿真,基于光伏功率等效面积法的多峰最大功率追踪控制方法...
  5. java矩阵类_java矩阵类,矩阵的乘法
  6. 关于cacti图形显示不正常的解决办法
  7. 安卓应用安全指南 5.6.2 密码学 规则书
  8. LeetCode 5364. 按既定顺序创建目标数组
  9. 简单的java恶搞小病毒_恶搞电脑病毒代码有哪些
  10. typora 免费版, 最后一个beta版本下载
  11. html如何给标题设置边框和底纹,word如何设置文字边框和底纹
  12. js表单提交enter触发提交
  13. python爬虫-《笔趣看》网小说《悟空看私聊》
  14. PostgreSQL数据库WAL——RM_HEAP_ID日志记录动作
  15. Eclipse同屏显示两个代码编辑窗口
  16. Ubuntu 16.04下EasyOpenJTAG+OpenOCD的安装和使用【转】
  17. 分享两篇适合程序员看的书籍——《谁动了我的奶酪》、《你的灯亮着吗?》读后感
  18. 甘超波:NLP价值观
  19. Wireshark抓取TCP三次握手包
  20. web前端 - Vue常见问题汇总及解决方案

热门文章

  1. 智商情商哪个重要_情商与智商哪个更重要
  2. Image Segmentation with U-Net(吴恩达课程)
  3. ati能备份linux格式吗,linux中ati显卡驱动(run文件)如何使用
  4. 渤海船舶职业学院计算机应用公司,渤海船舶职业学院校园网网络管理系统
  5. 基于Aprion算法的电影推荐
  6. 人工智能ai应用高管指南_营销商关于AI的完整指南
  7. FontForge不识别,WINDOWS报错:mstmc.ttf真的是字体文件吗?
  8. PHP phar反序列化
  9. MVC、MVP、MVVM 模式(待续)
  10. 如何在Kubernetes平台上搭建云IDE Theia