【问题标题】:How to draw efficiently arrows on a canvas with JavaFX 8?如何使用 JavaFX 8 在画布上有效地绘制箭头?
【发布时间】:2015-12-08 18:40:58
【问题描述】:

我正在寻找一种在 JavaFX 8 中绘制箭头的非常简单有效的方法,实现这一目标的最佳方法是什么(假设我愿意绘制成百上千的箭头)?

我听说使用 Canvas 进行绘图非常有效。

但是,我不知道最好的实现是否是:

【问题讨论】:

  • @Xufox:你说得对,我改了,谢谢你的评论=]

标签: java javafx-8 shape java-canvas


【解决方案1】:

最好的方法取决于我们不知道的各种因素,因此在这里很难给出明确的答案。不过,我会尝试提供一些一般性提示,您必须自己决定这些提示是否适用于您的问题。

使用画布进行大规模绘图听起来是个好主意。

简单的线和矩形比路径(还有折线和多边形)快得多。

一些线连接/大写比其他更快。

避免透明。

考虑专门的方法可能会有所帮助,例如创建箭头的图像,然后绘制这些图像。

迈克尔

【讨论】:

  • 嗯,还有一件事可能已经添加到最初的帖子中:但是你知道是否还有一种适当的方法来添加对这些箭头的拖放支持(以及最终如何影响您在上面给出的决定和一般指导方针)?
  • 这里的拖放到底是什么意思。您想在绘图区域上选择一个箭头并将其移动到其他地方或类似的地方吗?
  • 是的,这种用鼠标拖放来改变一个箭头或一组箭头的位置。
  • 这使它变得更加复杂。通常,在这种情况下您必须重新绘制所有内容,但这可能太耗时了。如果与整个画布的大小相比,您的箭头总是很小,那么可以在您选择的箭头周​​围重绘一小部分(没有这个箭头),并将移动的选定箭头显示为覆盖在其他所有内容之上.但这一切都取决于您的任务,通常很难回答。
猜你喜欢
  • 2015-01-04
  • 2019-08-14
  • 2010-10-22
  • 1970-01-01
  • 2020-06-25
  • 2017-02-26
  • 1970-01-01
  • 1970-01-01
  • 2018-08-20
相关资源
最近更新 更多