Git Product home page Git Product logo

pygem's People

Contributors

asartori86 avatar davidebaroliunilu avatar e-dub avatar fandreuz avatar fpichi avatar giadadalla avatar guglielmopadula avatar lukefarn1996 avatar maciekgroch avatar mahgadalla avatar matsubaradaisuke avatar mtezzele avatar ndem0 avatar quantifiedcode-bot avatar sc-ita avatar zjiang0529 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

pygem's Issues

Points on bounding box not deforming

Dear PyGem Team.

Background
I have the following problem. I have a bunch of meshes to which I want to apply some random deformations using the FFD transformer. Basically, I position the vertices of my surface mesh somewhere in space and initialize the FFD object such that the control points lie exactly on the bounding box of the object. In other words, control points are also the bounding box of my mesh.

Presumed bug
I have noticed that points that lie exactly on plane of that bounding box do not deform as they should. The opposite, they do not deform at all. This creates weird looking deformation patterns, as shown in image below.
point_deformation
point_deformation_2

To Reproduce
Here is a code to reproduce the similar error, but with random points instead. Points marked in orange are the ones that do not deform.
`
# Import modules
import numpy as np
import pyvista as pv
from pygem import FFD

# Define points
num_points = 1000
points = np.random.random(size=(num_points, 3)) * 100

# Get mesh bounding box
mesh_bbox = [
    (np.min(points[:, 0]), np.max(points[:, 0])),
    (np.min(points[:, 1]), np.max(points[:, 1])),
    (np.min(points[:, 2]), np.max(points[:, 2])),
]

mesh_bbox_length = np.asarray(mesh_bbox)[:, 1] - np.asarray(mesh_bbox)[:, 0]
mesh_bbox_origin = np.mean(np.asarray(mesh_bbox), axis=1)

# Control lattice
lattice = [2, 2, 2]

# Free-Form Deformation class
ffd_transformer = FFD(n_control_points=lattice)

# Print info
print(ffd_transformer)

# Center the control lattice
ffd_transformer.box_length = mesh_bbox_length
ffd_transformer.box_origin = mesh_bbox_origin - 0.5 * mesh_bbox_length

# Apply deformations (relative size to between 0-1 of the bbox)
ffd_transformer.array_mu_x[1, 1, 1] = 0.5
ffd_transformer.array_mu_y[1, 1, 1] = 0.5
ffd_transformer.array_mu_z[1, 1, 1] = 0.5

# Apply deformations
deformed_points = ffd_transformer(points)

# Differences
diff = deformed_points - points
zero_ids = np.where(np.linalg.norm(diff, axis=1) == 0)[0]

# Show the mesh
pl = pv.Plotter()
pl.add_points(points, render_points_as_spheres=True, color='blue', opacity=0.5, label='Original Mesh')
pl.add_points(deformed_points, render_points_as_spheres=True, color='red', opacity=0.5, label='Deformed Mesh')
pl.add_points(ffd_transformer.control_points(), render_points_as_spheres=True, color='green', point_size=20, label='Control Points')
# Plot error points
if len(zero_ids) != 0:
    pl.add_points(deformed_points[zero_ids, :], render_points_as_spheres=True, color='orange', point_size=20)
# Show everything
pl.add_legend()
pl.show()`

Expected behaviour
I would expect all the points to deform according to some rules defined in the FFD. Am I understanding this wrong, of this this a bug in the code?

Best regards,
Marko

Add meta.py file

Move the package variable from __init__.py to meta.py as other mathLab packages

Error on CAD file comparison

======================================================================

FAIL: test_ffd_iges_pipe_mod_through_files (test_ffdcad.TestFFDCAD)

----------------------------------------------------------------------

Traceback (most recent call last):

  File "/home/travis/build/mathLab/PyGeM/tests/test_ffdcad.py", line 24, in test_ffd_iges_pipe_mod_through_files

    self.assertMultiLineEqual(ref[i], cre[i])

AssertionError: '9.29[16 chars]810629323,1.290550492E+03,9.343553199E+03,   0000005P0000794\n' != '9.29[16 chars]810629324,1.290550492E+03,9.343553199E+03,   0000005P0000794\n'

- 9.299036204E+03,606.810629323,1.290550492E+03,9.343553199E+03,   0000005P0000794

?                             ^

+ 9.299036204E+03,606.810629324,1.290550492E+03,9.343553199E+03,   0000005P0000794

?                             ^

======================================================================

FAIL: test_ffd_iges_pipe_mod_through_topods_shape (test_ffdcad.TestFFDCAD)

----------------------------------------------------------------------

Traceback (most recent call last):

  File "/home/travis/build/mathLab/PyGeM/tests/test_ffdcad.py", line 41, in test_ffd_iges_pipe_mod_through_topods_shape

    self.assertMultiLineEqual(ref[i], cre[i])

AssertionError: '-134.222119722,1.118290358E+03,8.227867561E+03,-247.97[24 chars]35\n' != '-134.222119721,1.118290358E+03,8.227867561E+03,-247.97[24 chars]35\n'

- -134.222119722,1.118290358E+03,8.227867561E+03,-247.970135629,   0000005P0000735

?              ^

+ -134.222119721,1.118290358E+03,8.227867561E+03,-247.970135629,   0000005P0000735

?              ^

----------------------------------------------------------------------

Ran 2 tests in 0.303s

tl;dr installation

I would like to add a conda .yml environment file for easy hassle-free installation of the dependencies and tl;dr installation procedure in the documentation for beginners who just want to use PyGeM instantly.

Symmetry enforcement

Making the deformation automatically symmetrical could make the deformation of inherently symmetrical objects (hulls, fuselages ...) easier and more robust.

Issue to run PyGeM test

Hello,
For an internship I have to use PyGeM library. I downloaded it an go through the installation file without any problems (installed Anaconda3, all packages needed). But when I wanted to run the 'test.py' file, I had the error 'ModuleNotFoundError (No module named 'OCC.Core')'
I used the command line to install packages :
conda install -c conda-forge -c dlr-sc -c pythonocc -c oce pythonocc-core==0.17 python=3.6
I followed the instructions on the 'Read me' file to be sure to get it working well.
It has been 2 days I searched online how to fixed it but I'm kinda lost and that's why I'm requesting your help.
I precise I'm not familiar with programming or coding.
Thank you in advance

Thomas B

No module named sphinx_rtd_theme

Building sphinx documentation on Windows/py27:

>cd docs
>make html
Running Sphinx v1.4.6

