<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p><font size="+1">Okay I am trying to add certain gmsh
        functionality to a FreeCAD work bench.</font></p>
    <p><font size="+1">I can deal with FreeCAD Shapes by writing out a
        temp brep file and reading using gmsh.<br>
        Not very elegant but it works.</font></p>
    <p><font size="+1">I am trying to also handle Meshes. Now there are
        no export options on a FreeCAD mesh .</font></p>
    <p><font size="+1">I have access to Edges, Facets, Points</font></p>
    <p><font size="+1">see print(dir())</font></p>
    <p><font size="+1">Create Tetrahedra Mesh from Mesh<br>
        Facets : 4900<br>
        ['Area', 'BoundBox', 'Content', 'CountEdges', 'CountFacets',
        'CountPoints', 'Facets', 'Matrix', 'MemSize', 'Module',
        'Placement', 'Points', 'Topology', 'TypeId', 'Volume',
        '__class__', '__delattr__', '__dir__', '__doc__', '__eq__',
        '__format__', '__ge__', '__getattribute__', '__gt__',
        '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__',
        '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__',
        '__setattr__', '__sizeof__', '__str__', '__subclasshook__',
        'addFacet', 'addFacets', 'addMesh', 'clear', 'coarsen',
        'collapseEdge', 'collapseFacet', 'collapseFacets', 'copy',
        'countComponents', 'countNonUniformOrientedFacets',
        'countSegments', 'crossSections', 'cut', 'decimate',
        'difference', 'dumpContent', 'fillupHoles', 'fixDeformations',
        'fixDegenerations', 'fixIndices', 'fixSelfIntersections',
        'flipNormals', 'foraminate', 'getAllDerivedFrom',
        'getEigenSystem', 'getFacesFromSubelement', 'getFacetSelection',
        'getInternalFacets', 'getNonUniformOrientedFacets',
        'getPlanarSegments', 'getPointNormals', 'getPointSelection',
        'getSegment', 'getSegmentsByCurvature', 'getSegmentsOfType',
        'getSelfIntersections', 'getSeparateComponents',
        'harmonizeNormals', 'hasInvalidPoints', 'hasNonManifolds',
        'hasNonUniformOrientedFacets', 'hasSelfIntersections', 'inner',
        'insertVertex', 'intersect', 'isDerivedFrom', 'isSolid',
        'meshFromSegment', 'nearestFacetOnRay', 'offset',
        'offsetSpecial', 'optimizeEdges', 'optimizeTopology', 'outer',
        'printInfo', 'read', 'rebuildNeighbourHood', 'refine',
        'removeComponents', 'removeDuplicatedFacets',
        'removeDuplicatedPoints', 'removeFacets',
        'removeFoldsOnSurface', 'removeInvalidPoints',
        'removeNonManifoldPoints', 'removeNonManifolds',
        'restoreContent', 'rotate', 'setPoint', 'smooth', 'snapVertex',
        'splitEdge', 'splitEdges', 'splitFacet', 'swapEdge',
        'transform', 'transformToEigen', 'translate', 'trim', 'unite',
        'write', 'writeInventor']</font></p>
    <p><font size="+1">I get the impression, maybe wrong that I have to
        create a surface with boundary curves and then add nodes and
        coordinates,<br>
        but not sure how I could create boundary curves given that I am
        trying to handle generic cases where I have no control<br>
        over the mesh I get passed.<br>
        <br>
        Any ideas?<br>
      </font></p>
  </body>
</html>