2017-10-11 154 views
0

如何在EaselJS中创建带圆角的三角形?我使用drawPolyStar来形成三角形,带圆角的EaselJS三角形?

var polystar = new createjs.Shape(); 
polystar.graphics.drawPolyStar(100, 100, 60, 3, 0, -90); 

这是我所希望的三角形,看起来像一个形象:Outcome vs Expected triangle

编辑:图片链接似乎并没有工作。这是三角形应该看起来像:enter image description here

但实际的三角形有尖锐的角落。

+0

我无法打开图像 – OptimusCrime

+0

@OptimusCrime呀。用另一张图片更新。 – user3607282

回答

0

没有画布APIs可以像roundRect API一样对多边形进行四舍五入。

有我能想到的几种方法:

  1. 不要自己使用包含arcTo圆角。这需要花费一些数学计算,甚至可能会有一些图书馆或例子浮出水面。

[编辑]我花一些时间使样品https://jsfiddle.net/lannymcnie/cga60tsf/1/

  • 使用圆形冲程的边缘,可以排序的伪造它。 This fiddle显示了圆形的粗线可以使外边缘看起来圆。您可以在顶部绘制另一个较小的三角形以获得所需的效果。
  • 样品

    // Line outer radius 
    context.lineJoin = "round"; 
    context.lineWidth = cornerRadius; 
    
    +0

    花了一点时间试图找出这一个,并得到了一个体面的近似...它不是很好,但它给你一个开始的地方。 https://jsfiddle.net/lannymcnie/cga60tsf/1/ – Lanny