Exception occurred:
  File "conf.py", line 20, in <module>
ImportError: No module named sphinx_rtd_theme

RBF applied to Cube with a hole

I try to use PyGeM with this demo:

demoRBF1.txt

The result shows that both the cube and hole are deformed, but the control points are only on the surface of the hole. So the cube should not change his shape. Are there some modifications to add in the src part?

FFD of STEP file error

Applying PyGem FFD to a STEP file results in an error. Please, see example code at guillaume-florent@983c1e8

The modified STEP file does not seem to be a valid STEP file and crashes CAD softs like FreeCAD and Salome (no geometrical data in the imported file).

FFD parameter files not found

I am trying to get my tutorials running again for LS-DYNA and Kratos (mdpa). I am having some problems with the new syntax.

I am following the documentation here:
https://mathlab.github.io/PyGeM/ffd.html

The following code is not working

ffd.read_parameters('../tests/test_datasets/parameters_test_ffd_pipe_unv_C0.prm')

which is not recognizing the file and then trying to write a new file, see ffd.py line 249 and then giving the following error:

AttributeError: 'str' object has no attribute 'write_parameters'

Even if I comment this section, further errors occur below.

Any tips or help here?

More intuitive morphing default case

There could be a more intuitive way (programatically speaking) to morph the shapes that could be used as a default solution:

  • position the morphing vertices based on the bounding box
  • move the vertices

Can't managed to modify mesh from k file

Hi everyone,
I have some issues to modify the mesh of my .k file.
I succeed into modifying the tuto one and changing parameters, but when using my file, nothing happens.
I tried to change every parameters with different values but nothing happens with the mesh.
I might going wrong with the definition of my parameters but hard to know.
I run a 2D axysym mesh.

Thanks in advanced
Stay safe at home !

More advanced examples

It would be nice to have examples/notebooks that morph objects that are more complex than pipes.

fails to run testsuite with V2.0 on Debian/Testing

Hi,
I'm experiencing some troubles while running test for V2.0 release.
It seems that the cad python files are not installed and it leads to a lot of errors...

Is this behaviour normal? (or shall the files be installed?)
If this is normal why not removing tests involving importing modules from cad?
Moreover, it seems to me that files in cad do not reflect names of modules (except on system which are case insensitive)...

Nose is required for testing

The nose testing framework is a required dependency for testing, but it's not documented:

>Miniconda2\python test.py
Traceback (most recent call last):
  File "test.py", line 3, in <module>
    import nose
ImportError: No module named nose

Prescribed deformation

Hi all, and thanks for this very promising tool.

I'm wondering wether PyGeM would be able to deform a 3D mesh, based on the prescribed motion of a body. That would be interesting in loosely coupled FSI problems, where the body is deformed by a structural solver, and this deformed body then needs to be simulated with a fluid domain again.

Similarly for ship study it would enable one to deform a mesh based on the calculated attitude... Many applications !

Thanks for your reply.

Benoit Paillard

Conda package

Could you provide a conda package? That would make the installation very easy.

TestFFDCAD.test_ffd_step_pipe_mod_through_files

Describe the bug
The test_ffd_step_pipe_mod_through_files fails because extra information depending on the running machine are stored in the test file, making extremely difficult to use these kind of test in CI.

To Reproduce
python -m pytest tests/test_ffdcad.py

Output

___________________ TestFFDCAD.test_ffd_step_pipe_mod_through_files ___________________

self = <tests.test_ffdcad.TestFFDCAD testMethod=test_ffd_step_pipe_mod_through_files>

    def test_ffd_step_pipe_mod_through_files(self):
        ffd = FFD(None,30,30,30,1e-4)
        ffd.read_parameters(
            filename='tests/test_datasets/parameters_test_ffd_iges.prm')
        ffd('tests/test_datasets/test_pipe.step', 'test_pipe_result.step')
        with open('test_pipe_result.step', "r") as created, \
             open('tests/test_datasets/test_pipe_out_true.step', "r") as reference:
             ref = reference.readlines()[92:]
             cre = created.readlines()[92:]
>            self.assertEqual(len(ref),len(cre))
E            AssertionError: 12215 != 12216

tests/test_ffdcad.py:61: AssertionError

Additional context
Here the diff between test and tested files:

#49 = PERSON('IP147.122.112,ndemo','286','Nicola',('Demo,A-70 | #49 = PERSON('IP127.0.1,amola','Mola,,,','Andrea',$,$,$);
    '3787'),$,$);                                             | #50 = ORGANIZATION('IP127.0.1','Unspecified','');
#50 = ORGANIZATION('IP147.122.112','Unspecified','');         <
#51 = PERSON_AND_ORGANIZATION_ROLE('creator');                  #51 = PERSON_AND_ORGANIZATION_ROLE('creator');

Error - RBF Deformation of UNV

In the latest version there seems to be an issue with RBF deformation of unv files. Loaded a case which was working 2 months ago, but doesn't in the latest update.

The error comes up, while reading the rbf parameter file, telling me that the number of control points is unequal to deformed points. In fact: number is the same. If I comment the typeerror in the params/rbf.py the error doesn't show up, but the geometry isn't deformed either.

What's wrong with latest rbf optimization?

Installation..problem with GLIBCXX_3.4.21

Hello,
I try to install PyGem..with following this steps on CentOS7:

  1. install conda
  2. conda create --name gempy36 python=3.6
  3. conda activate gempy36
  4. conda install -c conda-forge -c dlr-sc -c pythonocc -c oce pythonocc-core==0.17 python=3.6
  5. python -m pip install alla packages ( numpy, scipy, matplotlib, vtk, numpy-stl, sphinx and nose)
  6. python test.py

!! Error..with :

ImportError: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /home/gghe/.conda/envs/gempy36/lib/python3.6/site-packages/OCC/_BRep.so)

======================================================================
ERROR: Failure: ModuleNotFoundError (No module named '_BRep')

Traceback (most recent call last):
File "/home/gghe/.conda/envs/gempy36/lib/python3.6/site-packages/OCC/BRep.py", line 18, in swig_import_helper
return importlib.import_module(mname)
File "/home/gghe/.conda/envs/gempy36/lib/python3.6/importlib/init.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "", line 994, in _gcd_import
File "", line 971, in _find_and_load
File "", line 955, in _find_and_load_unlocked
File "", line 658, in _load_unlocked
File "", line 571, in module_from_spec
File "", line 922, in create_module
File "", line 219, in _call_with_frames_removed
ImportError: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /home/gghe/.conda/envs/gempy36/lib/python3.6/site-packages/OCC/_BRep.so)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/home/gghe/.conda/envs/gempy36/lib/python3.6/site-packages/nose/failure.py", line 39, in runTest
raise self.exc_val.with_traceback(self.tb)
File "/home/gghe/.conda/envs/gempy36/lib/python3.6/site-packages/nose/loader.py", line 418, in loadTestsFromName
addr.filename, addr.module)
File "/home/gghe/.conda/envs/gempy36/lib/python3.6/site-packages/nose/importer.py", line 47, in importFromPath
return self.importFromDir(dir_path, fqname)
File "/home/gghe/.conda/envs/gempy36/lib/python3.6/site-packages/nose/importer.py", line 94, in importFromDir
mod = load_module(part_fqname, fh, filename, desc)
File "/home/gghe/.conda/envs/gempy36/lib/python3.6/imp.py", line 235, in load_module
return load_source(name, filename, file)
File "/home/gghe/.conda/envs/gempy36/lib/python3.6/imp.py", line 172, in load_source
module = _load(spec)
File "", line 684, in _load
File "", line 665, in _load_unlocked
File "", line 678, in exec_module
File "", line 219, in _call_with_frames_removed
File "/home/gghe/Py/PyGeM/tests/test_stlhandler.py", line 3, in
import pygem.stlhandler as sh
File "/home/gghe/Py/PyGeM/pygem/init.py", line 19, in
from .nurbshandler import NurbsHandler
File "/home/gghe/Py/PyGeM/pygem/nurbshandler.py", line 9, in
from OCC.BRep import BRep_Tool, BRep_Builder, BRep_Tool_Curve
File "/home/gghe/.conda/envs/gempy36/lib/python3.6/site-packages/OCC/BRep.py", line 21, in
_BRep = swig_import_helper()
File "/home/gghe/.conda/envs/gempy36/lib/python3.6/site-packages/OCC/BRep.py", line 20, in swig_import_helper
return importlib.import_module('_BRep')
File "/home/gghe/.conda/envs/gempy36/lib/python3.6/importlib/init.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
ModuleNotFoundError: No module named '_BRep'

======================================================================
ERROR: Failure: ModuleNotFoundError (No module named '_BRep')

Traceback (most recent call last):
File "/home/gghe/.conda/envs/gempy36/lib/python3.6/site-packages/OCC/BRep.py", line 18, in swig_import_helper
return importlib.import_module(mname)
File "/home/gghe/.conda/envs/gempy36/lib/python3.6/importlib/init.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "", line 994, in _gcd_import
File "", line 971, in _find_and_load
File "", line 955, in _find_and_load_unlocked
File "", line 658, in _load_unlocked
File "", line 571, in module_from_spec
File "", line 922, in create_module
File "", line 219, in _call_with_frames_removed
ImportError: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /home/gghe/.conda/envs/gempy36/lib/python3.6/site-packages/OCC/_BRep.so)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/home/gghe/.conda/envs/gempy36/lib/python3.6/site-packages/nose/failure.py", line 39, in runTest
raise self.exc_val.with_traceback(self.tb)
File "/home/gghe/.conda/envs/gempy36/lib/python3.6/site-packages/nose/loader.py", line 418, in loadTestsFromName
addr.filename, addr.module)
File "/home/gghe/.conda/envs/gempy36/lib/python3.6/site-packages/nose/importer.py", line 47, in importFromPath
return self.importFromDir(dir_path, fqname)
File "/home/gghe/.conda/envs/gempy36/lib/python3.6/site-packages/nose/importer.py", line 94, in importFromDir
mod = load_module(part_fqname, fh, filename, desc)
File "/home/gghe/.conda/envs/gempy36/lib/python3.6/imp.py", line 235, in load_module
return load_source(name, filename, file)
File "/home/gghe/.conda/envs/gempy36/lib/python3.6/imp.py", line 172, in load_source
module = _load(spec)
File "", line 684, in _load
File "", line 665, in _load_unlocked
File "", line 678, in exec_module
File "", line 219, in _call_with_frames_removed
File "/home/gghe/Py/PyGeM/tests/test_unvhandler.py", line 3, in
import pygem.unvhandler as uh
File "/home/gghe/Py/PyGeM/pygem/init.py", line 19, in
from .nurbshandler import NurbsHandler
File "/home/gghe/Py/PyGeM/pygem/nurbshandler.py", line 9, in
from OCC.BRep import BRep_Tool, BRep_Builder, BRep_Tool_Curve
File "/home/gghe/.conda/envs/gempy36/lib/python3.6/site-packages/OCC/BRep.py", line 21, in
_BRep = swig_import_helper()
File "/home/gghe/.conda/envs/gempy36/lib/python3.6/site-packages/OCC/BRep.py", line 20, in swig_import_helper
return importlib.import_module('_BRep')
File "/home/gghe/.conda/envs/gempy36/lib/python3.6/importlib/init.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
ModuleNotFoundError: No module named '_BRep'

======================================================================
ERROR: Failure: ModuleNotFoundError (No module named '_BRep')

Traceback (most recent call last):
File "/home/gghe/.conda/envs/gempy36/lib/python3.6/site-packages/OCC/BRep.py", line 18, in swig_import_helper
return importlib.import_module(mname)
File "/home/gghe/.conda/envs/gempy36/lib/python3.6/importlib/init.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "", line 994, in _gcd_import
File "", line 971, in _find_and_load
File "", line 955, in _find_and_load_unlocked
File "", line 658, in _load_unlocked
File "", line 571, in module_from_spec
File "", line 922, in create_module
File "", line 219, in _call_with_frames_removed
ImportError: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /home/gghe/.conda/envs/gempy36/lib/python3.6/site-packages/OCC/_BRep.so)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/home/gghe/.conda/envs/gempy36/lib/python3.6/site-packages/nose/failure.py", line 39, in runTest
raise self.exc_val.with_traceback(self.tb)
File "/home/gghe/.conda/envs/gempy36/lib/python3.6/site-packages/nose/loader.py", line 418, in loadTestsFromName
addr.filename, addr.module)
File "/home/gghe/.conda/envs/gempy36/lib/python3.6/site-packages/nose/importer.py", line 47, in importFromPath
return self.importFromDir(dir_path, fqname)
File "/home/gghe/.conda/envs/gempy36/lib/python3.6/site-packages/nose/importer.py", line 94, in importFromDir
mod = load_module(part_fqname, fh, filename, desc)
File "/home/gghe/.conda/envs/gempy36/lib/python3.6/imp.py", line 235, in load_module
return load_source(name, filename, file)
File "/home/gghe/.conda/envs/gempy36/lib/python3.6/imp.py", line 172, in load_source
module = _load(spec)
File "", line 684, in _load
File "", line 665, in _load_unlocked
File "", line 678, in exec_module
File "", line 219, in _call_with_frames_removed
File "/home/gghe/Py/PyGeM/tests/test_vtkhandler.py", line 3, in
import pygem.vtkhandler as vh
File "/home/gghe/Py/PyGeM/pygem/init.py", line 19, in
from .nurbshandler import NurbsHandler
File "/home/gghe/Py/PyGeM/pygem/nurbshandler.py", line 9, in
from OCC.BRep import BRep_Tool, BRep_Builder, BRep_Tool_Curve
File "/home/gghe/.conda/envs/gempy36/lib/python3.6/site-packages/OCC/BRep.py", line 21, in
_BRep = swig_import_helper()
File "/home/gghe/.conda/envs/gempy36/lib/python3.6/site-packages/OCC/BRep.py", line 20, in swig_import_helper
return importlib.import_module('_BRep')
File "/home/gghe/.conda/envs/gempy36/lib/python3.6/importlib/init.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
ModuleNotFoundError: No module named '_BRep'


