Unroll 3d model with texture


#1

Hello, I have some 3d sphere that I would like to unroll from 3d to 2d and print it on paper. Size of sphere is 80cm in diameter. I managed to split sphere to 8 equal objects and print it 1:1 without texture applied.

My question is how can I unroll object with applied texture on it? So I can print that parts with high resolution textures on it. Is there some solution for this within Rhino or some plug-in for Rhino that can do this?

For now the only possible way was to unroll texture manually and apply it to 3d unrolled parts, but that just takes to much time on some models.

Thanks.


Same texture used on all UV mapped surfaces
(Brian James) #2

This is how I’d do it with straight Rhino 5. The density of the meshing will control your resolution as the vertices become pixels.

Unroll_Texture_bjames.3dm (1.5 MB)


#3

Hi Brian,

After numerous attempts, I have not figured out how to unroll the 3d model without distorting the texture.
I tried recreating the model you created, using the same steps. When I try to use “ComputeVertexColors” it does not bake the colors from the texture map into vertices.

Could you please explain a little more in depth on how you unrolled the surface without distorting the texture?

Thank you,

Johan


(Brian James) #4

Hi Johan,

Can you post your 3dm file and any texture maps you applied to it? At a guess, I’m wondering if you used the Mesh command to make a mesh object from the split surface. You’ll need to have a mesh to bake color into verts. The unrolled surface is then just a target for flowing the mesh.


#5

Hello.
Sorry for my English.
I wanted to refresh the topic.
I tried according to the method described, but UnrollSrf does not work:

"At least one surface you are trying to unroll is not developable because it is doubly curved.
If you want to unroll it anyway, try using the Smash command.
Unrolling doubly curved surfaces will produce inaccurate results. "

I tried to squish method but bad breaks.

A method smash breaks only areas without the graphics.

Can you help me?


(Pascal Golay) #6

Hi Maciej - Squish should work but it does run into problems on polar objects as it approaches the poles. I also find that the results are better if you mesh the surfaces to a fairly dense and even mesh, using the Detailed controls in Mesh, then Squish the mesh, the results are better. If (again, for a sphere) you know that the pattern will repeat evenly, it may be just as good to squish a single slice that corresponds to a repeat of the pattern. You can apply Spherical mapping to the sphere such that the pole of the mapping sphere is 90 degrees from the sphere’s pole and slice the sphere that way, so that the pieces and mapping do not converge on the sphere poles.

-Pascal


#7

Ok. Thank you for your answer.
As for the space pole it does not matter to me. But for this example, which is above is pretty distributed flat.
Can someone make a tutorial.


(Pascal Golay) #8

Hi Maciej - I don’t know if this file may help a bit.

Squish&Mapping.3dm (773.6 KB)

-Pascal


#9

Unfortunately, this is not my point. Pascal there is too much deformation.

Strictly speaking I wanted to spread the balls of the Earth into 8 parts.
Samthing like that:


But I don’t know how to do that. I swapped only the texture in BrianJ file.
Can you help me with this. Step by step.

unroll.3dm (1.3 MB)


(Chris Kuether ) #10

Google on ‘buckminster fuller maps’ for some interesting sphere subdivisions.


(Pascal Golay) #11

I confess I am having way more trouble than is reasonable - I can get seven of the eight sections looking great, but there is one, the one which corresponds to the right edge of the image, that refuses to cooperate. I filed a bug for that, but it does not help you in the meantime.

–Pascal


#12

That looks related:

c.


(Pascal Golay) #13

Hi Clement - yeah, same problem, but I tried to solve it somewhat in reverse to what you did - I made one segment, and rotated the mapping widget 45 degrees at a time, meshing and squishing at each rotation - it worked fine for all but one - on that one, (where the mapping seam is on the edge of the slice) , the squished mesh is completely out of whack along that edge

So, evidently, the mapping affects the squish process… ?

-Pascal


#14

Somehow yes, but this something i guess @dalelear knows about. I’ve found that in case of surfaces, the parameterisation does affect it too. What really bugs me is that it requires meshes just to get the resulting texture right. This should flagged as a bug.

c.


(Pascal Golay) #15

Indeed… https://mcneel.myjetbrains.com/youtrack/issue/RH-37283

-Pascal


#16

Thanks a lot for all. It work from clement link.


#17

Hello.
I continues in this topic. I have a problem. I want to print but rendering me strangely renders. What’s the problem?

And after rendering:

What happen? Mayby I do somthing wrong?
UnwrapEarth-maciek.3dm (2.8 MB)


(Pascal Golay) #18

Hi Maciej - I think maybe you assigned spherical mapping to the meshes, not to the surfaces before creating the mesh - is that possible? (no surfaces in your file). Try applying the spherical mapping to the surface, then Mesh, and Squish the results without doing anything more to the mapping.

-Pascal


#19

Hi Pascal.
I do it like that:

  1. Create a vertical half circle and select it
  2. Use _Revolve, enter 0 as start angle and 360/12 as end angle
  3. The result should be one of 12 segments of your nurbs sphere
  4. Use _ArrayPolar, pick the center and enter 12 to create a full sphere made of 12 segments
  5. Join the segments into a single polysurface, this is your sphere
  6. Assign a spherical mapping to the sphere and a texture map like the one attached below
  7. The sphere is now mapped spherically and ready to be flattened
  8. Create a mesh from the nurbs sphere, use the command _Mesh
  9. Explode the resulting mesh into its 12 segments, hide or delete the nurbs sphere
  10. In my example i´ve named the segments S1 to S12 to not confuse things
  11. To unwrap with retained texture assignment, i´ve used the _Squish command with these settings:
    SplitSeams=No
    PreserveBoundary=Yes
    Deformation=Free
    Material=Rigid
    Outside=Up
    Decorate=No

Mayby you check me. Its new file.

I first assigned spherical mapping surfaces and then I do mesh.

unwrap.3dm (2.6 MB)
.


(Pascal Golay) #20

Yeah… - I see that I get the same results on my file from yesterday - I tested in V5 and V6, and they have exactly the opposite problems - V5 display is correct. rendering is not, and in V6 the display is wrong but it gets the rendering correct.

Also, I see that I accidentally set PreserveBoundary to No on my bad attempt yesterday - if I set that correctly all of the slices squish nicely with texture. But, apparently you need to render in the V6 WIP, not V5…

-Pascal