Improvement in fillCircle: by reducing the number of fill lines in half, the hatching showed visible gaps between lines. This new method ensures a fuller circle. Tested and renders more closely match plotted drawings.

This commit is contained in:
mattmcw 2021-12-08 22:58:31 -05:00
parent c5f7d7b4e6
commit f7b4d41715
1 changed files with 4 additions and 4 deletions

View File

@ -1145,9 +1145,9 @@ ArrayList<float[]> fillCircle (float x, float y, float d, float angle, float lin
float testY = 0;
float[] intersect;
for (int i = -floor(lines / 2); i < floor(lines / 2); i++) {
perpX = x + ((line * (i + 0.5)) * cos(perpRadian));
perpY = y + ((line * (i + 0.5)) * sin(perpRadian));
for (int i = -lines; i < lines; i++) {
perpX = x + ( ( (line / 2) * (i + 0.5) ) * cos(perpRadian));
perpY = y + ( ( (line / 2) * (i + 0.5) ) * sin(perpRadian));
testX = perpX + (d * cos(radian));
testY = perpY + (d * sin(radian));
@ -1173,7 +1173,7 @@ ArrayList<float[]> fillCircle (float x, float y, float d, float angle, float lin
}
if (dist(startX, startY, endX, endY) > line) {
float[] linePoints = {startX, startY, endX, endY};
float[] linePoints = { startX, startY, endX, endY };
output.add(linePoints);
}
}