Ran 28 tests in 0.099s

FAILED (errors=28)

any suggestions..please?

Cheers,
David

khandler not working

#187 makes changes to original khandler resulting inablility to read in file. Revert to old code previous to this commit?

See tutorial-6-k.py to reproduce the following error:

  File ~/opt/PyGeM/tutorials/tutorial-6-k.py", line 14, in <module>
    new_mesh_points = ffd(mesh_points)

  File "/usr/local/lib/python3.8/dist-packages/pygem-2.0.0-py3.8.egg/pygem/ffd.py", line 560, in __call__
    src_reference_frame_pts = self.psi(src_pts - self.box_origin)

ValueError: operands could not be broadcast together with shapes (0,) (3,) 

Installation problem with Dockerfile

Hi I'm matsubara

I Tried to build PyGeM with Dockerfile(Docker-compose)

But I failed the last Stage

RUN cd $HOME  && \
    cd build && \
    git clone https://github.com/mathLab/PyGeM.git   && \
    cd PyGeM && \
    python setup.py install

The error message is below

Running Pygments-2.6.1/setup.py -q bdist_egg --dist-dir /tmp/easy_install-ng2UJ4/Pygments-2.6.1/egg-dist-tmp-QnN2Vh
  File "build/bdist.linux-x86_64/egg/pygments/lexer.py", line 49
    class Lexer(metaclass=LexerMeta):
                         ^
SyntaxError: invalid syntax

  File "build/bdist.linux-x86_64/egg/pygments/formatters/html.py", line 554
    file=sys.stderr)
        ^
SyntaxError: invalid syntax

  File "build/bdist.linux-x86_64/egg/pygments/style.py", line 171
    class Style(metaclass=StyleMeta):
                         ^
SyntaxError: invalid syntax

  File "build/bdist.linux-x86_64/egg/pygments/cmdline.py", line 161
    print("%s not found!" % what, file=sys.stderr)
                                      ^
SyntaxError: invalid syntax

creating /usr/local/miniconda/lib/python2.7/site-packages/Pygments-2.6.1-py2.7.egg
Extracting Pygments-2.6.1-py2.7.egg to /usr/local/miniconda/lib/python2.7/site-packages
  File "/usr/local/miniconda/lib/python2.7/site-packages/Pygments-2.6.1-py2.7.egg/pygments/cmdline.py", line 161
    print("%s not found!" % what, file=sys.stderr)
                                      ^
SyntaxError: invalid syntax

  File "/usr/local/miniconda/lib/python2.7/site-packages/Pygments-2.6.1-py2.7.egg/pygments/lexer.py", line 49
    class Lexer(metaclass=LexerMeta):
                         ^
SyntaxError: invalid syntax

  File "/usr/local/miniconda/lib/python2.7/site-packages/Pygments-2.6.1-py2.7.egg/pygments/style.py", line 171
    class Style(metaclass=StyleMeta):
                         ^
SyntaxError: invalid syntax

  File "/usr/local/miniconda/lib/python2.7/site-packages/Pygments-2.6.1-py2.7.egg/pygments/formatters/html.py", line 554
    file=sys.stderr)
        ^
SyntaxError: invalid syntax

******

Traceback (most recent call last):
  File "setup.py", line 37, in <module>
    zip_safe=False)
  File "/usr/local/miniconda/lib/python2.7/site-packages/setuptools/__init__.py", line 145, in setup
    return distutils.core.setup(**attrs)
  File "/usr/local/miniconda/lib/python2.7/distutils/core.py", line 151, in setup
    dist.run_commands()
  File "/usr/local/miniconda/lib/python2.7/distutils/dist.py", line 953, in run_commands
    self.run_command(cmd)
  File "/usr/local/miniconda/lib/python2.7/distutils/dist.py", line 972, in run_command
    cmd_obj.run()
  File "/usr/local/miniconda/lib/python2.7/site-packages/setuptools/command/install.py", line 67, in run
    self.do_egg_install()
  File "/usr/local/miniconda/lib/python2.7/site-packages/setuptools/command/install.py", line 117, in do_egg_install
    cmd.run(show_deprecation=False)
  File "/usr/local/miniconda/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 424, in run
    self.easy_install(spec, not self.no_deps)
  File "/usr/local/miniconda/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 666, in easy_install
    return self.install_item(None, spec, tmpdir, deps, True)
  File "/usr/local/miniconda/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 713, in install_item
    self.process_distribution(spec, dist, deps)
  File "/usr/local/miniconda/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 758, in process_distribution
    [requirement], self.local_index, self.easy_install
  File "/usr/local/miniconda/lib/python2.7/site-packages/pkg_resources/__init__.py", line 782, in resolve
    replace_conflicting=replace_conflicting
  File "/usr/local/miniconda/lib/python2.7/site-packages/pkg_resources/__init__.py", line 1065, in best_match
    return self.obtain(req, installer)
  File "/usr/local/miniconda/lib/python2.7/site-packages/pkg_resources/__init__.py", line 1077, in obtain
    return installer(requirement)
  File "/usr/local/miniconda/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 685, in easy_install
    return self.install_item(spec, dist.location, tmpdir, deps)
  File "/usr/local/miniconda/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 711, in install_item
    dists = self.install_eggs(spec, download, tmpdir)
  File "/usr/local/miniconda/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 896, in install_eggs
    return self.build_and_install(setup_script, setup_base)
  File "/usr/local/miniconda/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 1164, in build_and_install
    self.run_setup(setup_script, setup_base, args)
  File "/usr/local/miniconda/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 1150, in run_setup
    run_setup(setup_script, args)
  File "/usr/local/miniconda/lib/python2.7/site-packages/setuptools/sandbox.py", line 253, in run_setup
    raise
  File "/usr/local/miniconda/lib/python2.7/contextlib.py", line 35, in __exit__
    self.gen.throw(type, value, traceback)
  File "/usr/local/miniconda/lib/python2.7/site-packages/setuptools/sandbox.py", line 195, in setup_context
    yield
  File "/usr/local/miniconda/lib/python2.7/contextlib.py", line 35, in __exit__
    self.gen.throw(type, value, traceback)
  File "/usr/local/miniconda/lib/python2.7/site-packages/setuptools/sandbox.py", line 166, in save_modules
    saved_exc.resume()
  File "/usr/local/miniconda/lib/python2.7/site-packages/setuptools/sandbox.py", line 141, in resume
    six.reraise(type, exc, self._tb)
  File "/usr/local/miniconda/lib/python2.7/site-packages/setuptools/sandbox.py", line 154, in save_modules
    yield saved
  File "/usr/local/miniconda/lib/python2.7/site-packages/setuptools/sandbox.py", line 195, in setup_context
    yield
  File "/usr/local/miniconda/lib/python2.7/site-packages/setuptools/sandbox.py", line 250, in run_setup
    _execfile(setup_script, ns)
  File "/usr/local/miniconda/lib/python2.7/site-packages/setuptools/sandbox.py", line 45, in _execfile
    exec(code, globals, locals)
  File "/tmp/easy_install-2ZicmT/Jinja2-3.0.0a1/setup.py", line 6, in <module>
    This function just return the content of README.md
  File "/usr/local/miniconda/lib/python2.7/site-packages/setuptools/sandbox.py", line 419, in _open
    return _open(path, mode, *args, **kw)
TypeError: 'encoding' is an invalid keyword argument for this function

Please check the Dockerfile
Thank you.

Problem in reading stl from exemple 5

Hello, i am currently interesting in using stl files, i tryed exemple 5 but when i run it i got an error with
stl_content = io.STLHandler.read(stl_filename)

telling that :
File "/home/lcalmett/Documents/untitled0.py", line 67, in
stl_content = io.STLHandler.read(stl_filename)

File "/home/lcalmett/anaconda3/envs/py37/lib/python3.7/site-packages/smithers-0.0.1-py3.7.egg/smithers/io/stlhandler.py", line 32, in read
result['points'] = cls.vtk_to_numpy(data.GetPoints().GetData())

AttributeError: 'NoneType' object has no attribute 'GetData'

the exemple 5 work perfetly for VTP files but not STL,
Do you have an idea to solve this issue?
Best regards,
Lucie

Test issue

Followed the following instructions for installation :
The official distribution is on GitHub, and you can clone the repository using

git clone https://github.com/mathLab/PyGeM

To install the package just type:

python setup.py install

For testing the installation, used

python test.py

But got the following error,

