java - 多边形 类 Java

标签 java 2d physics

所以我正在研究这个二维物理脉冲引擎,我真的很想知道代码的每个部分发生了什么。在定义多边形的多边形类中,有一个部分我根本不理解。

下面是代码链接: https://github.com/ClickerMonkey/ImpulseEngine/tree/master/src/org/magnos/impulse

单击多边形类并向下滚动到名为 public Shape clone() 的方法。在这个方法中有“p.u.set( u );”。我根本不明白这是什么意思,甚至不明白它的作用。如果有人能够解释代码中这一行的作用,我将不胜感激。

感谢您的阅读

最佳答案

首先要了解Polygon 扩展了Shape...

public class Polygon extends Shape

Shape中,它将u定义为public Final Mat2 u = new Mat2();

因此,在 Polygon#clone 中,它首先创建一个 Polygon 的新实例,并使用以下值设置此新实例的 u 对象: u的当前实例...

Polygon p = new Polygon();
p.u.set( u ); // or p.u.set( this.u ); if it's easier to understand...

现在,在 Mat2 中,set(Mat2) 方法只是将参数的属性复制到它自己的值的属性...

public void set( Mat2 m )
{
    m00 = m.m00;
    m01 = m.m01;
    m10 = m.m10;
    m11 = m.m11;
}

所以,基本上,它所做的是将父 Polygon.u (Mat2) 的属性复制到子/克隆版本...

关于java - 多边形 类 Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24986977/

相关文章:

mysql - 存储在 SQL 中的二维数据

java - java中如何从一个较大的子字符串中提取多个子字符串?

java - 使用android XmlPullParser解析XML文件的性能问题

图像的 JavaNullPointer

java - 如何为手机开发 Java 游戏?

objective-c - Chipmunk Physics 的 anchor 和位置

java - IntelliJ IDEA 2016.3.4 gradle如何运行java项目

matlab - 使用 K 均值聚类准确检测图像中的颜色区域

Swift:使用施加的脉冲计算节点的轨迹

python - 模拟电子运动——python中自适应步长的微分方程