Re: Problem:a texture on only one face of a Polyhedron
- To: mathgroup at smc.vnet.net
- Subject: [mg122838] Re: Problem:a texture on only one face of a Polyhedron
- From: Yves Klett <yves.klett at googlemail.com>
- Date: Fri, 11 Nov 2011 07:33:59 -0500 (EST)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
- References: <j9irn2$8f1$1@smc.vnet.net>
Hi, the following is straight from the documentation of Texture (Neat Examples) with Opacity of EdgeForm set to 1, because otherwise the textures are not actually displayed on my machine. Perhaps you can crib some of the code. Manipulate[ Graphics3D[{Specularity[White, 20], Texture[ImageCrop[ ExampleData[{"ColorTexture", "WhiteMarble"}], {128, 128}]], EdgeForm[ Opacity[1]], (Append[#1, {VertexTextureCoordinates -> With[{n = Length[First[#1]]}, Table[1/2 {Cos[2 \[Pi] i/n], Sin[2 \[Pi] i/n]} + {1/2, 1/2}, {i, 0, n - 1}]]}] &) /@ Flatten[Normal[PolyhedronData[p, "Faces"]]]}, Lighting -> "Neutral"], {{p, "RhombicHexecontahedron", "polyhedron"}, PolyhedronData[]}] Regards, Yves Am 11.11.2011 11:00, schrieb Roger Bagula: > The problem is the > VertexTextureCoordinates -> > They seem to specify only one face specifically. > I'd like to get the texture on all the faces. > Here what runs to give one textured face: > > gm = ExampleData[{"ColorTexture", "WhiteMarble"}]; > v = {{0, 0, -(5/Sqrt[50 - 10 Sqrt[5]])}, {0, 0, 5/Sqrt[ > 50 - 10 Sqrt[5]]}, {-Sqrt[(2/(5 - Sqrt[5]))], > 0, -(1/Sqrt[10 - 2 Sqrt[5]])}, {Sqrt[2/(5 - Sqrt[5])], 0, 1/Sqrt[ > 10 - 2 Sqrt[5]]}, {(1 + Sqrt[5])/( > 2 Sqrt[10 - 2 Sqrt[5]]), -(1/2), -(1/Sqrt[10 - 2 Sqrt[5]])}, {( > 1 + Sqrt[5])/(2 Sqrt[10 - 2 Sqrt[5]]), 1/ > 2, -(1/Sqrt[10 - 2 Sqrt[5]])}, {-((1 + Sqrt[5])/( > 2 Sqrt[10 - 2 Sqrt[5]])), -(1/2), 1/Sqrt[ > 10 - 2 Sqrt[5]]}, {-((1 + Sqrt[5])/(2 Sqrt[10 - 2 Sqrt[5]])), 1/2, > 1/Sqrt[10 - 2 Sqrt[5]]}, {-((-1 + Sqrt[5])/( > 2 Sqrt[10 - 2 Sqrt[5]])), -(1/2) Sqrt[(5 + Sqrt[5])/( > 5 - Sqrt[5])], -(1/Sqrt[10 - 2 Sqrt[5]])}, {-((-1 + Sqrt[5])/( > 2 Sqrt[10 - 2 Sqrt[5]])), > 1/2 Sqrt[(5 + Sqrt[5])/(5 - Sqrt[5])], -(1/Sqrt[ > 10 - 2 Sqrt[5]])}, {(-1 + Sqrt[5])/( > 2 Sqrt[10 - 2 Sqrt[5]]), -(1/2) Sqrt[(5 + Sqrt[5])/(5 - Sqrt[5])], > 1/Sqrt[10 - 2 Sqrt[5]]}, {(-1 + Sqrt[5])/( > 2 Sqrt[10 - 2 Sqrt[5]]), 1/2 Sqrt[(5 + Sqrt[5])/(5 - Sqrt[5])], 1/ > Sqrt[10 - 2 Sqrt[5]]}}; > i = {{2, 12, 8}, {2, 8, 7}, {2, 7, 11}, {2, 11, 4}, {2, 4, 12}, {5, 9, > 1}, {6, 5, 1}, {10, 6, 1}, {3, 10, 1}, {9, 3, 1}, {12, 10, > 8}, {8, 3, 7}, {7, 9, 11}, {11, 5, 4}, {4, 6, 12}, {5, 11, 9}, {6, > 4, 5}, {10, 12, 6}, {3, 8, 10}, {9, 7, 3}}; > g5 = Graphics3D[{Blue, Opacity[0.5], Specularity[White, 20], > Texture[gm], > GraphicsComplex[v, Polygon[i], > VertexTextureCoordinates -> {{1, 0}, {1/4 (-1 + Sqrt[5]), Sqrt[ > 5/8 + Sqrt[5]/8]}, {1/4 (-1 - Sqrt[5]), Sqrt[ > 5/8 - Sqrt[5]/8]}, {1/4 (-1 - Sqrt[5]), -Sqrt[ > 5/8 - Sqrt[5]/8]}, {1/4 (-1 + Sqrt[5]), -Sqrt[ > 5/8 + Sqrt[5]/8]}}]}, Boxed -> False] >