`======================================================================
ERROR: Failure: ImportError (No module named OCC.BRep)

Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/nose/loader.py", line 418, in loadTestsFromName
addr.filename, addr.module)
File "/usr/lib/python2.7/dist-packages/nose/importer.py", line 47, in importFromPath
return self.importFromDir(dir_path, fqname)
File "/usr/lib/python2.7/dist-packages/nose/importer.py", line 94, in importFromDir
mod = load_module(part_fqname, fh, filename, desc)
File "/home/pomegranate/Documents/PyGeM/pygem/init.py", line 19, in
from .nurbshandler import NurbsHandler
File "/home/pomegranate/Documents/PyGeM/pygem/nurbshandler.py", line 9, in
from OCC.BRep import BRep_Tool, BRep_Builder, BRep_Tool_Curve
ImportError: No module named OCC.BRep

======================================================================
ERROR: Failure: ImportError (No module named OCC.BRep)

Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/nose/loader.py", line 418, in loadTestsFromName
addr.filename, addr.module)
File "/usr/lib/python2.7/dist-packages/nose/importer.py", line 47, in importFromPath
return self.importFromDir(dir_path, fqname)
File "/usr/lib/python2.7/dist-packages/nose/importer.py", line 94, in importFromDir
mod = load_module(part_fqname, fh, filename, desc)
File "/home/pomegranate/Documents/PyGeM/tests/test_affine.py", line 3, in
import pygem.affine as at
File "/home/pomegranate/Documents/PyGeM/pygem/init.py", line 19, in
from .nurbshandler import NurbsHandler
File "/home/pomegranate/Documents/PyGeM/pygem/nurbshandler.py", line 9, in
from OCC.BRep import BRep_Tool, BRep_Builder, BRep_Tool_Curve
ImportError: No module named OCC.BRep

======================================================================
ERROR: Failure: ImportError (No module named OCC.BRepAlgoAPI)

Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/nose/loader.py", line 418, in loadTestsFromName
addr.filename, addr.module)
File "/usr/lib/python2.7/dist-packages/nose/importer.py", line 47, in importFromPath
return self.importFromDir(dir_path, fqname)
File "/usr/lib/python2.7/dist-packages/nose/importer.py", line 94, in importFromDir
mod = load_module(part_fqname, fh, filename, desc)
File "/home/pomegranate/Documents/PyGeM/tests/test_ffdparams.py", line 6, in
from OCC.BRepAlgoAPI import BRepAlgoAPI_Cut
ImportError: No module named OCC.BRepAlgoAPI

======================================================================
ERROR: Failure: ImportError (No module named OCC.BRep)

Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/nose/loader.py", line 418, in loadTestsFromName
addr.filename, addr.module)
File "/usr/lib/python2.7/dist-packages/nose/importer.py", line 47, in importFromPath
return self.importFromDir(dir_path, fqname)
File "/usr/lib/python2.7/dist-packages/nose/importer.py", line 94, in importFromDir
mod = load_module(part_fqname, fh, filename, desc)
File "/home/pomegranate/Documents/PyGeM/tests/test_filehandler.py", line 5, in
import pygem.filehandler as fh
File "/home/pomegranate/Documents/PyGeM/pygem/init.py", line 19, in
from .nurbshandler import NurbsHandler
File "/home/pomegranate/Documents/PyGeM/pygem/nurbshandler.py", line 9, in
from OCC.BRep import BRep_Tool, BRep_Builder, BRep_Tool_Curve
ImportError: No module named OCC.BRep

======================================================================
ERROR: Failure: ImportError (No module named OCC.BRep)

Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/nose/loader.py", line 418, in loadTestsFromName
addr.filename, addr.module)
File "/usr/lib/python2.7/dist-packages/nose/importer.py", line 47, in importFromPath
return self.importFromDir(dir_path, fqname)
File "/usr/lib/python2.7/dist-packages/nose/importer.py", line 94, in importFromDir
mod = load_module(part_fqname, fh, filename, desc)
File "/home/pomegranate/Documents/PyGeM/tests/test_freeform.py", line 3, in
import pygem.freeform as ffd
File "/home/pomegranate/Documents/PyGeM/pygem/init.py", line 19, in
from .nurbshandler import NurbsHandler
File "/home/pomegranate/Documents/PyGeM/pygem/nurbshandler.py", line 9, in
from OCC.BRep import BRep_Tool, BRep_Builder, BRep_Tool_Curve
ImportError: No module named OCC.BRep

======================================================================
ERROR: Failure: ImportError (No module named OCC.BRep)

Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/nose/loader.py", line 418, in loadTestsFromName
addr.filename, addr.module)
File "/usr/lib/python2.7/dist-packages/nose/importer.py", line 47, in importFromPath
return self.importFromDir(dir_path, fqname)
File "/usr/lib/python2.7/dist-packages/nose/importer.py", line 94, in importFromDir
mod = load_module(part_fqname, fh, filename, desc)
File "/home/pomegranate/Documents/PyGeM/tests/test_idw.py", line 3, in
from pygem import IDW
File "/home/pomegranate/Documents/PyGeM/pygem/init.py", line 19, in
from .nurbshandler import NurbsHandler
File "/home/pomegranate/Documents/PyGeM/pygem/nurbshandler.py", line 9, in
from OCC.BRep import BRep_Tool, BRep_Builder, BRep_Tool_Curve
ImportError: No module named OCC.BRep

======================================================================
ERROR: Failure: ImportError (No module named OCC.BRep)

Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/nose/loader.py", line 418, in loadTestsFromName
addr.filename, addr.module)
File "/usr/lib/python2.7/dist-packages/nose/importer.py", line 47, in importFromPath
return self.importFromDir(dir_path, fqname)
File "/usr/lib/python2.7/dist-packages/nose/importer.py", line 94, in importFromDir
mod = load_module(part_fqname, fh, filename, desc)
File "/home/pomegranate/Documents/PyGeM/tests/test_idwparams.py", line 3, in
from pygem import IDWParameters
File "/home/pomegranate/Documents/PyGeM/pygem/init.py", line 19, in
from .nurbshandler import NurbsHandler
File "/home/pomegranate/Documents/PyGeM/pygem/nurbshandler.py", line 9, in
from OCC.BRep import BRep_Tool, BRep_Builder, BRep_Tool_Curve
ImportError: No module named OCC.BRep

======================================================================
ERROR: Failure: ImportError (No module named OCC.TopoDS)

Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/nose/loader.py", line 418, in loadTestsFromName
addr.filename, addr.module)
File "/usr/lib/python2.7/dist-packages/nose/importer.py", line 47, in importFromPath
return self.importFromDir(dir_path, fqname)
File "/usr/lib/python2.7/dist-packages/nose/importer.py", line 94, in importFromDir
mod = load_module(part_fqname, fh, filename, desc)
File "/home/pomegranate/Documents/PyGeM/tests/test_igeshandler.py", line 5, in
from OCC.TopoDS import TopoDS_Shape
ImportError: No module named OCC.TopoDS

======================================================================
ERROR: Failure: ImportError (No module named OCC.BRep)

Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/nose/loader.py", line 418, in loadTestsFromName
addr.filename, addr.module)
File "/usr/lib/python2.7/dist-packages/nose/importer.py", line 47, in importFromPath
return self.importFromDir(dir_path, fqname)
File "/usr/lib/python2.7/dist-packages/nose/importer.py", line 94, in importFromDir
mod = load_module(part_fqname, fh, filename, desc)
File "/home/pomegranate/Documents/PyGeM/tests/test_khandler.py", line 2, in
import pygem.khandler as uh
File "/home/pomegranate/Documents/PyGeM/pygem/init.py", line 19, in
from .nurbshandler import NurbsHandler
File "/home/pomegranate/Documents/PyGeM/pygem/nurbshandler.py", line 9, in
from OCC.BRep import BRep_Tool, BRep_Builder, BRep_Tool_Curve
ImportError: No module named OCC.BRep

======================================================================
ERROR: Failure: ImportError (No module named OCC.BRep)

Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/nose/loader.py", line 418, in loadTestsFromName
addr.filename, addr.module)
File "/usr/lib/python2.7/dist-packages/nose/importer.py", line 47, in importFromPath
return self.importFromDir(dir_path, fqname)
File "/usr/lib/python2.7/dist-packages/nose/importer.py", line 94, in importFromDir
mod = load_module(part_fqname, fh, filename, desc)
File "/home/pomegranate/Documents/PyGeM/tests/test_nurbshandler.py", line 3, in
from pygem.nurbshandler import NurbsHandler
File "/home/pomegranate/Documents/PyGeM/pygem/init.py", line 19, in
from .nurbshandler import NurbsHandler
File "/home/pomegranate/Documents/PyGeM/pygem/nurbshandler.py", line 9, in
from OCC.BRep import BRep_Tool, BRep_Builder, BRep_Tool_Curve
ImportError: No module named OCC.BRep

======================================================================
ERROR: Failure: ImportError (No module named OCC.BRep)

Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/nose/loader.py", line 418, in loadTestsFromName
addr.filename, addr.module)
File "/usr/lib/python2.7/dist-packages/nose/importer.py", line 47, in importFromPath
return self.importFromDir(dir_path, fqname)
File "/usr/lib/python2.7/dist-packages/nose/importer.py", line 94, in importFromDir
mod = load_module(part_fqname, fh, filename, desc)
File "/home/pomegranate/Documents/PyGeM/tests/test_openfhandler.py", line 3, in
import pygem.openfhandler as ofh
File "/home/pomegranate/Documents/PyGeM/pygem/init.py", line 19, in
from .nurbshandler import NurbsHandler
File "/home/pomegranate/Documents/PyGeM/pygem/nurbshandler.py", line 9, in
from OCC.BRep import BRep_Tool, BRep_Builder, BRep_Tool_Curve
ImportError: No module named OCC.BRep

======================================================================
ERROR: test_import_pg_1 (test_package.TestPackage)

Traceback (most recent call last):
File "/home/pomegranate/Documents/PyGeM/tests/test_package.py", line 10, in test_import_pg_1
import pygem as pg
File "/home/pomegranate/Documents/PyGeM/pygem/init.py", line 19, in
from .nurbshandler import NurbsHandler
File "/home/pomegranate/Documents/PyGeM/pygem/nurbshandler.py", line 9, in
from OCC.BRep import BRep_Tool, BRep_Builder, BRep_Tool_Curve
ImportError: No module named OCC.BRep

======================================================================
ERROR: test_import_pg_10 (test_package.TestPackage)

Traceback (most recent call last):
File "/home/pomegranate/Documents/PyGeM/tests/test_package.py", line 42, in test_import_pg_10
import pygem as pg
File "/home/pomegranate/Documents/PyGeM/pygem/init.py", line 19, in
from .nurbshandler import NurbsHandler
File "/home/pomegranate/Documents/PyGeM/pygem/nurbshandler.py", line 9, in
from OCC.BRep import BRep_Tool, BRep_Builder, BRep_Tool_Curve
ImportError: No module named OCC.BRep

======================================================================
ERROR: test_import_pg_11 (test_package.TestPackage)

Traceback (most recent call last):
File "/home/pomegranate/Documents/PyGeM/tests/test_package.py", line 46, in test_import_pg_11
import pygem as pg
File "/home/pomegranate/Documents/PyGeM/pygem/init.py", line 19, in
from .nurbshandler import NurbsHandler
File "/home/pomegranate/Documents/PyGeM/pygem/nurbshandler.py", line 9, in
from OCC.BRep import BRep_Tool, BRep_Builder, BRep_Tool_Curve
ImportError: No module named OCC.BRep

======================================================================
ERROR: test_import_pg_2 (test_package.TestPackage)

Traceback (most recent call last):
File "/home/pomegranate/Documents/PyGeM/tests/test_package.py", line 14, in test_import_pg_2
import pygem as pg
File "/home/pomegranate/Documents/PyGeM/pygem/init.py", line 19, in
from .nurbshandler import NurbsHandler
File "/home/pomegranate/Documents/PyGeM/pygem/nurbshandler.py", line 9, in
from OCC.BRep import BRep_Tool, BRep_Builder, BRep_Tool_Curve
ImportError: No module named OCC.BRep

======================================================================
ERROR: test_import_pg_3 (test_package.TestPackage)

Traceback (most recent call last):
File "/home/pomegranate/Documents/PyGeM/tests/test_package.py", line 18, in test_import_pg_3
import pygem as pg
File "/home/pomegranate/Documents/PyGeM/pygem/init.py", line 19, in
from .nurbshandler import NurbsHandler
File "/home/pomegranate/Documents/PyGeM/pygem/nurbshandler.py", line 9, in
from OCC.BRep import BRep_Tool, BRep_Builder, BRep_Tool_Curve
ImportError: No module named OCC.BRep

======================================================================
ERROR: test_import_pg_4 (test_package.TestPackage)

Traceback (most recent call last):
File "/home/pomegranate/Documents/PyGeM/tests/test_package.py", line 22, in test_import_pg_4
import pygem as pg
File "/home/pomegranate/Documents/PyGeM/pygem/init.py", line 19, in
from .nurbshandler import NurbsHandler
File "/home/pomegranate/Documents/PyGeM/pygem/nurbshandler.py", line 9, in
from OCC.BRep import BRep_Tool, BRep_Builder, BRep_Tool_Curve
ImportError: No module named OCC.BRep

======================================================================
ERROR: test_import_pg_5 (test_package.TestPackage)

Traceback (most recent call last):
File "/home/pomegranate/Documents/PyGeM/tests/test_package.py", line 26, in test_import_pg_5
import pygem as pg
File "/home/pomegranate/Documents/PyGeM/pygem/init.py", line 19, in
from .nurbshandler import NurbsHandler
File "/home/pomegranate/Documents/PyGeM/pygem/nurbshandler.py", line 9, in
from OCC.BRep import BRep_Tool, BRep_Builder, BRep_Tool_Curve
ImportError: No module named OCC.BRep

======================================================================
ERROR: test_import_pg_6 (test_package.TestPackage)

Traceback (most recent call last):
File "/home/pomegranate/Documents/PyGeM/tests/test_package.py", line 30, in test_import_pg_6
import pygem as pg
File "/home/pomegranate/Documents/PyGeM/pygem/init.py", line 19, in
from .nurbshandler import NurbsHandler
File "/home/pomegranate/Documents/PyGeM/pygem/nurbshandler.py", line 9, in
from OCC.BRep import BRep_Tool, BRep_Builder, BRep_Tool_Curve
ImportError: No module named OCC.BRep

======================================================================
ERROR: test_import_pg_7 (test_package.TestPackage)

Traceback (most recent call last):
File "/home/pomegranate/Documents/PyGeM/tests/test_package.py", line 34, in test_import_pg_7
import pygem as pg
File "/home/pomegranate/Documents/PyGeM/pygem/init.py", line 19, in
from .nurbshandler import NurbsHandler
File "/home/pomegranate/Documents/PyGeM/pygem/nurbshandler.py", line 9, in
from OCC.BRep import BRep_Tool, BRep_Builder, BRep_Tool_Curve
ImportError: No module named OCC.BRep

======================================================================
ERROR: test_import_pg_8 (test_package.TestPackage)

Traceback (most recent call last):
File "/home/pomegranate/Documents/PyGeM/tests/test_package.py", line 38, in test_import_pg_8
import pygem as pg
File "/home/pomegranate/Documents/PyGeM/pygem/init.py", line 19, in
from .nurbshandler import NurbsHandler
File "/home/pomegranate/Documents/PyGeM/pygem/nurbshandler.py", line 9, in
from OCC.BRep import BRep_Tool, BRep_Builder, BRep_Tool_Curve
ImportError: No module named OCC.BRep

======================================================================
ERROR: Failure: ImportError (No module named OCC.BRep)

Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/nose/loader.py", line 418, in loadTestsFromName
addr.filename, addr.module)
File "/usr/lib/python2.7/dist-packages/nose/importer.py", line 47, in importFromPath
return self.importFromDir(dir_path, fqname)
File "/usr/lib/python2.7/dist-packages/nose/importer.py", line 94, in importFromDir
mod = load_module(part_fqname, fh, filename, desc)
File "/home/pomegranate/Documents/PyGeM/tests/test_radial.py", line 3, in
import pygem.radial as rad
File "/home/pomegranate/Documents/PyGeM/pygem/init.py", line 19, in
from .nurbshandler import NurbsHandler
File "/home/pomegranate/Documents/PyGeM/pygem/nurbshandler.py", line 9, in
from OCC.BRep import BRep_Tool, BRep_Builder, BRep_Tool_Curve
ImportError: No module named OCC.BRep

======================================================================
ERROR: Failure: ImportError (No module named OCC.BRep)

Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/nose/loader.py", line 418, in loadTestsFromName
addr.filename, addr.module)
File "/usr/lib/python2.7/dist-packages/nose/importer.py", line 47, in importFromPath
return self.importFromDir(dir_path, fqname)
File "/usr/lib/python2.7/dist-packages/nose/importer.py", line 94, in importFromDir
mod = load_module(part_fqname, fh, filename, desc)
File "/home/pomegranate/Documents/PyGeM/tests/test_rbfparams.py", line 7, in
from pygem import RBFParameters
File "/home/pomegranate/Documents/PyGeM/pygem/init.py", line 19, in
from .nurbshandler import NurbsHandler
File "/home/pomegranate/Documents/PyGeM/pygem/nurbshandler.py", line 9, in
from OCC.BRep import BRep_Tool, BRep_Builder, BRep_Tool_Curve
ImportError: No module named OCC.BRep

======================================================================
ERROR: Failure: ImportError (No module named OCC.TopoDS)

Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/nose/loader.py", line 418, in loadTestsFromName
addr.filename, addr.module)
File "/usr/lib/python2.7/dist-packages/nose/importer.py", line 47, in importFromPath
return self.importFromDir(dir_path, fqname)
File "/usr/lib/python2.7/dist-packages/nose/importer.py", line 94, in importFromDir
mod = load_module(part_fqname, fh, filename, desc)
File "/home/pomegranate/Documents/PyGeM/tests/test_stephandler.py", line 5, in
from OCC.TopoDS import TopoDS_Shape
ImportError: No module named OCC.TopoDS

======================================================================
ERROR: Failure: ImportError (No module named OCC.BRep)

Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/nose/loader.py", line 418, in loadTestsFromName
addr.filename, addr.module)
File "/usr/lib/python2.7/dist-packages/nose/importer.py", line 47, in importFromPath
return self.importFromDir(dir_path, fqname)
File "/usr/lib/python2.7/dist-packages/nose/importer.py", line 94, in importFromDir
mod = load_module(part_fqname, fh, filename, desc)
File "/home/pomegranate/Documents/PyGeM/tests/test_stlhandler.py", line 3, in
import pygem.stlhandler as sh
File "/home/pomegranate/Documents/PyGeM/pygem/init.py", line 19, in
from .nurbshandler import NurbsHandler
File "/home/pomegranate/Documents/PyGeM/pygem/nurbshandler.py", line 9, in
from OCC.BRep import BRep_Tool, BRep_Builder, BRep_Tool_Curve
ImportError: No module named OCC.BRep

======================================================================
ERROR: Failure: ImportError (No module named OCC.BRep)

Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/nose/loader.py", line 418, in loadTestsFromName
addr.filename, addr.module)
File "/usr/lib/python2.7/dist-packages/nose/importer.py", line 47, in importFromPath
return self.importFromDir(dir_path, fqname)
File "/usr/lib/python2.7/dist-packages/nose/importer.py", line 94, in importFromDir
mod = load_module(part_fqname, fh, filename, desc)
File "/home/pomegranate/Documents/PyGeM/tests/test_unvhandler.py", line 3, in
import pygem.unvhandler as uh
File "/home/pomegranate/Documents/PyGeM/pygem/init.py", line 19, in
from .nurbshandler import NurbsHandler
File "/home/pomegranate/Documents/PyGeM/pygem/nurbshandler.py", line 9, in
from OCC.BRep import BRep_Tool, BRep_Builder, BRep_Tool_Curve
ImportError: No module named OCC.BRep

======================================================================
ERROR: Failure: ImportError (No module named OCC.BRep)

Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/nose/loader.py", line 418, in loadTestsFromName
addr.filename, addr.module)
File "/usr/lib/python2.7/dist-packages/nose/importer.py", line 47, in importFromPath
return self.importFromDir(dir_path, fqname)
File "/usr/lib/python2.7/dist-packages/nose/importer.py", line 94, in importFromDir
mod = load_module(part_fqname, fh, filename, desc)
File "/home/pomegranate/Documents/PyGeM/tests/test_vtkhandler.py", line 3, in
import pygem.vtkhandler as vh
File "/home/pomegranate/Documents/PyGeM/pygem/init.py", line 19, in
from .nurbshandler import NurbsHandler
File "/home/pomegranate/Documents/PyGeM/pygem/nurbshandler.py", line 9, in
from OCC.BRep import BRep_Tool, BRep_Builder, BRep_Tool_Curve
ImportError: No module named OCC.BRep


Ran 27 tests in 0.064s

FAILED (errors=27)
`

