Add drawing of circles and refactor poly

pull/1916/head
Martin Boonk 2022-03-14 22:29:26 +01:00
parent be4521d0f5
commit 6f8a7b0534
2 changed files with 20 additions and 10 deletions

View File

@ -408,18 +408,15 @@ function drawPoly(graphics, resources, element){
endPerfLog("drawPoly_transform"); endPerfLog("drawPoly_transform");
if (element.ForegroundColor) graphics.setColor(element.ForegroundColor);
if (element.Filled){ if (element.Filled){
startPerfLog("drawPoly_g.fillPoly"); startPerfLog("drawPoly_g.fillPoly");
graphics.fillPoly(vertices,true); graphics.fillPoly(vertices,true);
endPerfLog("drawPoly_g.fillPoly"); endPerfLog("drawPoly_g.fillPoly");
} } else {
if (element.BackgroundColor) graphics.setColor(element.BackgroundColor);
startPerfLog("drawPoly_g.drawPoly"); startPerfLog("drawPoly_g.drawPoly");
graphics.drawPoly(vertices,true); graphics.drawPoly(vertices,true);
endPerfLog("drawPoly_g.drawPoly"); endPerfLog("drawPoly_g.drawPoly");
}
endPerfLog("drawPoly"); endPerfLog("drawPoly");
} }
@ -428,8 +425,6 @@ function drawRect(graphics, resources, element){
startPerfLog("drawRect"); startPerfLog("drawRect");
var vertices = []; var vertices = [];
if (element.ForegroundColor) graphics.setColor(element.ForegroundColor);
if (element.Filled){ if (element.Filled){
startPerfLog("drawRect_g.fillRect"); startPerfLog("drawRect_g.fillRect");
graphics.fillRect(element.X, element.Y, element.X + element.Width, element.Y + element.Height); graphics.fillRect(element.X, element.Y, element.X + element.Width, element.Y + element.Height);
@ -442,6 +437,21 @@ function drawRect(graphics, resources, element){
endPerfLog("drawRect"); endPerfLog("drawRect");
} }
function drawCircle(graphics, resources, element){
startPerfLog("drawCircle");
if (element.Filled){
startPerfLog("drawCircle_g.fillCircle");
graphics.fillCircle(element.X, element.Y, element.Radius);
endPerfLog("drawCircle_g.fillCircle");
} else {
startPerfLog("drawCircle_g.drawCircle");
graphics.drawCircle(element.X, element.Y, element.Radius);
endPerfLog("drawCircle_g.drawCircle");
}
endPerfLog("drawCircle");
}
var numbers = {}; var numbers = {};
numbers.Hour = () => { return new Date().getHours(); }; numbers.Hour = () => { return new Date().getHours(); };
numbers.HourTens = () => { return Math.floor(new Date().getHours()/10); }; numbers.HourTens = () => { return Math.floor(new Date().getHours()/10); };

View File

@ -570,7 +570,7 @@
if (typeof element.Plane == "number") next.Plane = element.Plane; if (typeof element.Plane == "number") next.Plane = element.Plane;
next.Layer = element.Layer ? (element.Layer) : "" + c; next.Layer = element.Layer ? (element.Layer) : "" + c;
if (["MultiState","Image","CodedImage","Number","Poly","Rect","Scale"].includes(c)){ if (["MultiState","Image","CodedImage","Number","Circle","Poly","Rect","Scale"].includes(c)){
result.push({type:c, value: next}); result.push({type:c, value: next});
} else { } else {
result = result.concat(collapseTree(next)); result = result.concat(collapseTree(next));