#include <Prs3d_PointAspect.hxx>
#include <Prs3d_IsoAspect.hxx>
#include <TopoDS_Builder.hxx>
+#include <TopoDS.hxx>
#include <SelectMgr_SequenceOfOwner.hxx>
#include <SelectMgr_EntityOwner.hxx>
#include <SelectMgr_SelectionManager.hxx>
#include <AIS_InteractiveContext.hxx>
#include <AIS_Selection.hxx>
#include <TColStd_ListIteratorOfListOfInteger.hxx>
+#include <Graphic3d_AspectMarker3d.hxx>
IMPLEMENT_STANDARD_HANDLE(ModuleBase_BRepOwner, StdSelect_BRepOwner);
IMPLEMENT_STANDARD_RTTIEXT(ModuleBase_BRepOwner, StdSelect_BRepOwner);
// Activate individual repaintng if this is a part of compsolid
ResultCompSolidPtr aCompSolid = ModelAPI_Tools::compSolidOwner(myResult);
SetAutoHilight(aCompSolid.get() == NULL);
+
+ ModuleBase_Tools::setPointBallHighlighting(this);
}
void ModuleBase_ResultPrs::Compute(const Handle(PrsMgr_PresentationManager3d)& thePresentationManager,
#include <Config_PropManager.h>
#include <Config_Translator.h>
+#include <Prs3d_PointAspect.hxx>
+#include <Graphic3d_AspectMarker3d.hxx>
+
#include <QWidget>
#include <QLayout>
#include <QPainter>
}
}
+void setPointBallHighlighting(AIS_Shape* theAIS)
+{
+ Handle(Prs3d_Drawer) aDrawer = theAIS->HilightAttributes();
+ if (aDrawer->HasOwnPointAspect()) {
+ Handle(Prs3d_PointAspect) aPntAspect = aDrawer->PointAspect();
+ aPntAspect->Aspect()->SetType(Aspect_TOM_BALL);
+ aDrawer->SetPointAspect(aPntAspect);
+ theAIS->SetHilightAttributes(aDrawer);
+ }
+}
+
} // namespace ModuleBase_Tools
#include <TopAbs_ShapeEnum.hxx>
#include <TopoDS_Shape.hxx>
#include <Prs3d_Drawer.hxx>
+#include <AIS_Shape.hxx>
#include <Quantity_Color.hxx>
/// \param theParams a list of parameters (can be empty)
void MODULEBASE_EXPORT translate(const std::string& theContext, std::string& theMessage);
+/// Set Highlighting of points as a Ball shape
+/// \param theAIS - the presentation
+void MODULEBASE_EXPORT setPointBallHighlighting(AIS_Shape* theAIS);
+
}
#endif
#include <StdSelect_BRepSelectionTool.hxx>
#include <Graphic3d_AspectLine3d.hxx>
#include <Prs3d_LineAspect.hxx>
+#include <Graphic3d_AspectMarker3d.hxx>
#define DEBUG_WIRE
// Activate individual repaintng if this is a part of compsolid
ResultCompSolidPtr aCompSolid = ModelAPI_Tools::compSolidOwner(myResult);
SetAutoHilight(aCompSolid.get() == NULL);
+
+ ModuleBase_Tools::setPointBallHighlighting(this);
}
void PartSet_ResultSketchPrs::Compute(const Handle(PrsMgr_PresentationManager3d)& thePresentationManager,
Handle(AIS_InteractiveObject) anAISPrs = myWorkshop->module()->createPresentation(aResult);
if (anAISPrs.IsNull())
anAISPrs = new ModuleBase_ResultPrs(aResult);
+ else {
+ Handle(AIS_Shape) aShapePrs = Handle(AIS_Shape)::DownCast(anAISPrs);
+ if (!aShapePrs.IsNull())
+ ModuleBase_Tools::setPointBallHighlighting((AIS_Shape*) aShapePrs.Access());
+ }
anAIS->setImpl(new Handle(AIS_InteractiveObject)(anAISPrs));
//anAIS->createShape(aShapePtr);
isShading = true;