Grasshopper

algorithmic modeling for Rhino

Hi everyone,

I am running into the problem of offsetting a continuous surface. I need it watertight for 3d print.

Seems that the normals at the connection edge are oriented differently, hence my impossibility of offsetting smoothly. I have tried also to offset same distance both sides of the surface with no success.

I am trying WeaverBird to do same operation, see attached . No solution yet, any hints?

Much appreciated!

Views: 3543

Attachments:

Replies to This Discussion

I got something to work kind of.  I think to get it done without some manual tweaking is an impossibility because of the mobius strip like qualities of the mesh. I had to pull the edges apart at two places to make it a regular mesh, then it could be offset and thickened. It would require a little manual work to rejoin it again

Attachments:

Hi Kyle Faulkner

Thanks a lot.

I tried tweaking and also to use the components that you suggest. It improves the offset result but I cant manage to resolve it.

Nevertheless there is a key issue: I would like the single surface initial mesh to be "correctly" built in order to be a "base mesh" to apply other GH modifiers on. (See attached) 

...

Basically I was running an "offset mesh" test, to display the initial mesh constituent errors. 

Thanks a lot for possible solutions!

Attachments:

This sort of works with exoskeleton but when I first tried it, exoskeleton threw up an error which I think was because the directions of the mesh face edges were different for some faces. When I did it face by face, some faces worked and some didn't. When I switched the directions of the face edges, the ones that didn't work worked and vice-versa.

Cytoskeleton gave a weird result too with strange lines extending off into the distance.

I used weaverbird's MeshEdges to sort it all out but the exoskeleton result has some corners that do not round nicely.

See what you think...

Attachments:

Ah, the problem with the exoskeleton result is that it appears to be twisting along some edges. I think this might be due to the mobius effect of the input mesh.

Hi Martyn 

Thanks a lot for that, it is good result. Though I seem to be having still a fragmented like output surface

Yes I think it is because the offset surface is twisting at some ridges. I tried again welding all, unify normals, check naked edges..etc and nothing. I am very intrigued.

Well...this is kinda attempting to do Klein bottle stuff.

I've prepared a small tutorial about "south/north" mesh Face(s) Normal(s) Vector(s) matters:

Here's 2 C# things:

A. The first, exposes normals and makes an imaginary offset in order to vizualize the situation.

B. The second creates another mesh (face by face) taking into account the dot product between a given Face Normal and the Plane.WorldXY.Zaxis vector (OK, that's naive but it's written in a great hurry). Then attempts to solidify the mesh (solid = newMesh.Offset(d, true);) ... and then checks the result and reports if it's really a "solid" (i.e. Closed) mesh.

more soon

Attachments:

Hi Peter,

Looks great thanks. Yes I can obtain the centers now & visualize normals.

Second image looks great & solved! Curious to apply V2. My only question would be if there is any way to preserve the current faces subdivision level (since my aim is to "weave"/apply exoskeleton). Avoiding triangulating any further the faces so I can obtain larger diameter holes!

Thanks a lot!

Er ... hmm ... looks "great" but great it isn't (see what C# reports).

It's the classic Mobius strip thingy, you know.

Triangulation (1= force quads, 2 = force triangles, 3 = rely on Karma, 4 = go for an espresso) options would be available in V2 (and hopefully some working solution).

If this was a nurbs (I hate meshes) I could resolve it in seconds (get a BrepFace > extrude both sides at once [option make solid] > create "tmp" openings (straight and/or curvy) > boolean these from that > bingo. 

more soon

BTW: this is the very same case (topologically speaking) with your mesh: a Mobius paranoid thing (a bit more "elaborated")

And this illustrates why this "Mobius" mesh is ... er ... a handful to offset (white = mesh outlines, lime green = mesh naked edges). This happens because actually a  M1 "Mobius outline" is a single polyline/nurbs/whatever.  

It's like saying that when walking along a Mobius stripe you could stay on the "same side" (but if you could ... that wouldn't be a Mobius thing, he he).


Specifically, this is the error we talked about. This is generated with the exoskeleton, baking with catmull-clark subdivision.

This problem with the normals at the ridges won't let me process a file for 3d print.

If what you want to do is an exoskeleton, you just have to weld the mesh beforehand (see attachment). If you need to make an offset/shell of the base mesh, you'll need to do some manual work since the mesh is non-manifold - like Kyle mentioned.

Attachments:

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