Gui: Scene inspector improvements (#18781)

* Improve naming for root scene graph switch/separator nodes.

* Improve scene graph inspector.

This commit improves the scene graph inspector by improving the UI
layout and displaying information in a more human-readable way.

Instead of having a main generic string column for all node-specific
data, introduce specific columns for node name, memory address and data.

Better visualization was also added for `SoDrawStyle`, `SoPickStyle`
and `SoCoordinate3` node types.
This commit is contained in:
João Matos
2025-01-14 03:38:41 +00:00
committed by GitHub
parent 0213b4fc6c
commit 23a05bb250
8 changed files with 192 additions and 39 deletions

View File

@@ -49,19 +49,22 @@ View3DInventorSelection::View3DInventorSelection(SoFCUnifiedSelection* root)
pcGroupOnTop = new SoSeparator;
pcGroupOnTop->ref();
pcGroupOnTop->setName("GroupOnTop");
root->addChild(pcGroupOnTop);
auto pcGroupOnTopPickStyle = new SoPickStyle;
pcGroupOnTopPickStyle->style = SoPickStyle::UNPICKABLE;
pcGroupOnTopPickStyle->setOverride(true);
pcGroupOnTopPickStyle->setName("GroupOnTopPickStyle");
pcGroupOnTop->addChild(pcGroupOnTopPickStyle);
coin_setenv("COIN_SEPARATE_DIFFUSE_TRANSPARENCY_OVERRIDE", "1", TRUE);
auto pcOnTopMaterial = new SoMaterial;
pcOnTopMaterial->transparency = 0.5;
pcOnTopMaterial->diffuseColor.setIgnored(true);
pcOnTopMaterial->setOverride(true);
pcGroupOnTop->addChild(pcOnTopMaterial);
auto pcGroupOnTopMaterial = new SoMaterial;
pcGroupOnTopMaterial->transparency = 0.5;
pcGroupOnTopMaterial->diffuseColor.setIgnored(true);
pcGroupOnTopMaterial->setOverride(true);
pcGroupOnTopMaterial->setName("GroupOnTopMaterial");
pcGroupOnTop->addChild(pcGroupOnTopMaterial);
{
auto selRoot = new SoFCSelectionRoot;