-void PartSet_WidgetSketchLabel::erasePreviewPlanes()
-{
- if (myPreviewDisplayed) {
- XGUI_Displayer* aDisp = workshop()->displayer();
- aDisp->eraseAIS(myYZPlane, false);
- aDisp->eraseAIS(myXZPlane, false);
- aDisp->eraseAIS(myXYPlane, false);
- myPreviewDisplayed = false;
- }
-}
-
-void PartSet_WidgetSketchLabel::showPreviewPlanes()
-{
- if (myPreviewDisplayed)
- return;
-
- if (!myYZPlane) { // If planes are not created
- // Create Preview
- std::shared_ptr<GeomAPI_Pnt> anOrigin(new GeomAPI_Pnt(0, 0, 0));
- std::shared_ptr<GeomAPI_Dir> aYZDir(new GeomAPI_Dir(1, 0, 0));
- // -1, not 1 for correct internal sketch coords (issue 898)
- std::shared_ptr<GeomAPI_Dir> aXZDir(new GeomAPI_Dir(0, -1, 0));
- std::shared_ptr<GeomAPI_Dir> aXYDir(new GeomAPI_Dir(0, 0, 1));
-
- std::vector<int> aYZRGB, aXZRGB, aXYRGB;
- aYZRGB = Config_PropManager::color("Visualization", "yz_plane_color",
- YZ_PLANE_COLOR);
- aXZRGB = Config_PropManager::color("Visualization", "xz_plane_color",
- XZ_PLANE_COLOR);
- aXYRGB = Config_PropManager::color("Visualization", "xy_plane_color",
- XY_PLANE_COLOR);
- int aR[] = {aYZRGB[0], aYZRGB[1], aYZRGB[2]};
- int aG[] = {aXZRGB[0], aXZRGB[1], aXZRGB[2]};
- int aB[] = {aXYRGB[0], aXYRGB[1], aXYRGB[2]};
-
- myYZPlane = createPreviewPlane(anOrigin, aYZDir, aR);
- myXZPlane = createPreviewPlane(anOrigin, aXZDir, aG);
- myXYPlane = createPreviewPlane(anOrigin, aXYDir, aB);
- }
- XGUI_Displayer* aDisp = workshop()->displayer();
- aDisp->displayAIS(myYZPlane, true, false);
- aDisp->displayAIS(myXZPlane, true, false);
- aDisp->displayAIS(myXYPlane, true, false);
- myPreviewDisplayed = true;
-}
-