【发布时间】:2018-07-06 12:26:52
【问题描述】:
我在计算特定线条的边界框时遇到问题。 我在下图中绘制了我使用的三种类型的线。
线条由 3 个点(标记为红色)指定,但可以有任意数量的点。这些行可以有不同的行帽:
- 没有线帽
- 矩形帽(线的末端是 line_width/2 长)
- 圆帽(半径为 line_width/2 的圆)
是否可以使用像 Cairo 这样的图形框架来创建这样的线,并从 Cairo 中取出边界框,还是我必须自己使用三角法计算它?
我用 C 编程。
我已经有了一个计算多边形边界框的函数。有没有一种简单的方法可以将这些线转换为多边形,以便我可以使用现有的函数?
我问这个问题是因为我希望有人有一个有效的方法来解决这个问题。我的程序必须解析包含大量此类行的大型图形文件并提取各个边界框。
编辑
我找到了开罗的以下链接。似乎支持这些线型:Cairo line caps
我想补充一点:我从未使用过开罗。我只是在搜索过程中偶然发现了它。我是它的初学者。
【问题讨论】:
标签: graphics trigonometry cairo bounding-box