将物体朝向或远离中心移动直至碰撞

时间:2017-09-10 14:58:08

标签: java javafx

我正在JavaFX中尝试将对象放在一个点上而不重叠。因为我正在努力制作一个词云计划。

如果发生碰撞,我起初试图将它们置于螺旋状中 (我有一种方法可以检测我班上的碰撞)

if (collisionDetected){
   text.translateXProperty().asObject().setValue((double)80);
}

但我无法解决如何设置螺旋路径

所以我想生成rand.int x y值并向中心点移动直到检测到碰撞,然后放置对象并移动到列表中的下一个对象。在检测到碰撞之前,我不确定如何设置路径和增量。或者从中间的所有内容开始并在360度内决定rand.int并创建一个到场景边界的路径并沿着它增加直到collisionDetected = false

更好

,如

Integer randproperty = rand.nextInt(0, 360);
while(collisionDetected){
    Path path = new Path();
    MoveTo moveTo = new MoveTo();
    moveTo.setX(randproperty);
    moveTo.setY(randproperty);
    path.getElements().add(moveTo);

我不知道如何在路径上移动它,直到collisionDetected = false。

这里有一些图表链接到imgur,以直观地表示我mean.

总而言之,我试图将对象放置在靠近中心点的位置而不使它们相交。我可以检查一个交叉点是否已经发生,但我不知道如何将文本对象移动到没有交叉点的区域。图片链接到imgur作为视觉表示。

由于

0 个答案:

没有答案