java - 我想将随机 vector 添加到具有 n 个元素的数组中。但是我想要新的随机 vector 与数组中的元素之间的距离 > 4f

标签 java jmonkeyengine

这是我的代码,显然它不正确?还有其他方法可以在随机位置创建对象而不重叠吗?感谢您抽出时间。

   public ArrayList getVector3f() {
    boolean lessThan = false;
    // create first random vector & add it to the list array
    Vector3f v1 = randVector();
    list.add(v1);
    //num=4;
    for (int i = 0; i <= num - 2; i++) {
        vec = randVector();

        for (int j = 0; j <= list.size() - 1 ; j++) {
            if (list.get(j).distance(vec) < 4f) {
                lessThan = true;
            }
        }
        if (lessThan == true) {
            vec = randVector();
            for (int j = 0; j <= list.size() - 1; j++) {
                if (list.get(j).distance(vec) < 4f) {
                    lessThan = true;
                } else {
                    lessThan = false;
                }
            }
        }
        if (lessThan == false) {
            list.add(vec);
            System.out.println(vec);
        }
    }
    return list;
}

最佳答案

你似乎已经“展开了你的循环”。试试这个(未经测试):-

  public ArrayList getVector3f() {
    // create first random vector & add it to the list array
    Vector3f vec = randVector();
    list.add(vec);

    for (int i = 0; i <= num-2; i++) {
        boolean lessThan = true;
        while (lessThan) {
            lessThan = false;
            vec = randVector();
            for (int j = 0; j < list.size() ; j++) {
                if (list.get(j).distance(vec) < 4f) {
                    lessThan = true;
                    break;
                }
            }
        }
        list.add(vec);
        System.out.println(vec);
    }
    return list;
}

关于java - 我想将随机 vector 添加到具有 n 个元素的数组中。但是我想要新的随机 vector 与数组中的元素之间的距离 > 4f,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42995017/

相关文章:

java - 在java中对整个脚本运行pig解释命令

java - 匹配除 1 和 0 之外的数字

java - 强制更改 Java 中的库

java - 如何刷新jMonkey中的所有输入事件

java - Spring MVC : Avoiding file extension in URL

java - 将java的xml Element对象转换为文本

java - 如何使用 jndi 验证目录(LDAP 或 AD)中是否存在对象?

java - jMonkey优化类似于Java3D的

c++ - 旋转矩阵到四元数(以及返回)有什么问题?

Clojure 和 64 位 lwjgl (lein 2)