Fix displaying layers with python3.6

This commit is contained in:
sheinz 2017-06-06 23:47:40 +03:00
parent 1c1f21289c
commit de62a3c0fe
2 changed files with 4 additions and 4 deletions

View file

@ -69,7 +69,7 @@ class LayerDataBuilder(MeshBuilder):
vertex_offset = 0 vertex_offset = 0
index_offset = 0 index_offset = 0
for layer, data in self._layers.items(): for layer, data in sorted(self._layers.items()):
( vertex_offset, index_offset ) = data.build( vertex_offset, index_offset, vertices, colors, line_dimensions, extruders, line_types, indices) ( vertex_offset, index_offset ) = data.build( vertex_offset, index_offset, vertices, colors, line_dimensions, extruders, line_types, indices)
self._element_counts[layer] = data.elementCount self._element_counts[layer] = data.elementCount

View file

@ -82,12 +82,12 @@ class LayerPass(RenderPass):
start = 0 start = 0
end = 0 end = 0
element_counts = layer_data.getElementCounts() element_counts = layer_data.getElementCounts()
for layer, counts in element_counts.items(): for layer in sorted(element_counts.keys()):
if layer > self._layer_view._current_layer_num: if layer > self._layer_view._current_layer_num:
break break
if self._layer_view._minimum_layer_num > layer: if self._layer_view._minimum_layer_num > layer:
start += counts start += element_counts[layer]
end += counts end += element_counts[layer]
# This uses glDrawRangeElements internally to only draw a certain range of lines. # This uses glDrawRangeElements internally to only draw a certain range of lines.
batch = RenderBatch(self._layer_shader, type = RenderBatch.RenderType.Solid, mode = RenderBatch.RenderMode.Lines, range = (start, end)) batch = RenderBatch(self._layer_shader, type = RenderBatch.RenderType.Solid, mode = RenderBatch.RenderMode.Lines, range = (start, end))