@@ -75,6 +75,8 @@ void ShowFieldModule::setStateDefaults()
7575 state->setValue (DefaultMeshColor, ColorRGB (1.0 , 1.0 , 1.0 ).toString ());
7676 state->setValue (NodeAsPoints, true );
7777 state->setValue (NodeAsSpheres, false );
78+ state->setValue (EdgesAsLines, true );
79+ state->setValue (EdgesAsCylinders, false );
7880 state->setValue (FaceTransparency, 0 .75f );
7981 transparencyValue_ = 0 .75f ;
8082
@@ -128,6 +130,8 @@ RenderState ShowFieldModule::getEdgeRenderState(
128130 renState.set (RenderState::IS_ON, state->getValue (ShowFieldModule::ShowEdges).toBool ());
129131 renState.set (RenderState::USE_TRANSPARENCY, state->getValue (ShowFieldModule::EdgeTransparency).toBool ());
130132
133+ renState.set (RenderState::USE_CYLINDER, state->getValue (ShowFieldModule::EdgesAsCylinders).toBool ());
134+
131135 renState.defaultColor = ColorRGB (state->getValue (ShowFieldModule::DefaultMeshColor).toString ());
132136
133137 if (colorMap)
@@ -1571,28 +1575,28 @@ void ShowFieldModule::renderEdges(
15711575 ColorRGB defaultColor = state.defaultColor ;
15721576
15731577 // / \todo Use cylinders...
1574- // if (state.get(RenderState::USE_SPHERE ))
1575- // {
1576- // shader = "Shaders/DirPhong";
1577- // uniforms.push_back(GeometryObject::SpireSubPass::Uniform("uAmbientColor",
1578- // glm::vec4(0.1f, 0.1f, 0.1f, 1.0f)));
1579- // uniforms.push_back(GeometryObject::SpireSubPass::Uniform("uSpecularColor",
1580- // glm::vec4(1.0f, 1.0f, 1.0f, 1.0f)));
1581- // uniforms.push_back(GeometryObject::SpireSubPass::Uniform("uSpecularPower", 32.0f));
1582- //
1583- // if (state.get(RenderState::USE_TRANSPARENCY))
1584- // {
1585- // uniforms.push_back(GeometryObject::SpireSubPass::Uniform(
1586- // "uDiffuseColor", glm::vec4(defaultColor.r(), defaultColor.g(), defaultColor.b(), 0.7f)));
1587- // }
1588- // else
1589- // {
1590- // uniforms.push_back(GeometryObject::SpireSubPass::Uniform(
1591- // "uDiffuseColor", glm::vec4(defaultColor.r(), defaultColor.g(), defaultColor.b(), 1.0f)));
1592- // }
1593- // }
1594- // else
1595- // {
1578+ if (state.get (RenderState::USE_CYLINDER ))
1579+ {
1580+ shader = " Shaders/DirPhong" ;
1581+ uniforms.push_back (GeometryObject::SpireSubPass::Uniform (" uAmbientColor" ,
1582+ glm::vec4 (0 .1f , 0 .1f , 0 .1f , 1 .0f )));
1583+ uniforms.push_back (GeometryObject::SpireSubPass::Uniform (" uSpecularColor" ,
1584+ glm::vec4 (1 .0f , 1 .0f , 1 .0f , 1 .0f )));
1585+ uniforms.push_back (GeometryObject::SpireSubPass::Uniform (" uSpecularPower" , 32 .0f ));
1586+
1587+ if (state.get (RenderState::USE_TRANSPARENCY))
1588+ {
1589+ uniforms.push_back (GeometryObject::SpireSubPass::Uniform (
1590+ " uDiffuseColor" , glm::vec4 (defaultColor.r (), defaultColor.g (), defaultColor.b (), 0 .7f )));
1591+ }
1592+ else
1593+ {
1594+ uniforms.push_back (GeometryObject::SpireSubPass::Uniform (
1595+ " uDiffuseColor" , glm::vec4 (defaultColor.r (), defaultColor.g (), defaultColor.b (), 1 .0f )));
1596+ }
1597+ }
1598+ else
1599+ {
15961600 shader = " Shaders/UniformColor" ;
15971601
15981602 if (state.get (RenderState::USE_TRANSPARENCY))
@@ -1606,15 +1610,15 @@ void ShowFieldModule::renderEdges(
16061610 uniforms.push_back (GeometryObject::SpireSubPass::Uniform (
16071611 " uColor" , glm::vec4 (defaultColor.r (), defaultColor.g (), defaultColor.b (), 1 .0f )));
16081612 }
1609- // }
1613+ }
16101614 }
16111615
16121616 // / \todo Use cylinders...
1613- // if (state.get(RenderState::USE_SPHERE ))
1614- // {
1615- // renderType = GeometryObject::RENDER_RLIST_SPHERE ;
1616- // vboOnGPU = false;
1617- // }
1617+ if (state.get (RenderState::USE_CYLINDER ))
1618+ {
1619+ renderType = GeometryObject::RENDER_RLIST_CYLINDER ;
1620+ vboOnGPU = false ;
1621+ }
16181622
16191623 GeometryObject::SpireVBO geomVBO = GeometryObject::SpireVBO (vboName, attribs, vboBufferSPtr,
16201624 numVBOElements, mesh->get_bounding_box (), vboOnGPU);
@@ -1665,6 +1669,8 @@ AlgorithmParameterName ShowFieldModule::FaceTransparency("FaceTransparency");
16651669AlgorithmParameterName ShowFieldModule::FaceInvertNormals (" FaceInvertNormals" );
16661670AlgorithmParameterName ShowFieldModule::NodeAsPoints (" NodeAsPoints" );
16671671AlgorithmParameterName ShowFieldModule::NodeAsSpheres (" NodeAsSpheres" );
1672+ AlgorithmParameterName ShowFieldModule::EdgesAsLines (" EdgesAsLines" );
1673+ AlgorithmParameterName ShowFieldModule::EdgesAsCylinders (" EdgesAsCylinders" );
16681674AlgorithmParameterName ShowFieldModule::DefaultMeshColor (" DefaultMeshColor" );
16691675AlgorithmParameterName ShowFieldModule::FaceTransparencyValue (" FaceTransparencyValue" );
16701676
0 commit comments