[MOAB-dev] r5261 - MOAB/trunk/itaps/igeom

iulian at mcs.anl.gov iulian at mcs.anl.gov
Wed Dec 14 00:36:18 CST 2011


Author: iulian
Date: 2011-12-14 00:36:12 -0600 (Wed, 14 Dec 2011)
New Revision: 5261

Added:
   MOAB/trunk/itaps/igeom/testSmooth2.cc
Modified:
   MOAB/trunk/itaps/igeom/FBiGeom.h
   MOAB/trunk/itaps/igeom/FBiGeom_MOAB.cpp
   MOAB/trunk/itaps/igeom/FBiGeom_MOAB.hpp
   MOAB/trunk/itaps/igeom/Makefile.am
Log:
an example of the new FBiGeom instantiation, that will take as input an
iMesh instance (moab) and a "model root" set
this function is a special brand, it makes a direct connection between
iMesh and iGeom; right now, it can't be easily declared
in FBiGeom.h, because it has the iMesh_Instance as input parameter. 
The implementation of this new function (FBiGeom_newGeomFromMesh) is in
FBiGeom_MOAB.cpp, but its declaration should be maybe somewhere else 
(for the example to run, I just declared it extern in the test itself :( )



Modified: MOAB/trunk/itaps/igeom/FBiGeom.h
===================================================================
--- MOAB/trunk/itaps/igeom/FBiGeom.h	2011-12-13 15:38:07 UTC (rev 5260)
+++ MOAB/trunk/itaps/igeom/FBiGeom.h	2011-12-14 06:36:12 UTC (rev 5261)
@@ -59,6 +59,7 @@
 
 #include "iBase.h"
 #include "FBiGeom_protos.h"
+//#include "iMesh.h"
 #ifdef __cplusplus
 extern "C" {
 #endif
@@ -104,6 +105,21 @@
                       int* err,
                       int options_len );
 
+  /**\brief  Construct a new FBiGeom instance
+       *
+       * Construct a new FBiGeom instance, using an existing moab iMesh instance
+       * and a root set that encapsulates the topological model
+       * \param mesh iMesh_Instance
+       * \param set  root set for the mesh based geometry
+       * \param options Pointer to implementation-specific options string
+       * \param instance Pointer to FBiGeom instance handle returned from function
+       * \param *err Pointer to error type returned from function
+       * \param options_len Length of the character string pointed to by options
+       */
+
+/*  void FBiGeom_newGeomFromMesh( iMesh_Instance mesh, iBase_EntitySetHandle set,
+                          const char *options, FBiGeom_Instance *geom,
+                          int *err, int options_len);*/
     /**\brief  Destroy an FBiGeom instance
      *
      * Destroy an FBiGeom instance

Modified: MOAB/trunk/itaps/igeom/FBiGeom_MOAB.cpp
===================================================================
--- MOAB/trunk/itaps/igeom/FBiGeom_MOAB.cpp	2011-12-13 15:38:07 UTC (rev 5260)
+++ MOAB/trunk/itaps/igeom/FBiGeom_MOAB.cpp	2011-12-14 06:36:12 UTC (rev 5261)
@@ -75,6 +75,29 @@
   *err = iBase_SUCCESS;
 }
 
+void FBiGeom_newGeomFromMesh(iMesh_Instance mesh, iBase_EntitySetHandle set,
+                        const char *options, FBiGeom_Instance *geom,
+                        int *err, int options_len)
+{
+  MBiMesh * mbimesh = reinterpret_cast<MBiMesh *>(mesh);
+  moab::Interface * mbi = mbimesh->mbImpl;
+  moab::EntityHandle rootSet = reinterpret_cast<moab::EntityHandle> (set);
+  moab::GeomTopoTool * gtt = new moab::GeomTopoTool(mbi, true, rootSet);


More information about the moab-dev mailing list