我正在寻找关于如何在矩形周围绘制边框并为重叠的边框提供稍微不同的渲染方式的信息。这些矩形是用户生成的,因此它们可以具有各种大小和重叠。用户指定z顺序。以下是一个示例: 我的数据是用简单的矩形数据结构建模的。为了简单起见,我希望用线条来绘制所有边框(即使没有重叠)。我计划在浏览器中使用SVG绘制矩形和边框,但我只是寻找一个通用的解决方案,不依赖于特定平台。这个问题领域对我来说是新的。我在这个领域没有太多经验,但我很乐意接受任何可以得到的信息。
从图片上看,矩形的边框似乎只受到在其上方的矩形的影响。 按照从上到下的顺序绘制矩形。对于要绘制的下一个矩形的八个角相邻的边对,遍历所有当前绘制的矩形,找到包含该角并重叠该边最长部分的矩形。将该部分边渲染为重叠状态。 如果这样做太慢了,可以使用二维线段树来存储所有当前绘制的矩形,以便快速识别包含给定角的矩形。