Example #1
0
void ScaleManipulator::render (Renderer& renderer, const VolumeTest& volume, const Matrix4& pivot2world)
{
    m_pivot.update(pivot2world, volume.GetModelview(), volume.GetProjection(), volume.GetViewport());

    // temp hack
    UpdateColours();

    renderer.addRenderable(m_arrow_x, m_pivot.m_worldSpace);
    renderer.addRenderable(m_arrow_y, m_pivot.m_worldSpace);
    renderer.addRenderable(m_arrow_z, m_pivot.m_worldSpace);

    renderer.addRenderable(m_quad_screen, m_pivot.m_viewpointSpace);
}
void TranslateManipulator::render(RenderableCollector& collector, const VolumeTest& volume, const Matrix4& pivot2world) {
    _pivot.update(pivot2world, volume.GetModelview(), volume.GetProjection(), volume.GetViewport());

    // temp hack
    UpdateColours();

    Vector3 x = _pivot._worldSpace.x().getVector3().getNormalised();
    bool show_x = manipulator_show_axis(_pivot, x);

    Vector3 y = _pivot._worldSpace.y().getVector3().getNormalised();
    bool show_y = manipulator_show_axis(_pivot, y);

    Vector3 z = _pivot._worldSpace.z().getVector3().getNormalised();
    bool show_z = manipulator_show_axis(_pivot, z);

    collector.SetState(_stateWire, RenderableCollector::eWireframeOnly);
    collector.SetState(_stateWire, RenderableCollector::eFullMaterials);

    if(show_x)
    {
      collector.addRenderable(_arrowX, _pivot._worldSpace);
    }
    if(show_y)
    {
      collector.addRenderable(_arrowY, _pivot._worldSpace);
    }
    if(show_z)
    {
      collector.addRenderable(_arrowZ, _pivot._worldSpace);
    }

    collector.addRenderable(_quadScreen, _pivot._viewplaneSpace);

    collector.SetState(_stateFill, RenderableCollector::eWireframeOnly);
    collector.SetState(_stateFill, RenderableCollector::eFullMaterials);

    if(show_x)
    {
      collector.addRenderable(_arrowHeadX, _pivot._worldSpace);
    }
    if(show_y)
    {
      collector.addRenderable(_arrowHeadY, _pivot._worldSpace);
    }
    if(show_z)
    {
      collector.addRenderable(_arrowHeadZ, _pivot._worldSpace);
    }
}
Example #3
0
void TranslateManipulator::render (Renderer& renderer, const VolumeTest& volume, const Matrix4& pivot2world)
{
    m_pivot.update(pivot2world, volume.GetModelview(), volume.GetProjection(), volume.GetViewport());

    // temp hack
    UpdateColours();

    Vector3 x = m_pivot.m_worldSpace.x().getVector3().getNormalised();
    bool show_x = manipulator_show_axis(m_pivot, x);

    Vector3 y = m_pivot.m_worldSpace.y().getVector3().getNormalised();
    bool show_y = manipulator_show_axis(m_pivot, y);

    Vector3 z = m_pivot.m_worldSpace.z().getVector3().getNormalised();
    bool show_z = manipulator_show_axis(m_pivot, z);

    renderer.SetState(m_state_wire, Renderer::eWireframeOnly);
    renderer.SetState(m_state_wire, Renderer::eFullMaterials);

    if (show_x) {
        renderer.addRenderable(m_arrow_x, m_pivot.m_worldSpace);
    }
    if (show_y) {
        renderer.addRenderable(m_arrow_y, m_pivot.m_worldSpace);
    }
    if (show_z) {
        renderer.addRenderable(m_arrow_z, m_pivot.m_worldSpace);
    }

    renderer.addRenderable(m_quad_screen, m_pivot.m_viewplaneSpace);

    renderer.SetState(m_state_fill, Renderer::eWireframeOnly);
    renderer.SetState(m_state_fill, Renderer::eFullMaterials);

    if (show_x) {
        renderer.addRenderable(m_arrow_head_x, m_pivot.m_worldSpace);
    }
    if (show_y) {
        renderer.addRenderable(m_arrow_head_y, m_pivot.m_worldSpace);
    }
    if (show_z) {
        renderer.addRenderable(m_arrow_head_z, m_pivot.m_worldSpace);
    }
}
Example #4
0
void RotateManipulator::render (Renderer& renderer, const VolumeTest& volume, const Matrix4& pivot2world)
{
    m_pivot.update(pivot2world, volume.GetModelview(), volume.GetProjection(), volume.GetViewport());
    updateCircleTransforms();

    // temp hack
    UpdateColours();

    renderer.SetState(m_state_outer, Renderer::eWireframeOnly);
    renderer.SetState(m_state_outer, Renderer::eFullMaterials);

    renderer.addRenderable(m_circle_screen, m_pivot.m_viewpointSpace);
    renderer.addRenderable(m_circle_sphere, m_pivot.m_viewpointSpace);

    if (m_circle_x_visible) {
        renderer.addRenderable(m_circle_x, m_local2world_x);
    }
    if (m_circle_y_visible) {
        renderer.addRenderable(m_circle_y, m_local2world_y);
    }
    if (m_circle_z_visible) {
        renderer.addRenderable(m_circle_z, m_local2world_z);
    }
}