当前位置: 首页 > news >正文

浙江网站建设正规公司127.0.0. wordpress

浙江网站建设正规公司,127.0.0. wordpress,网站做可信认证多少钱,网站全屏广告将游戏坐标转化成屏幕鼠标坐标 思路说明#xff1a;转化其实是取得两点的相对位置#xff0c;例如将游戏人物移动到另外一个位置#xff08;游戏人物初始位置坐标到目的位置坐标#xff09;#xff0c;鼠标需要移动到屏幕的某个位置。算出游戏的移动距离#xff0c;游戏…将游戏坐标转化成屏幕鼠标坐标 思路说明转化其实是取得两点的相对位置例如将游戏人物移动到另外一个位置游戏人物初始位置坐标到目的位置坐标鼠标需要移动到屏幕的某个位置。算出游戏的移动距离游戏两个点之间的夹角cos,sin,然后映射到屏幕中的两个点。 注意需要提前算出游戏两点距离对应屏幕两点间距离的比例游戏距离/屏幕两点距离只是针对第一人称人物固定屏幕类游戏 1.获取鼠标在屏幕的坐标 package com.company;import javax.swing.*; import javax.swing.border.EmptyBorder; import java.awt.*; import java.util.Timer; import java.util.TimerTask;public class MouseInfo extends JFrame {private final JPanel contentPanel new JPanel();JLabel value_x null;JLabel value_y null;/*** 展示画布显示鼠标坐标*/public static void getMouse() {try {MouseInfo info_frame new MouseInfo();info_frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);info_frame.setVisible(true);info_frame.setAlwaysOnTop(true);Timer timer new Timer();timer.schedule(new TimerTask() {Overridepublic void run() {Point point java.awt.MouseInfo.getPointerInfo().getLocation();info_frame.value_x.setText( point.x);info_frame.value_y.setText( point.y);}}, 100, 100);} catch (Exception e) {e.printStackTrace();}}/*** Create the dialog.*/public MouseInfo() {setTitle(\u9F20\u6807\u5750\u6807\u83B7\u53D6\u5668);setBounds(100, 100, 217, 156);getContentPane().setLayout(new BorderLayout());contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5));getContentPane().add(contentPanel, BorderLayout.CENTER);contentPanel.setLayout(null);JLabel lblx new JLabel(\u5750\u6807x:);lblx.setFont(new Font(宋体, Font.PLAIN, 15));lblx.setBounds(22, 27, 66, 31);contentPanel.add(lblx);JLabel lbly new JLabel(\u5750\u6807y:);lbly.setFont(new Font(宋体, Font.PLAIN, 15));lbly.setBounds(22, 68, 66, 31);contentPanel.add(lbly);value_x new JLabel(0);value_x.setForeground(Color.BLUE);value_x.setFont(new Font(宋体, Font.PLAIN, 20));value_x.setBounds(82, 27, 66, 31);contentPanel.add(value_x);value_y new JLabel(0);value_y.setForeground(Color.BLUE);value_y.setFont(new Font(宋体, Font.PLAIN, 20));value_y.setBounds(82, 68, 66, 31);contentPanel.add(value_y);} }2.坐标操作工具方法 /*** 获取两个点距离* param lat1 第一个位置的x* param lon1 第一个位置的y* param lat2 第二个位置的x* param lon2 第二个位置的y* return 两点之间的距离*/public static double distance(double lat1, double lon1, double lat2, double lon2){double DMath.sqrt((lat2-lat1)*(lat2-lat1)(lon2-lon1)*(lon2-lon1));return D;}/*** 获取两点之间的sin 值* param lat1 第一个位置的x* param lon1 第一个位置的y* param lat2 第二个位置的x* param lon2 第二个位置的y* return*/public static double getSin(double lat1, double lon1, double lat2, double lon2){double sinMath.abs(lon2-lon1)/distance(lat1,lon1,lat2,lon2);return sin;}/*** 获取两点之间的cos 值* param lat1 第一个位置的x* param lon1 第一个位置的y* param lat2 第二个位置的x* param lon2 第二个位置的y* return*/public static double getCos(double lat1, double lon1, double lat2, double lon2){double cosMath.abs(lat2-lat1)/distance(lat1,lon1,lat2,lon2);return cos;}/*** 获取第二个位置坐标* param lat1* param lon1* param sin* param cos* param distance*/public static void getPointTow(double lat1, double lon1 ,double sin ,double cos,double distance){double lon2distance*sinlon1;double lat2distance*coslat1;System.out.println(第二个坐标xlat2 ylon2);}3.计算游戏对应的屏幕坐标 public static void main(String[] args) {MouseInfo.getMouse();//假如已经算出游戏与屏幕两点距离的比例是3 游戏距离/屏幕距离3Double scale3d;Double value_x1372d;double value_y524d;//假如游戏人物当前所在的游戏位置是902,302 想移动到1372,524double distancedistance(902,302,value_x,value_y);double singetSin(902,302,value_x,value_y);double cosgetCos(902,302,value_x,value_y);//人物固定在屏幕的中间假如屏幕坐标1033,415 算出游戏人物要移动到游戏1372,524所在的屏幕坐标。getPointTow(1033,415,sin,cos,distance/scale);// write your code here}/*** 获取两个点距离* param lat1 第一个位置的x* param lon1 第一个位置的y* param lat2 第二个位置的x* param lon2 第二个位置的y* return 两点之间的距离*/public static double distance(double lat1, double lon1, double lat2, double lon2){double DMath.sqrt((lat2-lat1)*(lat2-lat1)(lon2-lon1)*(lon2-lon1));return D;}/*** 获取两点之间的sin 值* param lat1 第一个位置的x* param lon1 第一个位置的y* param lat2 第二个位置的x* param lon2 第二个位置的y* return*/public static double getSin(double lat1, double lon1, double lat2, double lon2){double sinMath.abs(lon2-lon1)/distance(lat1,lon1,lat2,lon2);return sin;}/*** 获取两点之间的cos 值* param lat1 第一个位置的x* param lon1 第一个位置的y* param lat2 第二个位置的x* param lon2 第二个位置的y* return*/public static double getCos(double lat1, double lon1, double lat2, double lon2){double cosMath.abs(lat2-lat1)/distance(lat1,lon1,lat2,lon2);return cos;}/*** 获取第二个位置坐标* param lat1* param lon1* param sin* param cos* param distance*/public static void getPointTow(double lat1, double lon1 ,double sin ,double cos,double distance){double lon2distance*sinlon1;double lat2distance*coslat1;System.out.println(第二个坐标xlat2 ylon2);}
http://www.dnsts.com.cn/news/150554.html

