- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在我正在制作的应用程序中,我需要一些物理计算(功率、力、扭矩等)。我想使用 JScience,因为它在跟踪单位方面似乎非常有用。例如,要分配速度,我会这样做:
Amount<Velocity> vel = Amount.valueOf(100, SI.METERS_PER_SECOND);
我的问题是,我想在类中分配一些角速度,但我无法理解应该如何执行此操作。假设我想指定 100 rad/s 的角速度。
Amount<AngularVelocity> angVel = Amount.valueOf(100, {SOME UNIT});
我在 JScience 中找不到任何用于表示角速度的单位。文档说“这个数量的系统单位是“rad/s”(弧度每秒)。”,但没有“SI.RAD_PER_SECOND”这样的东西或任何类似的枚举值,我认为......
所以问题是:在后面的代码示例中我应该写什么{SOME UNIT}?
来自 Birger 的欢呼
---编辑--
有人建议使用“SI.RADIAN.divide(SI.SECOND)”作为单位,但随后我必须将变量分配给不同的类型。
// This will not compile, due to type mismatch
Amount<AngularVelocity> angVel = Amount.valueOf(100, SI.RADIAN.divide(SI.SECOND));
// This will compile, but I want to assign the amount as a AngularVelocity ...
Amount<?> angVel = Amount.valueOf(100, SI.RADIAN.divide(SI.SECOND));
// Another, working alternative. But, surely, there is a way to assign an angular velocity using rad/s ... ?
Amount<Frequency> angVel = Amount.valueOf(100 * Math.PI, SI.HERTZ);
最佳答案
我不是这个特定库的专家,但是 Eclipse 中的一些快速测试让我发现了这一点:
Amount<AngularVelocity> angVel = Amount.valueOf(100, AngularVelocity.UNIT);
问题在于,如果 AngularVelocity.UNIT 发生变化,您的数量也会发生变化。但我不太可能这么说。
否则,给出的代码行不太漂亮:
Amount<AngularVelocity> angVel = Amount.valueOf(100, SI.RADIAN.divide(SI.SECOND).asType(AngularVelocity.class));
这给我在 Java 编程时提供了一个很好的提示:使用控制空间。很多。我从未使用过这个库,但只需快速检查 AngularVelocity.UNIT 版本的文档,我仍然能够找到它。另一个只是您自己的解决方案之后的控制空间。
关于java - jScience 中的单元;角速度的单位是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33124414/
我的游戏有点问题。我试图让一个球从一个点移动到另一个点。这是我的代码: void Create() { // Initialise points StartPosition - { 2
我是一名优秀的程序员,十分优秀!