//=======================================================================
void AIS_Manipulator::SetPart (const AIS_ManipulatorMode theMode, const Standard_Boolean theIsEnabled)
{
- for (Standard_Integer anIt = 0; anIt < 4; ++anIt)
+ for (Standard_Integer anIt = 0; anIt < 3; ++anIt)
{
SetPart (anIt, theMode, theIsEnabled);
}
aCmd.AddOption ("followDragging", "... {0|1} - set following dragging transform");
aCmd.AddOption ("gap", "... value - set gap between sub-parts");
aCmd.AddOption ("part", "... axis mode {0|1} - set visual part");
+ aCmd.AddOption ("parts", "... all axes mode {0|1} - set visual part");
aCmd.AddOption ("pos", "... x y z [nx ny nz [xx xy xz]] - set position of manipulator");
aCmd.AddOption ("size", "... size - set size of manipulator");
aCmd.AddOption ("zoomable", "... {0|1} - set zoom persistence");
aManipulator->SetPart (anAxis, static_cast<AIS_ManipulatorMode> (aMode), aOnOff);
}
+ if (aCmd.HasOption("parts", 2, Standard_True))
+ {
+ Standard_Integer aMode = aCmd.ArgInt("parts", 0);
+ Standard_Boolean aOnOff = aCmd.ArgBool("parts", 1);
+ if (aMode < 1 || aMode > 4)
+ {
+ std::cerr << theArgVec[0] << " error: mode value should be in range [1, 4].\n";
+ return 1;
+ }
+
+ aManipulator->SetPart(static_cast<AIS_ManipulatorMode>(aMode), aOnOff);
+ }
if (aCmd.HasOption ("pos", 3, Standard_True))
{
gp_Pnt aLocation = aCmd.ArgPnt ("pos", 0);
"\n '-followDragging {0|1}' - set following dragging transform"
"\n '-gap value' - set gap between sub-parts"
"\n '-part axis mode {0|1}' - set visual part"
+ "\n '-parts axis mode {0|1}' - set visual part"
"\n '-pos x y z [nx ny nz [xx xy xz]' - set position of manipulator"
"\n '-size value' - set size of manipulator"
"\n '-zoomable {0|1}' - set zoom persistence",