在JavaFX中着色一条线并改变这种颜色

时间:2016-12-28 19:39:22

标签: java javafx

我是JavaFX的新手。我试图执行蚁群优化算法的图形实现。我的版本非常简单,涉及在2D笛卡尔平面上移动的蚂蚁,当他们找到食物时会沉积信息素。

我在JavaFX中编写了一些代码,它创建了一个代表蚂蚁的圆形节点,并在舞台的场景中移动它,我想我也可以将它扩展到多个蚂蚁。

但我想知道如何为加入蚂蚁当前位置及其先前位置的线条着色。基本上当蚂蚁找到食物并开始返回殖民地时,它必须在其路径上沉积一些信息素,我希望这条路径随着蚂蚁沿着它移动而着色。信息素也应该随着时间蒸发。我有一个存储信息素强度值的数组。那么还可以与数字(信息素值)成比例地减少线条颜色的色调吗?

感谢。

1 个答案:

答案 0 :(得分:1)

您可以使用Line将几何线段添加到场景图中。随后,您可以调用setStroke来设置该行的颜色。该方法可以采用Color对象。在提供的链接中有多种方法可以操作颜色对象的色调,最值得注意的是deriveColor,可以用来移动色调值。

此外,添加了Line对象后,您可以将其endXendY属性绑定到您的ant的位置。这样,当蚂蚁沿着某条路径移动时,它将“拖动”#34;它背后的Line对象的结尾。我相信这是你想要实现的理想行为。