Very many thanks Gianluca. I probably would not have got this far without your help.
I have now got what I need, it'll now just take some fine tuning of positions to drop it into my larger model.
wedge1[turnit_] := With[{\[Theta] = turnit},
(* Set radius, z for thickness and startangle and endangles,
extendfactor creates a coneshell,
or part of*){Gray,
Rotate[Translate[
Rotate[Module[{radius = 1, k = 3, circ, n, twoCircs, cyl,
extendfactor = 0, z = .2, startangle = Pi/4,
endangle = 3 Pi/4},
circ = Table[{radius Cos[t], radius Sin[t],
extendfactor}, {t, startangle, endangle, Pi/(6 k)}];
(* Outside face *)
n = Length[circ];
twoCircs = Join[circ, Map[# + {0, 0, z} &, circ]];
cyl =
GraphicsComplex[twoCircs,
Polygon[Table[{m, m + 1, m + n + 1, m + n}, {m, n - 1}]],
VertexNormals -> twoCircs];
N@{Polygon[Join[{{0, 0, 0}}, circ]],
Translate[
Polygon[Join[{{0, 0, 0}}, circ]], {0, 0, z}], {EdgeForm[],
cyl},
(* Inside faces*)
Polygon[{circ[[1]], {0, 0, 0}, {0, 0, z},
circ[[1]] + {0, 0, z}}],
Polygon[{circ[[-1]], {0, 0, 0}, {0, 0, z},
circ[[-1]] + {0, 0, z}}]}], Pi/2, {1, 0, 0}], {0, -1.5,
0.5}], \[Theta], {0, 1, 0}]}];
wedge2[turnit_] := With[{\[Theta] = turnit},
(* Set radius, z for thickness and startangle and endangles,
extendfactor creates a coneshell, or part of*)
{Gray,
Rotate[
Translate[
Rotate[Module[{radius = 1, k = 3, circ, n, twoCircs, cyl,
extendfactor = 0, z = .2, startangle = Pi/4,
endangle = 3 Pi/4},
circ = Table[{radius Cos[t], radius Sin[t],
extendfactor}, {t, startangle, endangle, Pi/(6 k)}];
(* Outside face *)
n = Length[circ];
twoCircs = Join[circ, Map[# + {0, 0, z} &, circ]];
cyl =
GraphicsComplex[twoCircs,
Polygon[Table[{m, m + 1, m + n + 1, m + n}, {m, n - 1}]],
VertexNormals -> twoCircs];
N@{Gray, Polygon[Join[{{0, 0, 0}}, circ]],
Translate[
Polygon[Join[{{0, 0, 0}}, circ]], {0, 0, z}], {EdgeForm[],
cyl},
(* Inside faces*)
Polygon[{circ[[1]], {0, 0, 0}, {0, 0, z},
circ[[1]] + {0, 0, z}}],
Polygon[{circ[[-1]], {0, 0, 0}, {0, 0, z},
circ[[-1]] + {0, 0, z}}]}], -Pi/2, {1, 0,
0}], {0, .3, -.5}], \[Theta], {0, 1, 0}]}];
rods[turnit_] := With[{\[Theta] = turnit},
Rotate[
{{Gray, Cuboid[{-.1, -1.5, -.2}, {.1, -1.7, 1}]},
{Gray, Cuboid[{-.1, .3, .2}, {.1, .5, -1}]}}, \[Theta], {0, 1,
0}]];
shaft = {Gray, Cylinder[{{0, -1.8, 0}, {0, .6, 0}}, .1]};
(end of initialisation cell )
Manipulate[
Graphics3D[{wedge1[turnit], wedge2[turnit], rods[turnit], shaft},
Axes -> True, AxesLabel -> {"x", "y", "z"},
PlotRange -> {{-2.5, 2.5}, {-2.5, 2.5}, {-2.5, 2.5}}], {{turnit, 0,
"run engine"}, 0, 2 \[Pi], .01, ControlType -> Animator,
AnimationRunning -> False}]
File attached
Attachments: