Salome HOME
Copyright update 2022
[modules/med.git] / src / MEDCalc / cmp / MEDPresentationVectorField.hxx
index 838af52fe01e9b2d2a278dd161d60f254e11ecf8..8aae2b7dafe419e49c44c89740fc5b37ddc5382d 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2016  CEA/DEN, EDF R&D
+// Copyright (C) 2016-2022  CEA/DEN, EDF R&D
 //
 // This library is free software; you can redistribute it and/or
 // modify it under the terms of the GNU Lesser General Public
@@ -15,6 +15,7 @@
 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
 
 #ifndef SRC_MEDCALC_CMP_MEDPRESENTATION_VECTORFIELD_HXX_
 #define SRC_MEDCALC_CMP_MEDPRESENTATION_VECTORFIELD_HXX_
 class MEDCALC_EXPORT MEDPresentationVectorField : public MEDPresentation
 {
 public:
-  MEDPresentationVectorField(const MEDCALC::VectorFieldParameters& params) :
-    MEDPresentation(params.fieldHandlerId, "MEDPresentationVectorField"), _params(params)
-  {}
+  static const std::string TYPE_NAME;
+  static const std::string PROP_SCALE_FACTOR;
+  static const std::string PROP_CUSTOM_SCALE_FACTOR;
+
+  MEDPresentationVectorField(const MEDCALC::VectorFieldParameters& params, const MEDCALC::ViewModeType viewMode);
   virtual ~MEDPresentationVectorField() {}
 
+  virtual void initFieldMeshInfos();
+
+  void updatePipeline(const MEDCALC::VectorFieldParameters& params);
+
+  void getParameters(MEDCALC::VectorFieldParameters & params) const { params = _params; } ;
+  void setParameters(const MEDCALC::VectorFieldParameters & params) { _params = params; } ;
+
 protected:
   virtual void internalGeneratePipeline();
-
+  void updateScaleFactor(const double, const bool);
+  void autoScale();
+  void scale();
 private:
   MEDCALC::VectorFieldParameters _params;
+
 };
 
 #endif