Shrinkwrap tool

In this post, mihai.s provided an interesting presentation to the shrinkwrap concept, and how it is implemented in Blender and could be kind of simulated in Sketchup.

I open this thread as a follow up, in order to collect and discuss some requirements and specificities, if this has to be implemented in Sketchup as an extension.

So far I understand that:

  • The original wrapping object is a 2D shape (or maybe always a flat rectangular sheet)
  • The wrapped solid is a 3D shape. It can be any shape, including a closed volume like a sphere.
  • the wrapping sheet is sudivided as a regular mesh

What I miss is the benefit of shrinkwrapping, except in the cases where you want to reconstruct (or patch) a mesh with a different resolution.

3 Likes

Some time ago I had an idea of 3d printing little models of the houses on a new development to give to the new owners when they sign the contract.

My model(s) were fully detailed inside and out with the usual array of tags, groups, components etc etc.

I tried making a single ‘shrink wrapped’ skin of the completed house but it took too long to be viable with all the exploding and trashing of unwanted elements.

If I could have placed a cube/sphere/whatever that enclosed the house and then have it ‘shrink’ and tessellate as necessary so that I end up with a single skin, single colour solid shaped like the house it would have been a boon.

I prepare masterplans that involve hundreds of urban entities; houses, trees, vehicles, etc. Primarily these are for urban design, and client communication/visualisation. )
When each entity involves 20mb of nested conponents the model is too dense. I’ love to be able to create an outer skin only.
However making everying one single colour or pattern would not be ideal. Nor would a simplification of the outer skin. Youd jave to be careful woth how thebtoolnhandles holes or gaps…example an opening in a roof or a wheel would need to remain as an opening, not be covered over.

The second use case area i can think of would be in dealing with survey scans, 3d surfaces and other complex terrain data.
Shrink wrapping multiple objects could allow them to be merged. This process would benenfit from some simplification optioms (lower densoty of triangles) and tools like filling small holes or gaps in a mesh.

One final use case that is quite specific to landscape/urban and civil design (and that i would pay money for), is the ability to drape a cloth-like surface down on to a complex terrain that is constructed using “steps” (eg by push pulling contours or rectangles). This gives a result that is different , but may look similar, to a subd surface.

Imagine you have a sphere made with the classic method of creating two circles and using the follow me tool. The sphere is inside a bigger cube, and you want the cube geometry to shrink to the size of the sphere and wrap it so the cube geometry becomes an sphere but with a different topology, obviously the cube needs to have subdivisions otherwise it won’t wrap around the sphere, it will just shrink. I’ll make a blender video showing how it works so you can see with other examples beside the sphere and cube. This tool is excellent for retopology.

Here´s a blender demo of how shrinkwrap works, there´s an sphere and a bigger cube which was subdivided previously, I applied the modifier to the cube and selected as target the sphere.

Here´s a method I use sometimes to shrinkwrap using clothworks, I didnt set the cloth to get better results but the idea is to show how shrinkwrap could work in Sketchup

Finally Align Ends, It usually gives the best results, but it works just on one direction at the time and its limited to the axes so there’s no more degrees or a target where the mesh should move towards, it just hits with whatever is in front of the mesh, in the video´s case there´s nothing interfering but I use this tool usually to make retopology of terrains made with sandbox, sometimes the terrain has elements on it like houses or trees, if I use the align ends plugin without moving the terrain on any direction separating it from what´s on top, the edges will collide with houses or trees before the terrain.

1 Like

Thanks, Fredo!

It can be 2D, but also 3D.

Especially now with AI that generates 3D objects just from a picture, but generates a high poly model (triangulated or sometimes quads) you can create the low poly version for use in SketchUp and LayOut.

Useful for:

  • interior designers and architects;
  • for landscapers.

Something like that…

Thanks to all for the explanations and descriptions.

So, Shrinkwrap is mainly dealing with meshing or remeshing the envelop of 3D shapes. This is indeed a big use case for 3D modelling.

A little bit of terminology. How would you call:

  • the object which is wrapped? - Object?
  • the wrapping object, i.e. the sheet or the cube grid in the example below? - Enveloppe?
2 Likes

There is an extension called ‘Super Shrinkwrap’ and it uses the terms: Source and Target.

Here’s a tutorial explaining the shrinkwrap modifier functions one by one.

Yes! :slight_smile:

Thanks, Fredo!

Yeah thats definitely one option (a LOT of clicks to get to the result though…!)

This (not real , example only) is a little idea of the type of model that produce at a Conceptual stage.
While this looks very simplistic, these models are super helpful to establishing road levels, testing earthworks volumes, road gradients, etc. Very quick to make, edit and adjust.