相关文章:

  • 生态建筑建设公司网站ui设计培训班怎么样
  • python node 网站开发南宁做网站优化的公司
  • wordpress仿站上传到文字转图片生成器在线
  • 手机黄山网站黑帽友情链接
  • 微信订阅号做微网站网站建设背景图
  • 东阿做网站网络营销总结及体会
  • 民宅挂在民宿网站上 保洁谁做潮阳发布最新通告
  • 哪种nas可以做网站服务器大连h5网站开发
  • 织梦网站建设实训总结做网站要多
  • 公司注册网站需要什么资料返佣贵金属交易所网站建设
  • 合肥响应式网站设计河北邯郸市简介
  • 三鼎网络网站建设个人网站建设如何选服务器
  • 周口集团网站建设建设工程质量 协会网站
  • 山东省交通厅建设网站重庆市工程建设标准化网站
  • 网站备案对应的ip地址深圳市场调研公司
  • 信息发布网站设计小米发布会2022
  • 北京自适应网站建设网站建设 数据上传 查询
  • 网站源码怎么写注册公司的步骤和流程
  • 宁波正规网站seo公司中国工程建设标准化协会网站
  • 计算机哪方面技术吃香seo招聘信息
  • 个人业余做网站怎么弄网络营销的成功案例
  • 英文网站注意事项用ps做网站的首页
  • 网站制作与设计pc网站转wap网站
  • 网站如何做免费的推广网站建设分金手指排名十
  • 网站开发多少钱策划网站做营销推广
  • 外贸soho网站制作百姓网交友征婚免费
  • 公司网站建设付款分录天津网站优化多少钱
  • 著名优秀产品设计案例常州seo技术
  • 阿里云企业网站备案流程衡水网站建设优化排名
  • 网站网站建设的原则有哪些网站如何做