Skip to content
Snippets Groups Projects
Select Git revision
  • 89bbb8639eead7ad8f342c5f5ae5bb5f79a2b909
  • master default protected
  • hierarchical-basis
  • revert-ef4a3a4f
  • patch_releases_4_14
  • overlaps_tags_and_distributed_export
  • overlaps_tags_and_distributed_export_rebased
  • relaying
  • alphashapes
  • steplayer
  • bl
  • pluginMeshQuality
  • fixBugsAmaury
  • new_export_boris
  • oras_vs_osm
  • reassign_partitions
  • distributed_fwi
  • rename-classes
  • fix/fortran-api-example-t4
  • robust_partitions
  • reducing_files
  • gmsh_4_14_0
  • gmsh_4_13_1
  • gmsh_4_13_0
  • gmsh_4_12_2
  • gmsh_4_12_1
  • gmsh_4_12_0
  • gmsh_4_11_1
  • 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
41 results

ACISEdge.h

Blame
  • ACISEdge.h 1.36 KiB
    // Gmsh - Copyright (C) 1997-2019 C. Geuzaine, J.-F. Remacle
    //
    // See the LICENSE.txt file for license information. Please report all
    // issues on https://gitlab.onelab.info/gmsh/gmsh/issues.
    
    #ifndef ACIS_EDGE_H
    #define ACIS_EDGE_H
    
    #include "GmshConfig.h"
    #include "GEdge.h"
    #include "GModel.h"
    #include "ACISVertex.h"
    #include "Range.h"
    
    class ACISFace;
    
    #if defined(HAVE_ACIS)
    
    #include <position.hxx>
    #include <edge.hxx>
    
    class ACISEdge : public GEdge {
      EDGE *_e;
      double s0, s1;
    
    public:
      ACISEdge(GModel *model, EDGE *e, int num, GVertex *v1, GVertex *v2);
      virtual ~ACISEdge() {}
      virtual Range<double> parBounds(int i) const;
      virtual GeomType geomType() const;
      virtual bool degenerate(int) const;
      virtual GPoint point(double p) const;
      virtual SVector3 firstDer(double par) const;
      virtual double curvature(double par) const;
      virtual SPoint2 reparamOnFace(const GFace *face, double epar, int dir) const;
      virtual GPoint closestPoint(const SPoint3 &queryPoint, double &param) const;
      ModelType getNativeType() const { return AcisModel; }
      void *getNativePtr() const { return (void *)_e; }
      virtual int minimumMeshSegments() const;
      virtual int minimumDrawSegments() const;
      bool isSeam(const GFace *) const;
      virtual void writeGEO(FILE *fp);
      EDGE *getEDGE() const { return _e; }
    };
    GEdge *getACISEdgeByNativePtr(GModel *model, EDGE *toFind);
    
    #endif
    
    #endif