RuntimeError: Shapes not loaded.

The objective
I am trying to import .step file and do the deformation

Already tried tests
from pygem.cad import CADDeformation as CAD
CAD.read_shape('PEARLmesh_sharmi v1v5.step')

Problems with complex geometric models (multiple faces and shells)

Hello Mr. Salmoiraghi and Mr. Tezzele,

We would like to thank you for providing this useful tool PyGeM.
In the context of our application, we intend to use several PyGeM functionalities for the geometric modelling of organs. However, we have encountered some problems because the processing involves complex geometries imported from CAD files (iges or step), which contain, for example, shells composed of multiple faces. These problems include:

  • importing multiple geometric entities (shells, faces etc.)
  • linking multiple geometric entities (linking edges into a single wire, trimming the surface with the wire, linking multiple surfaces to a single shell etc.)
  • surface repairing before exporting to a CAD file (iges or step)

Based on the source code implemented in PyGeM, we have applied some modification to fix these issues. Hence, we would like to propose and work on improvements on such features, which will enable the package to process more complex geometries. The following classes and functions will be concerned by the improvement of input/output functionalities:

  • In class Nurbshandler: parse() and write()
  • In class Igeshandler: load_shape_from_file()
  • In class Stephandler: load_shape_from_file()

Sincerely,
Zhifan JIANG

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.