Loading draw/isogrids/hexa16.go +15 −9 Original line number Diff line number Diff line Loading @@ -77,7 +77,7 @@ func Hexa16(w http.ResponseWriter, key string, colors []color.RGBA, size, lines if (xL%2) == 0 && isInTriangleL(triangleId(xL, yL, left), xL, yL) { tid := triangleId(xL, yL, left) stid := subTriangleId(xL, yL, left, tid) stids := SubTriangleIdsFromId(3) stids := SubTriangleIdsFromId(9) if stids[tid-1] == stid { canvas.Polygon(xs, ys, fillTriangle[0]) } else { Loading @@ -86,7 +86,7 @@ func Hexa16(w http.ResponseWriter, key string, colors []color.RGBA, size, lines } else if (xL%2) != 0 && isInTriangleR(triangleId(xL, yL, right), xL, yL) { tid := triangleId(xL, yL, right) stid := subTriangleId(xL, yL, right, tid) stids := SubTriangleIdsFromId(3) stids := SubTriangleIdsFromId(9) if stids[tid-1] == stid { canvas.Polygon(xs, ys, fillTriangle[0]) } else { Loading @@ -102,7 +102,7 @@ func Hexa16(w http.ResponseWriter, key string, colors []color.RGBA, size, lines if (xLMirror%2) == 0 && isInTriangleL(triangleId(xLMirror, yLMirror, left), xLMirror, yLMirror) { tid := triangleId(xLMirror, yLMirror, left) stid := subTriangleId(xLMirror, yLMirror, left, tid) stids := SubTriangleIdsFromId(3) stids := SubTriangleIdsFromId(9) if stids[tid-1] == stid { canvas.Polygon(xsMirror, ys, fillTriangle[0]) } else { Loading @@ -111,7 +111,7 @@ func Hexa16(w http.ResponseWriter, key string, colors []color.RGBA, size, lines } else if (xLMirror%2) != 0 && isInTriangleR(triangleId(xLMirror, yLMirror, right), xLMirror, yLMirror) { tid := triangleId(xLMirror, yLMirror, right) stid := subTriangleId(xLMirror, yLMirror, right, tid) stids := SubTriangleIdsFromId(3) stids := SubTriangleIdsFromId(9) if stids[tid-1] == stid { canvas.Polygon(xsMirror, ys, fillTriangle[0]) } else { Loading Loading @@ -142,7 +142,7 @@ func Hexa16(w http.ResponseWriter, key string, colors []color.RGBA, size, lines if (xL%2) != 0 && isInTriangleL(triangleId(xL, yL, left), xL, yL) { tid := triangleId(xL, yL, left) stid := subTriangleId(xL, yL, left, tid) stids := SubTriangleIdsFromId(3) stids := SubTriangleIdsFromId(9) if stids[tid-1] == stid { canvas.Polygon(xs1, ys1, fillTriangle[0]) } else { Loading @@ -152,7 +152,7 @@ func Hexa16(w http.ResponseWriter, key string, colors []color.RGBA, size, lines } else if (xL%2) == 0 && isInTriangleR(triangleId(xL, yL, right), xL, yL) { tid := triangleId(xL, yL, right) stid := subTriangleId(xL, yL, right, tid) stids := SubTriangleIdsFromId(3) stids := SubTriangleIdsFromId(9) if stids[tid-1] == stid { canvas.Polygon(xs1, ys1, fillTriangle[0]) } else { Loading @@ -168,7 +168,7 @@ func Hexa16(w http.ResponseWriter, key string, colors []color.RGBA, size, lines if (xL%2) == 0 && isInTriangleL(triangleId(xLMirror, yLMirror, left), xLMirror, yLMirror) { tid := triangleId(xLMirror, yLMirror, left) stid := subTriangleId(xLMirror, yLMirror, left, tid) stids := SubTriangleIdsFromId(3) stids := SubTriangleIdsFromId(9) if stids[tid-1] == stid { canvas.Polygon(xs1, ys1, fillTriangle[0]) } else { Loading @@ -177,7 +177,7 @@ func Hexa16(w http.ResponseWriter, key string, colors []color.RGBA, size, lines } else if (xL%2) != 0 && isInTriangleR(triangleId(xLMirror, yLMirror, right), xLMirror, yLMirror) { tid := triangleId(xLMirror, yLMirror, right) stid := subTriangleId(xLMirror, yLMirror, right, tid) stids := SubTriangleIdsFromId(3) stids := SubTriangleIdsFromId(9) if stids[tid-1] == stid { canvas.Polygon(xs1, ys1, fillTriangle[0]) } else { Loading Loading @@ -472,8 +472,8 @@ func subTriangleId(x, y, direction, id int) int { {3, 0, right}, {3, 1, right}, {3, 2, right}, {3, 1, left}, {3, 0, left}, {3, 1, left}, {4, 0, right}, {4, 1, right}, {4, 1, left}, Loading Loading @@ -570,6 +570,12 @@ func SubTriangleIdsFromId(lookforSubTriangleId int) []int { 1: []int{1, 7, 9, 9, 3, 1}, 2: []int{2, 3, 6, 8, 7, 4}, 3: []int{3, 1, 1, 7, 9, 9}, 4: []int{4, 5, 8, 6, 5, 2}, 5: []int{5, 2, 4, 5, 8, 6}, 6: []int{6, 8, 7, 4, 2, 3}, 7: []int{7, 4, 2, 3, 6, 8}, 8: []int{8, 6, 5, 2, 4, 5}, 9: []int{9, 9, 3, 1, 1, 7}, } if v, ok := m[lookforSubTriangleId]; ok { return v Loading Loading
draw/isogrids/hexa16.go +15 −9 Original line number Diff line number Diff line Loading @@ -77,7 +77,7 @@ func Hexa16(w http.ResponseWriter, key string, colors []color.RGBA, size, lines if (xL%2) == 0 && isInTriangleL(triangleId(xL, yL, left), xL, yL) { tid := triangleId(xL, yL, left) stid := subTriangleId(xL, yL, left, tid) stids := SubTriangleIdsFromId(3) stids := SubTriangleIdsFromId(9) if stids[tid-1] == stid { canvas.Polygon(xs, ys, fillTriangle[0]) } else { Loading @@ -86,7 +86,7 @@ func Hexa16(w http.ResponseWriter, key string, colors []color.RGBA, size, lines } else if (xL%2) != 0 && isInTriangleR(triangleId(xL, yL, right), xL, yL) { tid := triangleId(xL, yL, right) stid := subTriangleId(xL, yL, right, tid) stids := SubTriangleIdsFromId(3) stids := SubTriangleIdsFromId(9) if stids[tid-1] == stid { canvas.Polygon(xs, ys, fillTriangle[0]) } else { Loading @@ -102,7 +102,7 @@ func Hexa16(w http.ResponseWriter, key string, colors []color.RGBA, size, lines if (xLMirror%2) == 0 && isInTriangleL(triangleId(xLMirror, yLMirror, left), xLMirror, yLMirror) { tid := triangleId(xLMirror, yLMirror, left) stid := subTriangleId(xLMirror, yLMirror, left, tid) stids := SubTriangleIdsFromId(3) stids := SubTriangleIdsFromId(9) if stids[tid-1] == stid { canvas.Polygon(xsMirror, ys, fillTriangle[0]) } else { Loading @@ -111,7 +111,7 @@ func Hexa16(w http.ResponseWriter, key string, colors []color.RGBA, size, lines } else if (xLMirror%2) != 0 && isInTriangleR(triangleId(xLMirror, yLMirror, right), xLMirror, yLMirror) { tid := triangleId(xLMirror, yLMirror, right) stid := subTriangleId(xLMirror, yLMirror, right, tid) stids := SubTriangleIdsFromId(3) stids := SubTriangleIdsFromId(9) if stids[tid-1] == stid { canvas.Polygon(xsMirror, ys, fillTriangle[0]) } else { Loading Loading @@ -142,7 +142,7 @@ func Hexa16(w http.ResponseWriter, key string, colors []color.RGBA, size, lines if (xL%2) != 0 && isInTriangleL(triangleId(xL, yL, left), xL, yL) { tid := triangleId(xL, yL, left) stid := subTriangleId(xL, yL, left, tid) stids := SubTriangleIdsFromId(3) stids := SubTriangleIdsFromId(9) if stids[tid-1] == stid { canvas.Polygon(xs1, ys1, fillTriangle[0]) } else { Loading @@ -152,7 +152,7 @@ func Hexa16(w http.ResponseWriter, key string, colors []color.RGBA, size, lines } else if (xL%2) == 0 && isInTriangleR(triangleId(xL, yL, right), xL, yL) { tid := triangleId(xL, yL, right) stid := subTriangleId(xL, yL, right, tid) stids := SubTriangleIdsFromId(3) stids := SubTriangleIdsFromId(9) if stids[tid-1] == stid { canvas.Polygon(xs1, ys1, fillTriangle[0]) } else { Loading @@ -168,7 +168,7 @@ func Hexa16(w http.ResponseWriter, key string, colors []color.RGBA, size, lines if (xL%2) == 0 && isInTriangleL(triangleId(xLMirror, yLMirror, left), xLMirror, yLMirror) { tid := triangleId(xLMirror, yLMirror, left) stid := subTriangleId(xLMirror, yLMirror, left, tid) stids := SubTriangleIdsFromId(3) stids := SubTriangleIdsFromId(9) if stids[tid-1] == stid { canvas.Polygon(xs1, ys1, fillTriangle[0]) } else { Loading @@ -177,7 +177,7 @@ func Hexa16(w http.ResponseWriter, key string, colors []color.RGBA, size, lines } else if (xL%2) != 0 && isInTriangleR(triangleId(xLMirror, yLMirror, right), xLMirror, yLMirror) { tid := triangleId(xLMirror, yLMirror, right) stid := subTriangleId(xLMirror, yLMirror, right, tid) stids := SubTriangleIdsFromId(3) stids := SubTriangleIdsFromId(9) if stids[tid-1] == stid { canvas.Polygon(xs1, ys1, fillTriangle[0]) } else { Loading Loading @@ -472,8 +472,8 @@ func subTriangleId(x, y, direction, id int) int { {3, 0, right}, {3, 1, right}, {3, 2, right}, {3, 1, left}, {3, 0, left}, {3, 1, left}, {4, 0, right}, {4, 1, right}, {4, 1, left}, Loading Loading @@ -570,6 +570,12 @@ func SubTriangleIdsFromId(lookforSubTriangleId int) []int { 1: []int{1, 7, 9, 9, 3, 1}, 2: []int{2, 3, 6, 8, 7, 4}, 3: []int{3, 1, 1, 7, 9, 9}, 4: []int{4, 5, 8, 6, 5, 2}, 5: []int{5, 2, 4, 5, 8, 6}, 6: []int{6, 8, 7, 4, 2, 3}, 7: []int{7, 4, 2, 3, 6, 8}, 8: []int{8, 6, 5, 2, 4, 5}, 9: []int{9, 9, 3, 1, 1, 7}, } if v, ok := m[lookforSubTriangleId]; ok { return v Loading