mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-06 14:37:29 -06:00
Merge branch '15.06'
* 15.06: Updated name in menu for firmware update Added exception handling to listen thread join Render a transparent ghost of the selection when things are selected. Add changes of 15.05.93 release Make button tooltip text use the dark color from the palette Render the build platform grid as a single sided plane Ignore selection when moving objects due to collision Use the right offset for object collision after Polygon collision was fixed
This commit is contained in:
commit
98befd69ec
6 changed files with 27 additions and 9 deletions
|
@ -5,6 +5,8 @@ from UM.View.View import View
|
|||
from UM.View.Renderer import Renderer
|
||||
from UM.Scene.Iterator.DepthFirstIterator import DepthFirstIterator
|
||||
from UM.Resources import Resources
|
||||
from UM.Scene.Selection import Selection
|
||||
from UM.Math.Color import Color
|
||||
|
||||
## View used to display g-code paths.
|
||||
class LayerView(View):
|
||||
|
@ -23,9 +25,15 @@ class LayerView(View):
|
|||
self._material = renderer.createMaterial(Resources.getPath(Resources.ShadersLocation, "basic.vert"), Resources.getPath(Resources.ShadersLocation, "vertexcolor.frag"))
|
||||
self._material.setUniformValue("u_color", [1.0, 0.0, 0.0, 1.0])
|
||||
|
||||
self._selection_material = renderer.createMaterial(Resources.getPath(Resources.ShadersLocation, "basic.vert"), Resources.getPath(Resources.ShadersLocation, "color.frag"))
|
||||
self._selection_material.setUniformValue("u_color", Color(35, 35, 35, 128))
|
||||
|
||||
for node in DepthFirstIterator(scene.getRoot()):
|
||||
if not node.render(renderer):
|
||||
if node.getMeshData() and node.isVisible():
|
||||
if Selection.isSelected(node):
|
||||
renderer.queueNode(node, material = self._selection_material, transparent = True)
|
||||
|
||||
try:
|
||||
layer_data = node.getMeshData().layerData
|
||||
except AttributeError:
|
||||
|
@ -43,9 +51,9 @@ class LayerView(View):
|
|||
if layer >= end_layer:
|
||||
break
|
||||
|
||||
renderer.queueNode(node, mesh = layer_data, material = self._material, mode = Renderer.RenderLines, start = start, end = end)
|
||||
renderer.queueNode(node, mesh = layer_data, material = self._material, mode = Renderer.RenderLines, start = start, end = end, overlay = True)
|
||||
else:
|
||||
renderer.queueNode(node, mesh = layer_data, material = self._material, mode = Renderer.RenderLines)
|
||||
renderer.queueNode(node, mesh = layer_data, material = self._material, mode = Renderer.RenderLines, overlay = True)
|
||||
|
||||
def setLayer(self, value):
|
||||
self._layer_percentage = value
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue