TetGen export does nothing?

Post here for help on using FreeCAD's graphical user interface (GUI).
Forum rules
and Helpful information
IMPORTANT: Please click here and read this first, before asking for help

Also, be nice to others! Read the FreeCAD code of conduct!
wmayer
Founder
Posts: 20306
Joined: Thu Feb 19, 2009 10:32 am
Contact:

Re: TetGen export does nothing?

Post by wmayer »

Do you guys have FreeCAD built with netgen support? And is the netgen library linked to the same OCC/OCE version you linked with FreeCAD? About Mefisto not being available is probably caused by not having activated SMesh.
User avatar
quick61
Veteran
Posts: 3803
Joined: Sat Aug 24, 2013 2:49 am
Location: u.S.A.

Re: TetGen export does nothing?

Post by quick61 »

wmayer wrote:Do you guys have FreeCAD built with netgen support? And is the netgen library linked to the same OCC/OCE version you linked with FreeCAD? About Mefisto not being available is probably caused by not having activated SMesh.
For me the answer is a resounding NO. I have not been able to get any version of netgen to build with OCE 0.16 or 0.17. If anyone has a clue on building netgen with current OCE, please, please share.


My release version, 3703 and development version, 3789 are both built with the same configuration. Release has Mefisto, development now dose not.

OK, I'll bite... How do you "activate" SMesh? And when did this become necessary to do when building FreeCAD? Mefisto option was there and working until just recently, in the Mesh Design WB > Create mesh from shape.

Mark
This post made with 0.0% Micro$oft products - GOT LINUX?
wmayer
Founder
Posts: 20306
Joined: Thu Feb 19, 2009 10:32 am
Contact:

Re: TetGen export does nothing?

Post by wmayer »

This is taken from the CMakeLists.txt file under MeshPart/App

Code: Select all

if (FREECAD_BUILD_SMESH)
    add_definitions(-DHAVE_SMESH -DHAVE_MEFISTO)
endif(FREECAD_BUILD_SMESH)

if(FREECAD_BUILD_FEM_NETGEN)
    add_definitions(-DHAVE_NETGEN)
endif(FREECAD_BUILD_FEM_NETGEN)
FREECAD_BUILD_SMESH is a build option you should see with cmake-gui and is ON by default. Now when it's on the defines HAVE_SMESH and HAVE_MEFISTO are passed to the compiler to enable Mefisto. So, the other way around if Mefisto is not activated then then this can happen when HAVE_MEFISTO is not defined which this means that FREECAD_BUILD_SMESH must be off somehow.

Another reason that Mefisto is not enabled is when loading the MeshPart Python module fails. This is the part of the code of the panel:

Code: Select all


#if !defined (HAVE_MEFISTO)
    ui->radioButtonMefisto->setDisabled(true);
#else
    ui->radioButtonMefisto->setChecked(true);
#endif
#if !defined (HAVE_NETGEN)
    ui->radioButtonNetgen->setDisabled(true);
#else
    ui->radioButtonNetgen->setChecked(true);
#endif

    Gui::Command::doCommand(Gui::Command::Doc, "import Mesh");
    try {
        Gui::Command::doCommand(Gui::Command::Doc, "import MeshPart");
    }
    catch(...) {
        ui->radioButtonNetgen->setDisabled(true);
        ui->radioButtonMefisto->setDisabled(true);
        ui->radioButtonStandard->setChecked(true);
    }
So, since you have problems loading this module I guess the latter is your problem.
ulrich1a
Veteran
Posts: 1957
Joined: Sun Jul 07, 2013 12:08 pm

Re: TetGen export does nothing?

Post by ulrich1a »

wmayer wrote:FREECAD_BUILD_SMESH is a build option you should see with cmake-gui and is ON by default
I do not have any string with FREECAD_BUILD_SMESH in my CMakeCache.txt.

So I suspect, I can not build SMESH with the standard procedure. What should I do?

Ulrich
wmayer
Founder
Posts: 20306
Joined: Thu Feb 19, 2009 10:32 am
Contact:

Re: TetGen export does nothing?

Post by wmayer »

Ah, FREECAD_BUILD_SMESH is a hidden option and can't be set directly by the user. It's set to ON if FREECAD_BUILD_FEM or FREECAD_BUILD_MESH_PART is on.
jmaustpc
Veteran
Posts: 11207
Joined: Tue Jul 26, 2011 6:28 am
Location: Australia

Re: TetGen export does nothing?

Post by jmaustpc »

wmayer wrote:Do you guys have FreeCAD built with netgen support? And is the netgen library linked to the same OCC/OCE version you linked with FreeCAD? About Mefisto not being available is probably caused by not having activated SMesh.
Hi Werner
I have many FreeCADs compiled with many different combinations of different Build Options, different OCEs, and I have one with NETGEN :-)

The tests I referred to above were all with Cmake options Build "Mesh" "Mesh Part" "FEM" enabled but not "FEM"-NETGEN.

I just now tested with my NETGEN FreeCAD. I have compiled it (see below) with the default OCE and NETGEN in Kubuntu 14.04.1 64bit. The NETGEN is 4.9.13.


OS: Ubuntu 14.04.1 LTS
Word size: 64-bit
Version: 0.14.3698 (Git)
Branch: master
Hash: 8188bd5385aa0f1e3c93d90613750c7dfc562b33
Python version: 2.7.6
Qt version: 4.8.6
Coin version: 4.0.0a
SoQt version: 1.6.0a
OCC version: 6.7.0


In all my versions with MESH MESH_PART FEM but not FEM-netgen, I have only standard mesh option in Part to Mesh task view. mefisto and netgen are both greyed out.

In my NETGEN FreeCAD, I have all three meshing options and FreeCAD does not seem to crash when I run Part to Mesh multiple times.

Jim
Post Reply