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

网站域名找回密码 用户名株洲网

网站域名找回密码 用户名,株洲网,手机制作网页软件,建筑认证javafx 使用回想一下#xff0c;给AnimationTimer起个名字可能不是一个好主意#xff0c;因为它不仅可以用于动画#xff0c;还可以用于测量fps速率#xff0c;碰撞检测#xff0c;模拟步骤#xff0c;游戏主循环等。实际上#xff0c;我大部分时间都在看AnimationTimer… javafx 使用 回想一下给AnimationTimer起个名字可能不是一个好主意因为它不仅可以用于动画还可以用于测量fps速率碰撞检测模拟步骤游戏主循环等。实际上我大部分时间都在看AnimationTimer的运行与动画完全无关。 不过在某些情况下您可能要考虑为动画使用AnimationTimer。 这篇文章将解释该类并显示一个示例其中将AnimationTimer用于计算动画。 AnimationTimer提供了一个非常简单但非常有用且灵活的功能。 它允许指定一个方法该方法将在每一帧中调用。 此方法的用途不受限制并且如前所述与动画没有任何关系。 唯一的要求是它必须快速返回因为否则它很容易成为系统的瓶颈。 要使用它开发人员必须扩展AnimationTimer并实现抽象方法handle。 当AnimationTimer处于活动状态时将在每一帧中调用此方法。 单个参数传递给handle。 它包含当前时间以纳秒为单位与调用System.nanoTime时的时间相同。 为什么要使用传入的值而不是自己调用System.nanoTime或它的弟弟System.currentTimeMillis 有几个原因但最重要的可能是它使调试时的生活变得更加轻松。 如果您曾经尝试调试依赖于这两种方法的代码那么您就知道自己已经基本陷入困境。 但是JavaFX运行时在调试期间等待执行下一步时进入暂停状态并且在此暂停期间内部时钟不会继续运行。 换句话说无论您在调试时恢复暂停的程序之前等待两秒钟还是两个小时参数的增量都将大致相同 AnimationTimer有两个方法start和stop来激活和停用它。 如果覆盖它们则在超类中调用这些方法很重要。 Animation API带有许多功能丰富的类这些类使定义动画非常简单。 有预定义的过渡类可以使用时间轴定义基于关键帧的动画甚至可以轻松编写自定义过渡。 但是在什么情况下使用AnimationTimer有意义 –几乎总是要使用标准类之一。 但是如果要指定许多简单的动画则最好使用AnimationTimer。 标准动画类的功能丰富性是有代价的。 每个动画都需要跟踪一大堆变量而对于简单的动画这些变量通常是不需要的。 另外这些类针对速度进行了优化而不是针对较小的内存占用。 有些变量存储两次一次以公共API要求的格式存储一次以有助于在播放时更快地计算的格式存储。 以下是显示星空的简单示例。 它为成千上万个从中心飞到外部边缘的矩形设置了动画。 使用AnimationTimer仅允许存储所需的值。 例如与时间轴内的计算相比该计算极其简单因为无需考虑高级功能循环动画速率方向等。 package fxsandbox;import java.util.Random; import javafx.animation.AnimationTimer; import javafx.application.Application; import javafx.scene.Group; import javafx.scene.Node; import javafx.scene.Scene; import javafx.scene.paint.Color; import javafx.scene.shape.Rectangle; import javafx.stage.Stage;public class FXSandbox extends Application {private static final int STAR_COUNT 20000;private final Rectangle[] nodes new Rectangle[STAR_COUNT];private final double[] angles new double[STAR_COUNT];private final long[] start new long[STAR_COUNT];private final Random random new Random();Overridepublic void start(final Stage primaryStage) {for (int i0; iSTAR_COUNT; i) {nodes[i] new Rectangle(1, 1, Color.WHITE);angles[i] 2.0 * Math.PI * random.nextDouble();start[i] random.nextInt(2000000000);}final Scene scene new Scene(new Group(nodes), 800, 600, Color.BLACK);primaryStage.setScene(scene);primaryStage.show();new AnimationTimer() {Overridepublic void handle(long now) {final double width 0.5 * primaryStage.getWidth();final double height 0.5 * primaryStage.getHeight();final double radius Math.sqrt(2) * Math.max(width, height);for (int i0; iSTAR_COUNT; i) {final Node node nodes[i];final double angle angles[i];final long t (now - start[i]) % 2000000000;final double d t * radius / 2000000000.0;node.setTranslateX(Math.cos(angle) * d width);node.setTranslateY(Math.sin(angle) * d height);}}}.start();}public static void main(String[] args) {launch(args);}} 参考在Mikes Blog博客上使用 JCG合作伙伴 Michael Heinrichs 的JavaFX AnimationTimer 。 翻译自: https://www.javacodegeeks.com/2012/06/using-javafx-animationtimer.htmljavafx 使用
http://www.zqtcl.cn/news/33030/

相关文章:

  • 景安 怎么把网站做别名wordpress释放内存
  • 关键词搜索挖掘爱网站装修设计师培训班
  • 池州网站seo淘宝网站内站建设现状
  • 浦江县做网站搭建个官网需要多少钱
  • 合肥seo网站建设费用哪个公司的卡网络最好
  • wordpress 菜单保存在哪北京seo课程
  • 常见电子商务网站基本模式代加工厂都不做网站
  • 网站建设小说7k7k游戏网页版入口
  • 网站dns设置wordpress底部文件修改
  • 小区网站建设方案怎么写wordpress编辑器 下载地址
  • 网站开发视频是存储的什么软件可以免费制作图片
  • 金融网站模板 html下载万网网站加速
  • 黔西南州住房和城乡建设局网站建站语言
  • 做选择的网站宠物网站建设方案
  • 苏州网站建设苏州南通网站搜索引擎优化
  • 网站空间大小有什么用执念待重生wordpress
  • 网站建设图片大全网页美工设计教学
  • 网站被域名重定向网络架构方法
  • 可以做淘宝推广的网站吗如何做网站的充值功能
  • 做网站 域名 最快要多久项目投资
  • 浙江网站开发工程师广州最好的网站建设
  • 做试试彩网站新泰州人才网最新招聘2022
  • 顺德建设行政主管部门网站做网络推广有哪些平台
  • 网站备案有什么坏处月子会所 网站源码
  • 帝国网站程序网站建设动态页面修改删除
  • 电信备案网站打不开视频网站怎么做动图
  • 青海媒体网站建设公司整站系统
  • 做长老环的网站源码下载网
  • 手机网站建设网站好的门户网站
  • 自己做网站网站资源哪里来在线制作动态图片自动生成