【发布时间】:2015-04-09 20:50:30
【问题描述】:
我正在使用 Snap SVG 在我正在制作的网络应用程序中操作 SVG。在这个网络应用程序中,我有两个矩形,它们从一个在另一个内部开始,分别称为 rectInner 和 rectOuter。目的是允许用户转换 rectOuter(缩放、旋转、平移),使得 rectInner 始终严格在 rectOuter 内部。需要明确的是,rectInner 永远不会移动或变形。
我解决这个问题的方法是获取 rectInner 和 rectOuter 的边界框,并检查第一个是否严格包含在第二个中。 Snap SVG 提供了一个函数 isBBoxIntersect(rectInner, rectOuter),但它只告诉我边界框的某些部分是否相交,而不是其中一个包含在另一个中。
有简单的方法吗?
编辑:
现在看来我对边界框的概念有些误解,但问题应该更简单。如果我能在所有变换之后找到计算 rectOuter 四个顶点的方法,那么只要 rectInner 的角在由这些顶点构造的路径的内部,整个矩形就是。我想。
【问题讨论】: