本文整理汇总了Python中UM.Mesh.MeshBuilder.MeshBuilder.addPyramid方法的典型用法代码示例。如果您正苦于以下问题:Python MeshBuilder.addPyramid方法的具体用法?Python MeshBuilder.addPyramid怎么用?Python MeshBuilder.addPyramid使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类UM.Mesh.MeshBuilder.MeshBuilder
的用法示例。
在下文中一共展示了MeshBuilder.addPyramid方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_render
# 需要导入模块: from UM.Mesh.MeshBuilder import MeshBuilder [as 别名]
# 或者: from UM.Mesh.MeshBuilder.MeshBuilder import addPyramid [as 别名]
def test_render():
mocked_shader = MagicMock()
with patch("UM.View.GL.OpenGL.OpenGL.getInstance"):
render_batch = RenderBatch(mocked_shader)
# Render without a camera shouldn't cause any effect.
render_batch.render(None)
assert mocked_shader.bind.call_count == 0
# Rendering with a camera should cause the shader to be bound and released (even if the batch is empty)
mocked_camera = MagicMock()
mocked_camera.getWorldTransformation = MagicMock(return_value = Matrix())
mocked_camera.getViewProjectionMatrix = MagicMock(return_value=Matrix())
with patch("UM.View.GL.OpenGLContext.OpenGLContext.properties"):
render_batch.render(mocked_camera)
assert mocked_shader.bind.call_count == 1
assert mocked_shader.release.call_count == 1
# Actualy render with an item in the batch
mb = MeshBuilder()
mb.addPyramid(10, 10, 10, color=Color(0.0, 1.0, 0.0, 1.0))
mb.calculateNormals()
mesh_data = mb.build()
render_batch.addItem(Matrix(), mesh_data, {})
with patch("UM.View.GL.OpenGL.OpenGL.getInstance"):
with patch("UM.View.GL.OpenGLContext.OpenGLContext.properties"):
render_batch.render(mocked_camera)
assert mocked_shader.bind.call_count == 2
assert mocked_shader.release.call_count == 2
示例2: __init__
# 需要导入模块: from UM.Mesh.MeshBuilder import MeshBuilder [as 别名]
# 或者: from UM.Mesh.MeshBuilder.MeshBuilder import addPyramid [as 别名]
def __init__(self, parent = None):
super().__init__(parent)
self._handle_width = 8
self._handle_height = 14
self._handle_position = 20
mb = MeshBuilder()
mb.addPyramid(
width = self._handle_width,
height = self._handle_height,
depth = self._handle_width,
center = Vector(0, self._handle_position, 0),
color = ToolHandle.YAxisColor
)
mb.addPyramid(
width = self._handle_width,
height = self._handle_height,
depth = self._handle_width,
center = Vector(0, -self._handle_position, 0),
color = ToolHandle.YAxisColor,
axis = Vector.Unit_X,
angle = 180
)
mb.addPyramid(
width = self._handle_width,
height = self._handle_height,
depth = self._handle_width,
center = Vector(self._handle_position, 0, 0),
color = ToolHandle.XAxisColor,
axis = Vector.Unit_Z,
angle = 90
)
mb.addPyramid(
width = self._handle_width,
height = self._handle_height,
depth = self._handle_width,
center = Vector(-self._handle_position, 0, 0),
color = ToolHandle.XAxisColor,
axis = Vector.Unit_Z,
angle = -90
)
mb.addPyramid(
width = self._handle_width,
height = self._handle_height,
depth = self._handle_width,
center = Vector(0, 0, -self._handle_position),
color = ToolHandle.ZAxisColor,
axis = Vector.Unit_X,
angle = 90
)
mb.addPyramid(
width = self._handle_width,
height = self._handle_height,
depth = self._handle_width,
center = Vector(0, 0, self._handle_position),
color = ToolHandle.ZAxisColor,
axis = Vector.Unit_X,
angle = -90
)
self.setSolidMesh(mb.getData())
self.setSelectionMesh(mb.getData())
示例3: buildMesh
# 需要导入模块: from UM.Mesh.MeshBuilder import MeshBuilder [as 别名]
# 或者: from UM.Mesh.MeshBuilder.MeshBuilder import addPyramid [as 别名]
def buildMesh(self):
mb = MeshBuilder()
#SOLIDMESH -> LINES
if self.YAxis in self._enabled_axis:
mb.addCube(
width = self._line_width,
height = self._line_length,
depth = self._line_width,
center = Vector(0, self._handle_position/2, 0),
color = self._y_axis_color
)
if self.XAxis in self._enabled_axis:
mb.addCube(
width = self._line_length,
height = self._line_width,
depth = self._line_width,
center = Vector(self._handle_position/2, 0, 0),
color = self._x_axis_color
)
if self.ZAxis in self._enabled_axis:
mb.addCube(
width = self._line_width,
height = self._line_width,
depth = self._line_length,
center = Vector(0, 0, self._handle_position/2),
color = self._z_axis_color
)
#SOLIDMESH -> HANDLES
if self.YAxis in self._enabled_axis:
mb.addPyramid(
width = self._handle_width,
height = self._handle_height,
depth = self._handle_width,
center = Vector(0, self._handle_position, 0),
color = self._y_axis_color
)
if self.XAxis in self._enabled_axis:
mb.addPyramid(
width = self._handle_width,
height = self._handle_height,
depth = self._handle_width,
center = Vector(self._handle_position, 0, 0),
color = self._x_axis_color,
axis = Vector.Unit_Z,
angle = 90
)
if self.ZAxis in self._enabled_axis:
mb.addPyramid(
width = self._handle_width,
height = self._handle_height,
depth = self._handle_width,
center = Vector(0, 0, self._handle_position),
color = self._z_axis_color,
axis = Vector.Unit_X,
angle = -90
)
self.setSolidMesh(mb.build())
mb = MeshBuilder()
#SELECTIONMESH -> LINES
if self.YAxis in self._enabled_axis:
mb.addCube(
width = self._active_line_width,
height = self._active_line_length,
depth = self._active_line_width,
center = Vector(0, self._active_handle_position/2, 0),
color = self._y_axis_color
)
if self.XAxis in self._enabled_axis:
mb.addCube(
width = self._active_line_length,
height = self._active_line_width,
depth = self._active_line_width,
center = Vector(self._active_handle_position/2, 0, 0),
color = self._x_axis_color
)
if self.ZAxis in self._enabled_axis:
mb.addCube(
width = self._active_line_width,
height = self._active_line_width,
depth = self._active_line_length,
center = Vector(0, 0, self._active_handle_position/2),
color = self._z_axis_color
)
#SELECTIONMESH -> HANDLES
mb.addCube(
width = self._active_handle_width,
height = self._active_handle_width,
depth = self._active_handle_width,
center = Vector(0, 0, 0),
color = ToolHandle.AllAxisSelectionColor
)
#.........这里部分代码省略.........
示例4: _rebuild
# 需要导入模块: from UM.Mesh.MeshBuilder import MeshBuilder [as 别名]
# 或者: from UM.Mesh.MeshBuilder.MeshBuilder import addPyramid [as 别名]
def _rebuild(self):
mb = MeshBuilder()
#SOLIDMESH -> LINES
if self.YAxis in self._enabled_axis:
mb.addCube(
width = self._lineWidth,
height = self._lineLength,
depth = self._lineWidth,
center = Vector(0, self._handlePosition/2, 0),
color = ToolHandle.YAxisColor
)
if self.XAxis in self._enabled_axis:
mb.addCube(
width = self._lineLength,
height = self._lineWidth,
depth = self._lineWidth,
center = Vector(self._handlePosition/2, 0, 0),
color = ToolHandle.XAxisColor
)
if self.ZAxis in self._enabled_axis:
mb.addCube(
width = self._lineWidth,
height = self._lineWidth,
depth = self._lineLength,
center = Vector(0, 0, self._handlePosition/2),
color = ToolHandle.ZAxisColor
)
#SOLIDMESH -> HANDLES
if self.YAxis in self._enabled_axis:
mb.addPyramid(
width = self._handleWidth,
height = self._handleHeight,
depth = self._handleWidth,
center = Vector(0, self._handlePosition, 0),
color = ToolHandle.YAxisColor
)
if self.XAxis in self._enabled_axis:
mb.addPyramid(
width = self._handleWidth,
height = self._handleHeight,
depth = self._handleWidth,
center = Vector(self._handlePosition, 0, 0),
color = ToolHandle.XAxisColor,
axis = Vector.Unit_Z,
angle = 90
)
if self.ZAxis in self._enabled_axis:
mb.addPyramid(
width = self._handleWidth,
height = self._handleHeight,
depth = self._handleWidth,
center = Vector(0, 0, self._handlePosition),
color = ToolHandle.ZAxisColor,
axis = Vector.Unit_X,
angle = -90
)
self.setSolidMesh(mb.getData())
mb = MeshBuilder()
#ACTIVEMESH -> LINES
if self.YAxis in self._enabled_axis:
mb.addCube(
width = self._activeLineWidth,
height = self._activeLineLength,
depth = self._activeLineWidth,
center = Vector(0, self._activeHandlePosition/2, 0),
color = ToolHandle.YAxisColor
)
if self.XAxis in self._enabled_axis:
mb.addCube(
width = self._activeLineLength,
height = self._activeLineWidth,
depth = self._activeLineWidth,
center = Vector(self._activeHandlePosition/2, 0, 0),
color = ToolHandle.XAxisColor
)
if self.ZAxis in self._enabled_axis:
mb.addCube(
width = self._activeLineWidth,
height = self._activeLineWidth,
depth = self._activeLineLength,
center = Vector(0, 0, self._activeHandlePosition/2),
color = ToolHandle.ZAxisColor
)
#SELECTIONMESH -> HANDLES
mb.addCube(
width = self._activeHandleWidth,
height = self._activeHandleWidth,
depth = self._activeHandleWidth,
center = Vector(0, 0, 0),
color = ToolHandle.AllAxisColor
)
#.........这里部分代码省略.........
示例5: _rebuild
# 需要导入模块: from UM.Mesh.MeshBuilder import MeshBuilder [as 别名]
# 或者: from UM.Mesh.MeshBuilder.MeshBuilder import addPyramid [as 别名]
def _rebuild(self):
lines = MeshData()
offset = 0
if self.YAxis in self._enabled_axis:
lines.addVertex(0, 0, 0)
lines.addVertex(0, 20, 0)
lines.setVertexColor(offset, ToolHandle.YAxisColor)
lines.setVertexColor(offset + 1, ToolHandle.YAxisColor)
offset += 2
if self.XAxis in self._enabled_axis:
lines.addVertex(0, 0, 0)
lines.addVertex(20, 0, 0)
lines.setVertexColor(offset, ToolHandle.XAxisColor)
lines.setVertexColor(offset + 1, ToolHandle.XAxisColor)
offset += 2
if self.ZAxis in self._enabled_axis:
lines.addVertex(0, 0, 0)
lines.addVertex(0, 0, 20)
lines.setVertexColor(offset, ToolHandle.ZAxisColor)
lines.setVertexColor(offset + 1, ToolHandle.ZAxisColor)
offset += 2
self.setLineMesh(lines)
mb = MeshBuilder()
if self.YAxis in self._enabled_axis:
mb.addPyramid(
width = 2,
height = 4,
depth = 2,
center = Vector(0, 20, 0),
color = ToolHandle.YAxisColor
)
if self.XAxis in self._enabled_axis:
mb.addPyramid(
width = 2,
height = 4,
depth = 2,
center = Vector(20, 0, 0),
color = ToolHandle.XAxisColor,
axis = Vector.Unit_Z,
angle = 90
)
if self.ZAxis in self._enabled_axis:
mb.addPyramid(
width = 2,
height = 4,
depth = 2,
center = Vector(0, 0, 20),
color = ToolHandle.ZAxisColor,
axis = Vector.Unit_X,
angle = -90
)
self.setSolidMesh(mb.getData())
mb = MeshBuilder()
if self.YAxis in self._enabled_axis:
mb.addCube(
width = 4,
height = 20,
depth = 4,
center = Vector(0, 10, 0),
color = ToolHandle.YAxisColor
)
mb.addPyramid(
width = 4,
height = 8,
depth = 4,
center = Vector(0, 20, 0),
color = ToolHandle.YAxisColor
)
if self.XAxis in self._enabled_axis:
mb.addCube(
width = 20,
height = 4,
depth = 4,
center = Vector(10, 0, 0),
color = ToolHandle.XAxisColor
)
mb.addPyramid(
width = 4,
height = 8,
depth = 4,
center = Vector(20, 0, 0),
color = ToolHandle.XAxisColor,
axis = Vector.Unit_Z,
angle = 90
)
#.........这里部分代码省略.........
示例6: __init__
# 需要导入模块: from UM.Mesh.MeshBuilder import MeshBuilder [as 别名]
# 或者: from UM.Mesh.MeshBuilder.MeshBuilder import addPyramid [as 别名]
def __init__(self, parent = None):
super().__init__(parent)
mb = MeshBuilder()
mb.addPyramid(
width = 4,
height = 7,
depth = 4,
center = Vector(0, 10, 0),
color = ToolHandle.YAxisColor
)
mb.addPyramid(
width = 4,
height = 7,
depth = 4,
center = Vector(0, -10, 0),
color = ToolHandle.YAxisColor,
axis = Vector.Unit_X,
angle = 180
)
mb.addPyramid(
width = 4,
height = 7,
depth = 4,
center = Vector(10, 0, 0),
color = ToolHandle.XAxisColor,
axis = Vector.Unit_Z,
angle = 90
)
mb.addPyramid(
width = 4,
height = 7,
depth = 4,
center = Vector(-10, 0, 0),
color = ToolHandle.XAxisColor,
axis = Vector.Unit_Z,
angle = -90
)
mb.addPyramid(
width = 4,
height = 7,
depth = 4,
center = Vector(0, 0, -10),
color = ToolHandle.ZAxisColor,
axis = Vector.Unit_X,
angle = 90
)
mb.addPyramid(
width = 4,
height = 7,
depth = 4,
center = Vector(0, 0, 10),
color = ToolHandle.ZAxisColor,
axis = Vector.Unit_X,
angle = -90
)
self.setSolidMesh(mb.getData())
self.setSelectionMesh(mb.getData())
示例7: buildMesh
# 需要导入模块: from UM.Mesh.MeshBuilder import MeshBuilder [as 别名]
# 或者: from UM.Mesh.MeshBuilder.MeshBuilder import addPyramid [as 别名]
def buildMesh(self):
mb = MeshBuilder()
#SOLIDMESH
mb.addPyramid(
width = self._handle_width,
height = self._handle_height,
depth = self._handle_width,
center = Vector(0, self._handle_position, 0),
color = self._y_axis_color
)
mb.addPyramid(
width = self._handle_width,
height = self._handle_height,
depth = self._handle_width,
center = Vector(0, -self._handle_position, 0),
color = self._y_axis_color,
axis = Vector.Unit_X,
angle = 180
)
mb.addPyramid(
width = self._handle_width,
height = self._handle_height,
depth = self._handle_width,
center = Vector(self._handle_position, 0, 0),
color = self._x_axis_color,
axis = Vector.Unit_Z,
angle = 90
)
mb.addPyramid(
width = self._handle_width,
height = self._handle_height,
depth = self._handle_width,
center = Vector(-self._handle_position, 0, 0),
color = self._x_axis_color,
axis = Vector.Unit_Z,
angle = -90
)
mb.addPyramid(
width = self._handle_width,
height = self._handle_height,
depth = self._handle_width,
center = Vector(0, 0, -self._handle_position),
color = self._z_axis_color,
axis = Vector.Unit_X,
angle = 90
)
mb.addPyramid(
width = self._handle_width,
height = self._handle_height,
depth = self._handle_width,
center = Vector(0, 0, self._handle_position),
color = self._z_axis_color,
axis = Vector.Unit_X,
angle = -90
)
self.setSolidMesh(mb.build())
#SELECTIONMESH
mb.addPyramid(
width = self._handle_width,
height = self._handle_height,
depth = self._handle_width,
center = Vector(0, self._handle_position, 0),
color = ToolHandle.YAxisSelectionColor
)
mb.addPyramid(
width = self._handle_width,
height = self._handle_height,
depth = self._handle_width,
center = Vector(0, -self._handle_position, 0),
color = ToolHandle.YAxisSelectionColor,
axis = Vector.Unit_X,
angle = 180
)
mb.addPyramid(
width = self._handle_width,
height = self._handle_height,
depth = self._handle_width,
center = Vector(self._handle_position, 0, 0),
color = ToolHandle.XAxisSelectionColor,
axis = Vector.Unit_Z,
angle = 90
)
mb.addPyramid(
width = self._handle_width,
height = self._handle_height,
depth = self._handle_width,
center = Vector(-self._handle_position, 0, 0),
color = ToolHandle.XAxisSelectionColor,
axis = Vector.Unit_Z,
#.........这里部分代码省略.........