]> SALOME platform Git repositories - modules/shaper.git/blobdiff - src/SketcherPrs/SketcherPrs_SymbolPrs.h
Salome HOME
Prepare version 1.2.1: quick fix for iteration 2 release
[modules/shaper.git] / src / SketcherPrs / SketcherPrs_SymbolPrs.h
index 446cedabcd6fb9ad28a0d6c11bf2dadae315579b..d2202bacf6f84cbb6f3fa0838e41fde18d73b291 100644 (file)
@@ -9,6 +9,7 @@
 
 #include "SketcherPrs_SensitivePoint.h"
 #include <ModelAPI_Feature.h>
+#include <ModelAPI_AttributeRefList.h>
 
 #include <AIS_InteractiveObject.hxx>
 #include <GeomAPI_Ax3.h>
@@ -57,15 +58,21 @@ public:
   Standard_EXPORT virtual void HilightOwnerWithColor(const Handle(PrsMgr_PresentationManager3d)& thePM, 
                                                      const Quantity_NameOfColor theColor, const Handle(SelectMgr_EntityOwner)& theOwner);
 
+  /// Returns sketcher plane
   Standard_EXPORT std::shared_ptr<GeomAPI_Ax3> plane() const { return myPlane; }
 
+  /// Returns feature object
   Standard_EXPORT ModelAPI_Feature* feature() const { return myConstraint; }
 
-
+  /// Return array of points where symbols will be placed
   Handle(Graphic3d_ArrayOfPoints) pointsArray() const { return myPntArray; }
 
+  /// Render of the presentation
+  /// \param theWorkspace is OpenGl workspace
   void Render(const Handle(OpenGl_Workspace)& theWorkspace) const;
 
+  /// Release used OpenGl resources
+  /// \param theContext is an OpenGL context
   void Release (OpenGl_Context* theContext);
 
   DEFINE_STANDARD_RTTI(SketcherPrs_SymbolPrs)
@@ -103,6 +110,18 @@ protected:
   /// \return true in case of success
   virtual bool updatePoints(double theStep) const { return true; }
 
+  /// Draw a shape into the given presentation scene
+  /// \param theShape the shape to draw
+  /// \param thePrs the presentation scene
+  void drawShape(const std::shared_ptr<GeomAPI_Shape>& theShape, 
+    const Handle(Prs3d_Presentation)& thePrs) const;
+
+  /// Draw a list of shapes stored in a RefListAttribute
+  /// \param theListAttr the attribute of reference3s list
+  /// \param thePrs the presentation scene
+  void drawListOfShapes(const std::shared_ptr<ModelAPI_AttributeRefList>& theListAttr, 
+                        const Handle(Prs3d_Presentation)& thePrs) const;
+
 protected:
   /// Constraint feature
   ModelAPI_Feature* myConstraint;
@@ -116,6 +135,7 @@ protected:
   /// Array of symbols positions
   mutable Handle(Graphic3d_ArrayOfPoints) myPntArray;
 
+  /// An owner object of the presentation
   Handle(SelectMgr_EntityOwner) myOwner;
 
 private: