Grasshopper

algorithmic modeling for Rhino

I'm writing a Grasshopper program to make local edits to a mesh model of a hand. Specifically, I want to create offsets or bulges of varying sizes at the fingertips. My plan so far has been to:

deconstruct the mesh into points,

identify the tips using Melkman's Convex Hull Algorithm,

select a region at the tip by comparing normal vectors,

scale the group of points away from their arithmetic mean,

and then apply a PointDeform to the region to edit the mesh with control points.

Unfortunately, the transformations I've been producing have been really rough and far from the rounded bulges I'm looking for. Does anyone have any advice for how to produce smoother offsets at specific points on a mesh?

Current offset creation based on scaling control points away from arithmetic mean of fingertip

Normal vectors at maxima determined by Melkman Algorithm (I know they're a little wonky)

Two automatically created groups of fingertip control points

Result of scaling :(

Views: 439

Attachments:

Replies to This Discussion

Is the normal comparison to find the local group a given? Could you not find all the connected points on the mesh that are within some fixed distance from the tip points? If you define your local group that way, you can then offset the points within the group, along their own normal with an amount that varies smoothly based on distance to tip.

RSS

About

Translate

Search

Photos

  • Add Photos
  • View All

Videos

  • Add Videos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service