1 #ifndef COIN_SONODEVISUALIZE_H
2 #define COIN_SONODEVISUALIZE_H
27 #include <Inventor/nodekits/SoBaseKit.h>
28 #include <Inventor/nodes/SoSeparator.h>
29 #include <Inventor/lists/SoNodeList.h>
30 #include <Inventor/tools/SbPimplPtr.h>
31 #include <Inventor/SbVec2s.h>
32 #include <Inventor/SbVec3f.h>
41 class COIN_DLL_API SoNodeVisualize :
public SoBaseKit
45 SO_KIT_HEADER(SoNodeVisualize);
46 SO_KIT_CATALOG_ENTRY_HEADER(topSeparator);
47 SO_KIT_CATALOG_ENTRY_HEADER(childrenVisible);
48 SO_KIT_CATALOG_ENTRY_HEADER(color);
49 SO_KIT_CATALOG_ENTRY_HEADER(texture);
50 SO_KIT_CATALOG_ENTRY_HEADER(textureTransform);
51 SO_KIT_CATALOG_ENTRY_HEADER(shape);
52 SO_KIT_CATALOG_ENTRY_HEADER(rotSwitch);
53 SO_KIT_CATALOG_ENTRY_HEADER(rotation);
54 SO_KIT_CATALOG_ENTRY_HEADER(childGeometry);
55 SO_KIT_CATALOG_ENTRY_HEADER(translation);
56 SO_KIT_CATALOG_ENTRY_HEADER(lines);
57 SO_KIT_CATALOG_ENTRY_HEADER(lineSep);
60 static void initClass(
void);
61 static void cleanClass(
void);
63 SoNodeVisualize * visualize(
SoNode *);
64 static SoNodeVisualize* visualizeTree(
SoNode * node,
int depth=-1);
66 void setAlternate(
bool alternating=
true);
67 bool nodeHasChildren();
68 unsigned int nodeNumChildren();
69 bool isAlternating()
const;
76 SoNodeVisualize(
void);
77 virtual ~SoNodeVisualize();
80 void setupChildCatalog(
SoNode * node,
int depth);
81 void visualizeSubTree(
SoNode * node,
int depth=-1);
84 SoNodeVisualize* getSoNodeVisualizeRoot();
85 void internalAlternating(
bool alternating,
int direction);
90 SbPimplPtr<class SoNodeVisualizeP> pimpl;
93 SoNodeVisualize(
const SoNodeVisualize &);
94 SoNodeVisualize & operator = (
const SoNodeVisualize &);
98 SoNodeVisualize *parent;
103 #endif // !COIN_SONODEVISUALIZE_H