Uranium
Application Framework
Loading...
Searching...
No Matches
UM.View.SelectionPass.SelectionPass Class Reference
Inheritance diagram for UM.View.SelectionPass.SelectionPass:
UM.View.RenderPass.RenderPass

Public Member Functions

 __init__ (self, width, height)
 
 render (self)
 
 getIdAtPosition (self, x, y)
 
 getFaceIdAtPosition (self, x, y)
 
- Public Member Functions inherited from UM.View.RenderPass.RenderPass
None __init__ (self, str name, int width, int height, int priority=0)
 
str getName (self)
 
Tuple[int, int] getSize (self)
 
int getPriority (self)
 
None setSize (self, int width, int height)
 
None bind (self)
 
None release (self)
 
int getTextureId (self)
 
QImage getOutput (self)
 

Protected Member Functions

 _onActiveToolChanged (self)
 
 _onSelectedFaceChanged (self)
 
 _renderObjectsMode (self)
 
 _renderFacesMode (self)
 
 _getNodeColor (self, node)
 
 _dropAlpha (self, color)
 
bool _isInSelectedGroup (self, "SceneNode" node)
 
- Protected Member Functions inherited from UM.View.RenderPass.RenderPass
None _updateRenderStorage (self)
 

Protected Attributes

 _shader = OpenGL.getInstance().createShaderProgram(Resources.getPath(Resources.Shaders, "selection.shader"))
 
 _face_shader = OpenGL.getInstance().createShaderProgram(Resources.getPath(Resources.Shaders, "select_face.shader"))
 
 _tool_handle_shader = OpenGL.getInstance().createShaderProgram(Resources.getPath(Resources.Shaders, "default.shader"))
 
 _scene = Application.getInstance().getController().getScene()
 
 _renderer = Application.getInstance().getRenderer()
 
dict _selection_map = {}
 
dict _default_toolhandle_selection_map
 
dict _toolhandle_selection_map = {}
 
 _onActiveToolChanged
 
 _mode = SelectionPass.SelectionMode.OBJECTS
 
 _onSelectedFaceChanged
 
 _output = None
 
- Protected Attributes inherited from UM.View.RenderPass.RenderPass
 _name = name
 
 _width = width
 
 _height = height
 
 _priority = priority
 
 _gl = OpenGL.getInstance().getBindingsObject()
 
 _fbo = None
 

Additional Inherited Members

- Static Public Attributes inherited from UM.View.RenderPass.RenderPass
int MaximumPriority = 999
 

Detailed Description

A RenderPass subclass responsible for rendering selectable objects to a texture.

This pass performs the rendering of selectable objects to a texture that can be
sampled to retrieve the actual object that was underneath the mouse cursor. Additionally,
information about what objects are actually selected is rendered into the alpha channel
of this render pass so it can be used later on in the composite pass.

Member Function Documentation

◆ _isInSelectedGroup()

bool UM.View.SelectionPass.SelectionPass._isInSelectedGroup ( self,
"SceneNode" node )
protected
Get whether the given node is in a group that is selected.
:param node: The node to check.
:return: ``True`` if the node is in a selected group, or ``False`` if
it's not.

◆ getFaceIdAtPosition()

UM.View.SelectionPass.SelectionPass.getFaceIdAtPosition ( self,
x,
y )
Get an unique identifier to the face of the polygon at a certain pixel-coordinate.

◆ getIdAtPosition()

UM.View.SelectionPass.SelectionPass.getIdAtPosition ( self,
x,
y )
Get the object id at a certain pixel coordinate.

◆ render()

UM.View.SelectionPass.SelectionPass.render ( self)
Perform the actual rendering.

Reimplemented from UM.View.RenderPass.RenderPass.

Member Data Documentation

◆ _default_toolhandle_selection_map

dict UM.View.SelectionPass.SelectionPass._default_toolhandle_selection_map
protected
Initial value:
= {
self._dropAlpha(ToolHandle.DisabledSelectionColor): ToolHandle.NoAxis,
self._dropAlpha(ToolHandle.XAxisSelectionColor): ToolHandle.XAxis,
self._dropAlpha(ToolHandle.YAxisSelectionColor): ToolHandle.YAxis,
self._dropAlpha(ToolHandle.ZAxisSelectionColor): ToolHandle.ZAxis,
self._dropAlpha(ToolHandle.AllAxisSelectionColor): ToolHandle.AllAxis,
ToolHandle.DisabledSelectionColor: ToolHandle.NoAxis,
ToolHandle.XAxisSelectionColor: ToolHandle.XAxis,
ToolHandle.YAxisSelectionColor: ToolHandle.YAxis,
ToolHandle.ZAxisSelectionColor: ToolHandle.ZAxis,
ToolHandle.AllAxisSelectionColor: ToolHandle.AllAxis
}

The documentation for this class was generated from the following file: