Salome HOME
projects
/
modules
/
shaper.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Issue #1366: "Partition" feature now modified to "Generalized Partition"
[modules/shaper.git]
/
src
/
SketchPlugin
/
SketchPlugin_ConstraintDistance.h
diff --git
a/src/SketchPlugin/SketchPlugin_ConstraintDistance.h
b/src/SketchPlugin/SketchPlugin_ConstraintDistance.h
index 456ff056943eebb5946a8277da84dd386d724a84..ef9e3eb1a506e6eaaa98a944130b628fcb7f9c7d 100644
(file)
--- a/
src/SketchPlugin/SketchPlugin_ConstraintDistance.h
+++ b/
src/SketchPlugin/SketchPlugin_ConstraintDistance.h
@@
-1,26
+1,35
@@
+// Copyright (C) 2014-20xx CEA/DEN, EDF R&D -->
+
// File: SketchPlugin_ConstraintDistance.h
// Created: 23 May 2014
// Author: Artem ZHIDKOV
// File: SketchPlugin_ConstraintDistance.h
// Created: 23 May 2014
// Author: Artem ZHIDKOV
-#ifndef SketchPlugin_ConstraintDistance_H
eaderFile
-#define SketchPlugin_ConstraintDistance_H
eaderFile
+#ifndef SketchPlugin_ConstraintDistance_H
_
+#define SketchPlugin_ConstraintDistance_H
_
#include "SketchPlugin.h"
#include "SketchPlugin.h"
-#include "SketchPlugin_Constraint.h"
-#include <SketchPlugin_Sketch.h>
+#include "SketchPlugin_ConstraintBase.h"
+#include "SketchPlugin_Sketch.h"
+#include "ModelAPI_Data.h"
+
+#include <GeomAPI_ICustomPrs.h>
+
#include <list>
#include <list>
+class SketchPlugin_Line;
+class GeomDataAPI_Point2D;
+
/** \class SketchPlugin_ConstraintDistance
/** \class SketchPlugin_ConstraintDistance
- * \ingroup
DataModel
+ * \ingroup
Plugins
* \brief Feature for creation of a new constraint which defines a distance
* between a point and another feature (point, line, plane or face)
*
* \brief Feature for creation of a new constraint which defines a distance
* between a point and another feature (point, line, plane or face)
*
- * Th
ese
constraint has three attributes:
+ * Th
is
constraint has three attributes:
* SketchPlugin_Constraint::VALUE(), SketchPlugin_Constraint::ENTITY_A() and SketchPlugin_Constraint::ENTITY_B()
*/
* SketchPlugin_Constraint::VALUE(), SketchPlugin_Constraint::ENTITY_A() and SketchPlugin_Constraint::ENTITY_B()
*/
-class SketchPlugin_ConstraintDistance
: public SketchPlugin_Constraint
+class SketchPlugin_ConstraintDistance
: public SketchPlugin_ConstraintBase
{
{
-public:
+
public:
/// Distance constraint kind
inline static const std::string& ID()
{
/// Distance constraint kind
inline static const std::string& ID()
{
@@
-29,8
+38,11
@@
public:
}
/// \brief Returns the kind of a feature
}
/// \brief Returns the kind of a feature
- SKETCHPLUGIN_EXPORT virtual const std::string& getKind()
- {static std::string MY_KIND = SketchPlugin_ConstraintDistance::ID(); return MY_KIND;}
+ SKETCHPLUGIN_EXPORT virtual const std::string& getKind()
+ {
+ static std::string MY_KIND = SketchPlugin_ConstraintDistance::ID();
+ return MY_KIND;
+ }
/// \brief Creates a new part document if needed
SKETCHPLUGIN_EXPORT virtual void execute();
/// \brief Creates a new part document if needed
SKETCHPLUGIN_EXPORT virtual void execute();
@@
-38,17
+50,31
@@
public:
/// \brief Request for initialization of data model of the feature: adding all attributes
SKETCHPLUGIN_EXPORT virtual void initAttributes();
/// \brief Request for initialization of data model of the feature: adding all attributes
SKETCHPLUGIN_EXPORT virtual void initAttributes();
+ /// Retuns the parameters of color definition in the resources config manager
+ SKETCHPLUGIN_EXPORT virtual void colorConfigInfo(std::string& theSection, std::string& theName,
+ std::string& theDefault);
+
/// Returns the AIS preview
/// Returns the AIS preview
- SKETCHPLUGIN_EXPORT virtual boost::shared_ptr<GeomAPI_AISObject> getAISObject(
- boost::shared_ptr<GeomAPI_AISObject> thePrevious);
+ SKETCHPLUGIN_EXPORT virtual AISObjectPtr getAISObject(AISObjectPtr thePrevious);
/// Moves the feature
/// \param theDeltaX the delta for X coordinate is moved
/// \param theDeltaY the delta for Y coordinate is moved
SKETCHPLUGIN_EXPORT virtual void move(const double theDeltaX, const double theDeltaY);
/// Moves the feature
/// \param theDeltaX the delta for X coordinate is moved
/// \param theDeltaY the delta for Y coordinate is moved
SKETCHPLUGIN_EXPORT virtual void move(const double theDeltaX, const double theDeltaY);
+ /// Called on change of any argument-attribute of this object
+ /// \param theID identifier of changed attribute
+ SKETCHPLUGIN_EXPORT virtual void attributeChanged(const std::string& theID);
+
/// \brief Use plugin manager for features creation
SketchPlugin_ConstraintDistance();
/// \brief Use plugin manager for features creation
SketchPlugin_ConstraintDistance();
+
+protected:
+ /// Returns the current distance between the feature attributes
+ double calculateCurrentDistance();
+
+private:
+ bool myFlyoutUpdate; ///< to avoid cyclic dependencies on automatic updates of flyout point
};
#endif
};
#endif