Skip to content
Snippets Groups Projects
Select Git revision
  • be1117bc68966c7df6014f0fc4bc138fcb51bfca
  • master default protected
  • alphashapes
  • quadMeshingTools
  • cygwin_conv_path
  • macos_arm64
  • add-transfiniteautomatic-to-geo
  • patch_releases_4_10
  • HierarchicalHDiv
  • isuruf-master-patch-63355
  • hyperbolic
  • hexdom
  • hxt_update
  • jf
  • 1618-pythonocc-and-gmsh-api-integration
  • octreeSizeField
  • hexbl
  • alignIrregularVertices
  • getEdges
  • patch_releases_4_8
  • isuruf-master-patch-51992
  • gmsh_4_11_0
  • gmsh_4_10_5
  • gmsh_4_10_4
  • gmsh_4_10_3
  • gmsh_4_10_2
  • gmsh_4_10_1
  • gmsh_4_10_0
  • gmsh_4_9_5
  • gmsh_4_9_4
  • gmsh_4_9_3
  • gmsh_4_9_2
  • gmsh_4_9_1
  • gmsh_4_9_0
  • gmsh_4_8_4
  • gmsh_4_8_3
  • gmsh_4_8_2
  • gmsh_4_8_1
  • gmsh_4_8_0
  • gmsh_4_7_1
  • gmsh_4_7_0
41 results

GEdgeCompound.h

Blame
  • Forked from gmsh / gmsh
    Source project has a limited visibility.
    GEdgeCompound.h 1.53 KiB
    // Gmsh - Copyright (C) 1997-2016 C. Geuzaine, J.-F. Remacle
    //
    // See the LICENSE.txt file for license information. Please report all
    // bugs and problems to the public mailing list <gmsh@onelab.info>.
    
    #ifndef _GEDGE_COMPOUND_H_
    #define _GEDGE_COMPOUND_H_
    
    #include "GFace.h"
    #include "GEdge.h"
    
    // A GEdgeCompound is a model edge that is the compound of model edges.
    
    class GEdgeCompound : public GEdge {
     protected:
      std::vector<GEdge*> _compound;
      std::vector<int> _orientation;
      std::vector<double> _pars;
      void orderEdges();
     public:
      void parametrize();
      bool getLocalParameter(const double &t, int &iEdge, double & tLoc) const;
      GEdgeCompound(GModel *m, int tag, std::vector<GEdge*> &compound);
      GEdgeCompound(GModel *m, int tag, std::vector<GEdge*> &compound,
                    std::vector<int> &orientation); // confidence in the input
      virtual ~GEdgeCompound();
      Range<double> parBounds(int i) const;
      virtual GPoint point(double par) const;
      virtual SVector3 firstDer(double par) const;
      virtual GEntity::GeomType geomType() const { return CompoundCurve;  }
      ModelType getNativeType() const { return GmshModel; }
      void * getNativePtr() const { return 0; }
      virtual double curvature(double t) const;
      virtual double curvatures(const double par, SVector3 *dirMax, SVector3 *dirMin,
       double *curvMax, double *curvMin) const;
      virtual int minimumMeshSegments() const;
      virtual int minimumDrawSegments() const;
      std::vector<GEdge*>  getCompounds() const { return _compound; }
    };
    
    void replaceMeshCompound(GFace*, std::list<GEdge*>&);
    
    #endif