SMART Solutions Network


Thank you for your Smart Form plug-in for GH.  Thus far, it's been very useful to me in outputting proof-of-concept models to my collaborators. 

I'm particularly interested in the K-Means clustering and the output from that algorithm in your component.  What has been very nice is that it allows for disjoint meshes as an input, thereby cross-referencing the two meshes to find the clusters between them.  Theoretically, this would mean the panels could be shared between the different topologies, assuming they have very similar or exact Gaussian curvature (in particular, minimal surfaces).

My question has to do with the output of the BReps.  I've noticed with both quads and triangular mesh faces that the output is quite accurate in terms of interior angles and area.  Of course panels are then lifted away from one another to achieve this, thereby breaking free from the base mesh which is expected.  Is it possible for your tools to search for a solution - negotiating between the base form and the optimized result? I realize minimizing the tolerance input could solve this for certain meshes, but not for others, so I'm curious to learn more about the relationship between the tolerance setting and the output faces.

In short, your insight as to how to put the pieces back together would be very much appreciated. 



Views: 222

Reply to This

Replies to This Discussion

Hi Nick,

thank you for your question. The SmartClustering component, what it does in very simple terms. It groups the different panels according to their similarities. Once it has categorised these intro the desired number of clusters. It will place the average panel (master panel) from an specific group in the location of the panels of that same group. 

If you cluster by group, lets say 10 groups, the algorithm will group all the panels into a maximum number of 10 groups. Having that said, as the you increase the number of groups to cluster, the precision of of the master panel to every other panel placed will be minimised.

The algorithm does not change the underlying geometry. Does this clarify your conception on how SmartClustering works? Also check out the following link ( hope this helps.

If you have some interesting projects, remember to post. It is easier for to help when there is something we can see.

Hi Miguel,

Thanks for the response, and sorry for my late reply.  The second paragraph basically explains it, but was hoping for a bit of insight as to how to go about changing the base geometry so that fewer master panels would be necessary.  I realize part of the solution requires well defined meshes to assist the algorithm, so when I'm closer to realizing scheme formally, I'm sure a few more questions will arise.

Hi Nick,

you are on the right track. The best way to achieve what you are asking for is to actually work with flat surfaces (but I am guessing that is not the case). After that you can jump into single curvature surfaces (cylindrical, conical etc.) and last but not least double curvature surfaces. Also take into account into how you tessellate these will impact on your clustering outcome. By taking all these into consideration you will achieve a better result.

If you have any images of your work it would be great to see what you are working on.


© 2021   Created by Dr. Shrikant B. Sharma.   Powered by

Badges  |  Report an Issue  |  Terms of Service