X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FDriverGMF%2FDriverGMF_Write.hxx;h=83d86a83b92e4c84d2e385ee9ce2ef64cb386def;hp=96c7df16e771e6790dca2fb2fce252017f6630da;hb=cf381121dcb05f2335fcc34e0c471ebd80d9b811;hpb=bd8f1aee7c78f7d2eb82bd4fec5e08c9e3d280ce;ds=sidebyside diff --git a/src/DriverGMF/DriverGMF_Write.hxx b/src/DriverGMF/DriverGMF_Write.hxx index 96c7df16e..83d86a83b 100644 --- a/src/DriverGMF/DriverGMF_Write.hxx +++ b/src/DriverGMF/DriverGMF_Write.hxx @@ -33,6 +33,26 @@ #include "SMDSAbs_ElementType.hxx" #include "SMDS_ElemIterator.hxx" +#include + +/*! + * \brief Class for storing control points for writing GMF size maps + */ +class MESHDriverGMF_EXPORT Control_Pnt : public gp_Pnt +{ +public: + Control_Pnt(); + Control_Pnt(const gp_Pnt& aPnt, double theSize); + Control_Pnt(double x, double y, double z); + Control_Pnt(double x, double y, double z, double size); + + double Size() const { return size; }; + void SetSize( double theSize ) { size = theSize; }; + +private: + double size; +}; + /*! * \brief Driver Writing a mesh into a GMF file. */ @@ -47,8 +67,17 @@ public: { _exportRequiredGroups = toExport; } - + virtual Status Perform(); + + // Size Maps + Status PerformSizeMap( const std::vector& points ); + void SetSizeMapPrefix( std::string prefix ) + { + myVerticesFile = prefix + ".mesh"; + mySolFile = prefix + ".sol"; + }; + std::vector GetSizeMapFiles(); private: @@ -57,6 +86,8 @@ public: SMDS_ElemIteratorPtr elementIterator(SMDSAbs_GeometryType type); bool _exportRequiredGroups; + std::string myVerticesFile; + std::string mySolFile; }; #endif