我需要使用fabric js在我的项目中创建绘制多边形的工具。 我发现sctipt https://github.com/taqimustafa/fabricjs-polygon对我来说很完美。 但是当我使用1.7.11时,这个脚本适用于Fabric 1.6.3。
我对fabric 1.7.11和activeShape有一个小问题。 ActiveShape仅在第一点和最后一点之间的90度区域绘制。
以下是示例: https://codepen.io/daer_ru/pen/pdOMyX
?
答案 0 :(得分:4)
创建多边形时需要使用objectCaching:false
。在使完整的多边形不使用它之后,它会创建自己的对象缓存,这样如果没有修改它就不会在下一个渲染调用中呈现。
此处已更新codepen
答案 1 :(得分:0)
我确实是提问者。并添加一些信息:
如果您也这样做,则可能需要了解多边形的移动,调整大小,旋转等时多边形点的坐标。
但是一旦创建了多边形,points
就不会再更改,因此无法直接获取正确的坐标。
在布料2.0之前,多边形点是相对于其中心的,您想通过以下操作来计算坐标:How to get polygon points in Fabric.js
2.0之后,多边形点在画布上是绝对的,您可以这样做:How does transforming points with a transformMatrix work in fabricJS?