I take roading and lift it up, and adjust all the heights of Plot.. Then i Drop (DropGC) the houses onto the surfac. Later i may come back in and smooth it all out.

in some places, where the level changes are too great, i may require a retaining wall between the houses.

My issue is that the steps between each Lot or piece of road are difficult to come back and smooth out.
Create Surface from Contours doesnt do it - it triangulates in a strange manner.
Sub Divide & Smooth doesnt work.
I need a ‘cloth’ draped over top, weit the “weight” of the cloth to be adjustable.
This gives some control over the amount of simplification of the original geometry.
WIthout simplification adjustment, theres always going to be results that look wrong.

Hi Sam,

I made several clicks to show what you can do and the fact that you can change the settings at any time.

I’ll make a model based on the picture you posted and test what works best and fastest with what you want to achieve.

Tell me, @AK_SAM, is this what a model of yours that you want to prepare looks like?

teren-sam.skp (159.3 KB)

// edit

With Vertex Tools in SketchUp

3 Likes

Yes - that’s really good! That result is definitely something that fits my workflow,
Not sure why buit I’ve never discovered vertex tools.

Thanks!

:slight_smile:
Along with SUbD and QuadFace Tools, Vertex Tools is one of the best, easy to use and most useful extensions in SketchUp. Thanks, @thomthom!

For Outer Shell, this workflow would be more suitable:

  • Remesh and Decimate modifiers

Then export it as DAE, OBJ and import it in SketchUp.

I experimented a little with this a while ago trying to help a customer who had messy terrain in SketchUp. Kinda wanted it to be link using clothworks to drop a cloth over the terrain.

I made it about as far as being able to drop a grid over a bunch of geometry.

Still pretty messy :smiley:

I like the way that the terrain is generated from the point clouds in SE, I almost wanted that, but for existing geometry

1 Like

Hi Adam, did you want to generate a hilly terrain/surface from those geometric shapes?

One method would be this: starting with a Plane, apply a Subdivision modifier, then the Shrinkwrap modifier, and then another Subdivision modifier. This way, you have control over the surface area you get.

You can do the same steps in SketchUp, using mc-AlignEnds and SUbD, but you don’t have live preview and real-time editing. And you will probably also need to move some vertices with Vertex Tools.

Just throwing my $0.02 into this: developing a shrink wrapping functionality could possibly take a lesson from those of us who frequently work with LiDAR/point clouds.

The Scan Essentials plugin in a Studio license is essentially “shrink wrapping” the ground when creating a ground or surface mesh. One functionality I would love to see brought over from the SE tools is the “Add Detail” to an object that is resulted from the initial shrink wrap: the faces from the initial step are not a “one size fits all”. By that, I mean being able to select sections of the shrink wrap output and divide their minimum vertices length to add detail where needed would be fantastic.
Instead of “shrink wrapping”, I’ve always thought the above detail add would best be visualized by a balloon: if the object that needs to be shrink wrapped were hollow, and you stuck a balloon in it and then began inflating it, the balloon would continue to expand and fill into the corners of each crevasse. I got this idea from CloudCompare where when you use the CSF Filter plugin to classify ground points by draping a cloth from the bottom up.
The CSF Filter plugin references the paper that the cloth approach is based on and offers a link to download the paper: https://www.researchgate.net/profile/Wuming_Zhang2

This is the main use case.
What Blender calls Shrinkwrap is called “Conform” in 3dsMax and Maya (which is what they originally copied, I guess) and it’s 90% of the times used for retopology (there’s a conform brush too, which is super useful, and a conform-relax brush which is even more useful).
In 10% of cases is used to project road meshes on terrain and that kind of stuff (which in Sketchup is most likely done with “Flowify”, “Drop” or “Align Ends”), but yeah, retopology is the main use of this kind of tool.

It’s funny (and confusing) that the Blender guys called Shrinkwrap the the less powerful “Conform” modifier, while the original Maya “Shrinkwrap” Modifier (which is called “Skinwrap” in 3dsMax) is way more interesting, because is sort of skinning a mesh to a more lowpoly object in order to deform it easily.

I made a quick example here to clarify:

2,6k vertices mesh with simulated cloth (really fast to simulate)

Nearly 2 millions vertices mesh skinwrapped to the lowpoly one (would be basically impossible to simulate this without skinwrap)

I understand that requirements may somehow be opposite.

For the houses, the objective is to get the enveloppe, so more like an outer shell tool, which implies some specific treatment of vertical faces (they correspond to the same vertices of the wrapping object).

Otherwise, it seems that Shirnkwrap does better correspond with a remesh (both in dimensions and in cell shape, which can be quads or octogons). Here you interpolate or extrapolate.