algorithmic modeling for Rhino

Implementation of the ShapeOp C++ geometry processing library in Rhino/Grasshopper 64 Bit using GHPython and the Python standard foreign function library ctypes. The examples in these demos implement the Plankton mesh library by Daniel Piker and Will Pearson. See more and download here:

Views: 1372


You need to be a member of Grasshopper to add comments!

Join Grasshopper

Comment by AS Abi on August 19, 2017 at 11:31pm

Hi Anders, I have done installing ShapeOP library as per instructions, still in python script I cannot load the library.My machine is 64 bit.

Comment by Anders Holden Deleuran on February 28, 2017 at 11:24am

Yup, that'll be an issue. If you want to run 32 bit you'll to need compile the binaries yourself (although, there might actually already be some on the ShapeOp website, come to think of it).

Comment by Zuardin Akbar on February 28, 2017 at 10:09am

Hi Anders,

Why do I still have the problem of loading the ShapeOP library using ctypes when I already set the path for the GH libraries folder in windows and python editor as well put the files in the libraries folder? Do you think it might be the issue with 32/64 bit? I'm running on Rhino 32 bit btw.

Comment by Anders Holden Deleuran on August 12, 2015 at 2:39am

Uh also, another pretty nifty constraint is a feature preserving Laplacian smoothing. I'm not sure if that is available in other GH plugins.

Comment by Anders Holden Deleuran on August 12, 2015 at 2:16am

Hi Nik, must have missed your reply. Apologies. Conceptually ShapeOp is quite similar to Kangaroo2 (i.e. the solver is projection-based as opposed to using explicit or implicit integration methods) and has similar (if fewer) constraints currently available. I suppose that the biggest difference is that ShapeOp is written in C++ and thus could be implemented in any environment (and potentially be ultra-super-duper-fast). It does also have a few constraints that Kangaroo does not (e.g. similarity), but I'm sure one (i.e. Daniel :D) could quickly cook that one one up. I would recommend reading the papers available on the LGG website for more info and watch the videos. We also have a paper coming up for the Design Modelling Symposium which presents both the library, the GHPython implementation and some examples of how one might use it. For the low-level discussions on how the different solvers work I shall like to pass the mic to Daniel ;)

Comment by Luis García Lara on April 29, 2015 at 8:49am

Thanks Anders!

Comment by Anders Holden Deleuran on April 28, 2015 at 7:53am
Comment by Anders Holden Deleuran on April 28, 2015 at 7:47am

Hi Luis, we recently had a small workshop at ETH using these same example files. This issue would occur on several of the machines. In the end I got all of them working by placing ShapeOp.0.1.0.dll and vcomp120.dll only in the Grasshopper Libraries folder, unblocking them and adding the Grasshopper Libraries folder to the paths read by Rhino Python like so:

1) In Rhino type in the command "EditPythonScript".

2) In this Python editor go "Tools -> Options -> Files".

3) Here you will see an overview of the directories which are currently referenced.

4) Add a reference to the Grasshopper Libraries folder.

If you can’t see the Grasshopper Libraries path it is likely “hidden”, if so unhide it using the Windows file explorer.

Hope that helps,


Comment by Luis García Lara on April 24, 2015 at 9:05am

Hi Anders, 

do you know why i'm receiving this error message when i load sheet metal example?

Comment by Daniel Hambleton on February 3, 2015 at 9:34am

Ah yes, I found that link just after commenting.

Great stuff!





  • Add Photos
  • View All


  • Add Videos
  • View All

© 2020   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service