virtual ~SketcherPrs_SymbolPrs();
- //! Method which clear all selected owners belonging
- //! to this selectable object ( for fast presentation draw )
- //Standard_EXPORT virtual void ClearSelected();
-
-
//! Method which draws selected owners ( for fast presentation draw )
Standard_EXPORT virtual void HilightSelected(const Handle(PrsMgr_PresentationManager3d)& thePM,
const SelectMgr_SequenceOfOwner& theOwners);
/// Return array of points where symbols will be placed
const Handle(Graphic3d_ArrayOfPoints)& pointsArray() const { return myPntArray; }
+ /// Set state of the presentation, in case of conflicting state, the icon of the presentation is
+ /// visualized in error color. The state is stored in an internal field, so should be changed when
+ /// constraint become not conflicting
+ /// \param theConflicting a state
+ /// \param theColor a color for conflicting object
+ Standard_EXPORT void SetConflictingConstraint(const bool& theConflicting, const std::vector<int>& theColor);
+
/// Render of the presentation
/// \param theWorkspace is OpenGl workspace
void Render(const Handle(OpenGl_Workspace)& theWorkspace) const;
/// \param theContext is an OpenGL context
void Release (OpenGl_Context* theContext);
+ /// Add a bounding box of the presentation to common bounding box
+ /// \param theBndBox the common bounding box to update
Standard_EXPORT virtual void BoundingBox (Bnd_Box& theBndBox) Standard_OVERRIDE;
DEFINE_STANDARD_RTTI(SketcherPrs_SymbolPrs)
const Handle(Prs3d_Presentation)& thePresentation, const Standard_Integer theMode = 0);
/// Redefinition of virtual function
+ /// \param aSelection selection
+ /// \param aMode compute mode
Standard_EXPORT virtual void ComputeSelection(const Handle(SelectMgr_Selection)& aSelection,
const Standard_Integer aMode);
/// Update myPntArray according to presentation positions
/// \return true in case of success
- virtual bool updatePoints(double theStep) const { return true; }
+ virtual bool updateIfReadyToDisplay(double theStep) const { return true; }
/// Draw a shape into the given presentation scene
/// \param theShape the shape to draw
mutable Handle(OpenGl_VertexBuffer) myVboAttribs;
Select3D_EntitySequence mySPoints;
+
+ bool myIsConflicting; /// state if the presentation is visualized in error state
+ Handle(Image_AlienPixMap) myErrorIcon;
+ Handle(Graphic3d_MarkerImage) myErrorImage;
};
#endif
\ No newline at end of file