I create a gnomon as you told me and it works.
But I find that SoROIManip is not ok after I created the gnomon.
I create a subvolume,in order to resize and move it,I use SoROIManip.
Code:
SoROIManip* g_ROIManip = new SoROIManip();
g_ROIManip->box.setValue(SbVec3i32(0,0,0), SbVec3i32(mg_volData->data.getSize()[0],mg_volData->data.getSize()[1],mg_volData->data.getSize()[2]) );
g_ROIManip->subVolume.setValue( SbVec3i32(mg_volData->data.getSize()[0]/4,mg_volData->data.getSize()[1]/4,mg_volData->data.getSize()[2]/4), SbVec3i32(mg_volData->data.getSize()[0]*3/4,mg_volData->data.getSize()[1]*3/4,mg_volData->data.getSize()[2]*3/4) );
g_ROIManip->constrained = TRUE;
g_ROIManip->boxOn = false;
see as ok.png.
I create the gnomon with following code:
Code:
SoSeparator *pGnomon = makeGnomon();
ldmnode->addChild( pGnomon );
and the ROIManip location is not normal (as notok.jpg)