@@ -58,13 +58,12 @@ PIXI.Strip = function(texture)
5858 this . blendMode = PIXI . blendModes . NORMAL ;
5959
6060 /**
61- * if you need a padding, not yet implemented
61+ * Triangles in canvas mode are automatically antialiased, use this value to force triangles to overlap a bit with each other.
6262 *
63- * @property padding
63+ * @property canvasPadding
6464 * @type Number
6565 */
66- this . padding = 0 ;
67- // NYI, TODO padding ?
66+ this . canvasPadding = 0 ;
6867
6968 this . drawMode = PIXI . Strip . DrawModes . TRIANGLE_STRIP ;
7069
@@ -278,33 +277,34 @@ PIXI.Strip.prototype._renderCanvasDrawTriangle = function(context, vertices, uvs
278277 var u0 = uvs [ index0 ] * textureWidth , u1 = uvs [ index1 ] * textureWidth , u2 = uvs [ index2 ] * textureWidth ;
279278 var v0 = uvs [ index0 + 1 ] * textureHeight , v1 = uvs [ index1 + 1 ] * textureHeight , v2 = uvs [ index2 + 1 ] * textureHeight ;
280279
281- if ( this . padding > 0 ) {
282- var padding = this . padding ;
280+ if ( this . canvasPadding > 0 ) {
281+ var paddingX = this . canvasPadding / this . worldTransform . a ;
282+ var paddingY = this . canvasPadding / this . worldTransform . d ;
283283 var centerX = ( x0 + x1 + x2 ) / 3 ;
284284 var centerY = ( y0 + y1 + y2 ) / 3 ;
285285
286286 var normX = x0 - centerX ;
287287 var normY = y0 - centerY ;
288288
289289 var dist = Math . sqrt ( normX * normX + normY * normY ) ;
290- x0 = centerX + ( normX / dist ) * ( dist + padding ) ;
291- y0 = centerY + ( normY / dist ) * ( dist + padding ) ;
290+ x0 = centerX + ( normX / dist ) * ( dist + paddingX ) ;
291+ y0 = centerY + ( normY / dist ) * ( dist + paddingY ) ;
292292
293293 //
294294
295295 normX = x1 - centerX ;
296296 normY = y1 - centerY ;
297297
298298 dist = Math . sqrt ( normX * normX + normY * normY ) ;
299- x1 = centerX + ( normX / dist ) * ( dist + padding ) ;
300- y1 = centerY + ( normY / dist ) * ( dist + padding ) ;
299+ x1 = centerX + ( normX / dist ) * ( dist + paddingX ) ;
300+ y1 = centerY + ( normY / dist ) * ( dist + paddingY ) ;
301301
302302 normX = x2 - centerX ;
303303 normY = y2 - centerY ;
304304
305305 dist = Math . sqrt ( normX * normX + normY * normY ) ;
306- x2 = centerX + ( normX / dist ) * ( dist + padding ) ;
307- y2 = centerY + ( normY / dist ) * ( dist + padding ) ;
306+ x2 = centerX + ( normX / dist ) * ( dist + paddingX ) ;
307+ y2 = centerY + ( normY / dist ) * ( dist + paddingY ) ;
308308 }
309309
310310 context . save ( ) ;
0 commit comments