44    clusterRoot = 
new SoSeparator();
 
   47    SoSeparator *sep1 = 
new SoSeparator();
 
   48    clusterRoot->addChild(sep1);
 
   50    soPlaneIntersectionSwitch = 
new SoSwitch();
 
   51    sep1->addChild(soPlaneIntersectionSwitch);
 
   53    soPlaneIntersectionTranslation = 
new SoTranslation();
 
   54    soPlaneIntersectionSwitch->addChild(soPlaneIntersectionTranslation);
 
   56    soPlaneIntersectionColorSwitch = 
new SoSwitch();
 
   57    soPlaneIntersectionSwitch->addChild(soPlaneIntersectionColorSwitch);
 
   59    soPlaneIntersectionBaseColor = 
new SoBaseColor();
 
   60    soPlaneIntersectionColorSwitch->addChild(soPlaneIntersectionBaseColor);
 
   62    soPlaneIntersectionSphere = 
new SoSphere();
 
   63    soPlaneIntersectionSwitch->addChild(soPlaneIntersectionSphere);
 
   67    SoSeparator *sep2 = 
new SoSeparator();
 
   68    clusterRoot->addChild(sep2);
 
   70    soCenterOfGravitySwitch = 
new SoSwitch();
 
   71    sep2->addChild(soCenterOfGravitySwitch);
 
   73    soCenterOfGravityTranslation = 
new SoTranslation();
 
   74    soCenterOfGravitySwitch->addChild(soCenterOfGravityTranslation);
 
   76    soCenterOfGravityColorSwitch = 
new SoSwitch();
 
   77    soCenterOfGravitySwitch->addChild(soCenterOfGravityColorSwitch);
 
   79    soCenterOfGravityBaseColor = 
new SoBaseColor();
 
   80    soCenterOfGravityColorSwitch->addChild(soCenterOfGravityBaseColor);
 
   82    soCenterOfGravitySphere = 
new SoSphere();
 
   83    soCenterOfGravitySwitch->addChild(soCenterOfGravitySphere);
 
   87    clusterRoot->addChild(soCenterOfGravityColorSwitch);
 
   89    SoSeparator *sep3 = 
new SoSeparator();
 
   90    clusterRoot->addChild(sep3);
 
   92    for (
size_t c=0; c < NumOrientationLines; ++c){
 
   93      soClusterOrientationLineSwitch[c] = 
new SoSwitch();
 
   94      sep3->addChild(soClusterOrientationLineSwitch[c]);
 
   96      soVertexProperty[c] = 
new SoVertexProperty(); 
 
   97      soClusterOrientationLineSwitch[c]->addChild(soVertexProperty[c]);
 
   99      soLineSet[c] = 
new SoLineSet(); 
 
  100      soClusterOrientationLineSwitch[c]->addChild(soLineSet[c]);
 
  104    SoSeparator *sep4 = 
new SoSeparator();
 
  105    clusterRoot->addChild(sep4);
 
  107    soDrawStyleClusterToPlane = 
new SoDrawStyle();
 
  108    sep4->addChild(soDrawStyleClusterToPlane);
 
  109    soDrawStyleClusterToPlane->linePattern.setValue(
static_cast<MLuint16>(0x1111));
 
  111    soClusterToPlaneIntersectionLineSwitch = 
new SoSwitch();
 
  112    sep4->addChild(soClusterToPlaneIntersectionLineSwitch);
 
  114    soVertexPropertyClusterToPlane = 
new SoVertexProperty(); 
 
  115    soClusterToPlaneIntersectionLineSwitch->addChild(soVertexPropertyClusterToPlane);
 
  117    soLineSetClusterToPlane = 
new SoLineSet(); 
 
  118    soClusterToPlaneIntersectionLineSwitch->addChild(soLineSetClusterToPlane);