java - Android 覆盖 PointF 以获得接近 java Point2D.double 的东西

标签 java android graphics point

我有一个返回 Point2D.double 的 java 方法,Android 最接近它的类是 PointF。问题是 PointF 返回 float 而不是 double。有没有办法重写 PointF 使其成为 double 而不是 float ?

最佳答案

为什么不直接将 double 转换为 float 然后使用 PointF,您可以通过简单的强制转换来实现,除非出于其他目的需要将数据保持为 double ,如果是这种情况,您可以尝试扩展 PointF 类如下所示,由于将 double 转换为 float 等,它会比仅使用 PointF 慢,但只要您不经常调用它就可以了!

public class pointD extends PointF{

public double x;
public double y;

public pointD(double x, double y){
    this.set((float) x,(float) y);
    this.x = x;
    this.y = y;
}

public double Length(){
    double l = (double)this.length();
    return l;
}

public final void set(double x, double y){
    this.set((float) x,(float) y);
    this.x = x;
    this.y = y;
}
}

关于java - Android 覆盖 PointF 以获得接近 java Point2D.double 的东西,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6656768/

相关文章:

java - 使用类似于使用 Java 的 Lisp 的对象制作通用链表

opengl - 剪辑空间中三角形的重心坐标与屏幕空间中三角形的重心坐标之间有什么关系

java - java中有类似PushSharp的应用吗?

c++ - OpenGL glMatrixMode 帮助

java - Java 如何对 Path2D 进行三角剖分?

java - 多线程写入文件时使用BufferReader读取文件

java - 在类路径中使用通配符调用 java 失败

java - ClassPool.getDefault();在 Javassist 中什么都不做

android - 如何在 Retrofit 2 (Android) 中将 JSON OBJECT 作为参数发送

java - 如何在此代码中使用 .trim() 方法?