How to split a skin through a polyextrude?
2577 4 1- Josep Lluis Fita
- Member
- 21 posts
- Joined: Nov. 2015
- Offline
- Konstantin Magnus
- Member
- 670 posts
- Joined: Sept. 2013
- Offline
Hi Josep,
you can simply turn a grid into a brick pattern by making its primitives ‘unique’ e.g. with a fuse SOP. Then shift the primitive rows to left and right either with a group SOP and transforms or by wrangling:
Next transform the pattern into a half-cylinder.
The rest is a matter of extruding, beveling and correcting the normals.
you can simply turn a grid into a brick pattern by making its primitives ‘unique’ e.g. with a fuse SOP. Then shift the primitive rows to left and right either with a group SOP and transforms or by wrangling:
// MEASURE AND COUNT int hor = chi('horizontal') - 1; float tile = 1 / float(hor); float offset = tile * 0.25; // IDENTIFY ANY OTHER ROW float any_other = @primnum % ( hor * 2) ; any_other += 0.1; // ASSIGN SHIFT DIRECTION float shift = sign(any_other - hor); @P.x += offset * shift; // MOVE BACK EDGES a.k.a. CUT-OFF @P.x = clamp(@P.x, -0.5, 0.5);
Next transform the pattern into a half-cylinder.
// CONVERT PLANE TO HALF-CYLINDER vector bbox = relbbox(0, @P); @P.x = sin(@P.x * $PI); @P.z = bbox.y; @P.y = sin(bbox.x * $PI);
The rest is a matter of extruding, beveling and correcting the normals.
https://procegen.konstantinmagnus.de/ [procegen.konstantinmagnus.de]
- Konstantin Magnus
- Member
- 670 posts
- Joined: Sept. 2013
- Offline
In your setup: Dissolve first and extrude later? Also set polyextrude to ‘divide into: individual elements’ and activate ‘output back’.
https://procegen.konstantinmagnus.de/ [procegen.konstantinmagnus.de]
- Josep Lluis Fita
- Member
- 21 posts
- Joined: Nov. 2015
- Offline
- Josep Lluis Fita
- Member
- 21 posts
- Joined: Nov. 2015
- Offline
-
- Quick Links