Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
const points = shape.points;
context.moveTo(points[0], points[1]);
for (let j = 1; j < points.length / 2; j++)
{
context.lineTo(points[j * 2], points[(j * 2) + 1]);
}
// if the first and last point are the same close the path - much neater :)
if (points[0] === points[points.length - 2] && points[1] === points[points.length - 1])
{
context.closePath();
}
}
else if (data.type === SHAPES.RECT)
{
context.rect(shape.x, shape.y, shape.width, shape.height);
context.closePath();
}
else if (data.type === SHAPES.CIRC)
{
// TODO - need to be Undefined!
context.arc(shape.x, shape.y, shape.radius, 0, 2 * Math.PI);
context.closePath();
}
else if (data.type === SHAPES.ELIP)
{
// ellipse code taken from: http://stackoverflow.com/questions/2172798/how-to-draw-an-oval-in-html5-canvas
const w = shape.width * 2;
const h = shape.height * 2;
const data = graphics.graphicsData[i];
// TODO - this can be simplified
webGLData = this.getWebGLData(webGL, 0);
if (data.nativeLines && data.lineWidth)
{
webGLDataNativeLines = this.getWebGLData(webGL, 0, true);
webGL.lastIndex++;
}
if (data.type === SHAPES.POLY)
{
buildPoly(data, webGLData, webGLDataNativeLines);
}
if (data.type === SHAPES.RECT)
{
buildRectangle(data, webGLData, webGLDataNativeLines);
}
else if (data.type === SHAPES.CIRC || data.type === SHAPES.ELIP)
{
buildCircle(data, webGLData, webGLDataNativeLines);
}
else if (data.type === SHAPES.RREC)
{
buildRoundedRectangle(data, webGLData, webGLDataNativeLines);
}
webGL.lastIndex++;
}
// this.renderer.geometry.bindVao(null);
const points = shape.points;
context.moveTo(points[0], points[1]);
for (let j = 1; j < points.length / 2; j++)
{
context.lineTo(points[j * 2], points[(j * 2) + 1]);
}
// if the first and last point are the same close the path - much neater :)
if (points[0] === points[points.length - 2] && points[1] === points[points.length - 1])
{
context.closePath();
}
}
else if (data.type === SHAPES.RECT)
{
context.rect(shape.x, shape.y, shape.width, shape.height);
context.closePath();
}
else if (data.type === SHAPES.CIRC)
{
// TODO - need to be Undefined!
context.arc(shape.x, shape.y, shape.radius, 0, 2 * Math.PI);
context.closePath();
}
else if (data.type === SHAPES.ELIP)
{
// ellipse code taken from: http://stackoverflow.com/questions/2172798/how-to-draw-an-oval-in-html5-canvas
const w = shape.width * 2;
const h = shape.height * 2;
if (fillStyle.visible)
{
context.globalAlpha = fillStyle.alpha * worldAlpha;
context.fillStyle = `#${(`00000${(fillColor | 0).toString(16)}`).substr(-6)}`;
context.fill();
}
if (lineStyle.visible)
{
context.globalAlpha = lineStyle.alpha * worldAlpha;
context.strokeStyle = `#${(`00000${(lineColor | 0).toString(16)}`).substr(-6)}`;
context.stroke();
}
}
else if (data.type === SHAPES.RECT)
{
if (fillStyle.visible)
{
context.globalAlpha = fillStyle.alpha * worldAlpha;
context.fillStyle = `#${(`00000${(fillColor | 0).toString(16)}`).substr(-6)}`;
context.fillRect(shape.x, shape.y, shape.width, shape.height);
}
if (lineStyle.visible)
{
context.globalAlpha = lineStyle.alpha * worldAlpha;
context.strokeStyle = `#${(`00000${(lineColor | 0).toString(16)}`).substr(-6)}`;
context.strokeRect(shape.x, shape.y, shape.width, shape.height);
}
}
else if (data.type === SHAPES.CIRC)
{
export * from './QuadraticUtils';
export * from './BatchPart';
import { SHAPES } from '@pixi/math';
/**
* Map of fill commands for each shape type.
*
* @memberof PIXI.graphicsUtils
* @member {Object}
*/
export const FILL_COMMANDS = {
[SHAPES.POLY]: buildPoly,
[SHAPES.CIRC]: buildCircle,
[SHAPES.ELIP]: buildCircle,
[SHAPES.RECT]: buildRectangle,
[SHAPES.RREC]: buildRoundedRectangle,
};
/**
* Batch pool, stores unused batches for preventing allocations.
*
* @memberof PIXI.graphicsUtils
* @type {Array}
*/
export const BATCH_POOL = [];
/**
* Draw call pool, stores unused draw calls for preventing allocations.
*
* @memberof PIXI.graphicsUtils
* @type {Array}