mirror of
https://git.mirrors.martin98.com/https://github.com/Ultimaker/Cura
synced 2025-08-14 18:05:55 +08:00
CURA-4672 fix auto arrange for small models, they are now rounded up to 1 pixel rasterized
This commit is contained in:
parent
7b8f951682
commit
abdc33a0b9
@ -29,8 +29,14 @@ class ShapeArray:
|
|||||||
offset_x = int(numpy.amin(flip_vertices[:, 1]))
|
offset_x = int(numpy.amin(flip_vertices[:, 1]))
|
||||||
flip_vertices[:, 0] = numpy.add(flip_vertices[:, 0], -offset_y)
|
flip_vertices[:, 0] = numpy.add(flip_vertices[:, 0], -offset_y)
|
||||||
flip_vertices[:, 1] = numpy.add(flip_vertices[:, 1], -offset_x)
|
flip_vertices[:, 1] = numpy.add(flip_vertices[:, 1], -offset_x)
|
||||||
|
flip_vertices = numpy.ceil(flip_vertices)
|
||||||
shape = [int(numpy.amax(flip_vertices[:, 0])), int(numpy.amax(flip_vertices[:, 1]))]
|
shape = [int(numpy.amax(flip_vertices[:, 0])), int(numpy.amax(flip_vertices[:, 1]))]
|
||||||
|
if shape == [0, 0]:
|
||||||
|
shape = [1, 1]
|
||||||
arr = cls.arrayFromPolygon(shape, flip_vertices)
|
arr = cls.arrayFromPolygon(shape, flip_vertices)
|
||||||
|
if not numpy.any(arr):
|
||||||
|
# set at least 1 pixel
|
||||||
|
arr[0][0] = 1
|
||||||
return cls(arr, offset_x, offset_y)
|
return cls(arr, offset_x, offset_y)
|
||||||
|
|
||||||
## Instantiate an offset and hull ShapeArray from a scene node.
|
## Instantiate an offset and hull ShapeArray from a scene node.
|
||||||
|
@ -118,6 +118,13 @@ def test_arrayFromPolygon2():
|
|||||||
assert numpy.any(array)
|
assert numpy.any(array)
|
||||||
|
|
||||||
|
|
||||||
|
## Polygon -> array
|
||||||
|
def test_fromPolygon():
|
||||||
|
vertices = numpy.array([[0, 0.5], [0, 0], [0.5, 0]])
|
||||||
|
array = ShapeArray.fromPolygon(vertices, scale=0.5)
|
||||||
|
assert numpy.any(array.arr)
|
||||||
|
|
||||||
|
|
||||||
## Line definition -> array with true/false
|
## Line definition -> array with true/false
|
||||||
def test_check():
|
def test_check():
|
||||||
base_array = numpy.zeros([5, 5], dtype=float)
|
base_array = numpy.zeros([5, 5], dtype=float)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user