I'm not sure how to model that with the least amount of steps, it might have a simple answer but i've added a solution after the code section anyway.
The wikipedia page of Pentagonal_trapezohedron links to a .wrl file file but Blender fails to import it (for reasons that are not important here). The coordinates in the wrl are enough to build the script below. This could be added to the Mesh Extra objects addon, but for now just run the script from the TextEditor
# be in object mode with nothing selected.
import bpy
Verts = [
0.5257311, 0.381966, 0.8506508,
-0.2008114, 0.618034, 0.8506508,
-0.6498394, 0, 0.8506508,
0.5257311, -1.618034, 0.8506508,
1.051462, 0, -0.2008114,
0.8506508, 0.618034, 0.2008114,
-0.5257311, 1.618034, -0.8506508,
-1.051462, 0, 0.2008114,
-0.8506508, -0.618034, -0.2008114,
0.2008114, -0.618034, -0.8506508,
0.6498394, 0, -0.8506508,
-0.5257311, -0.381966, -0.8506508,
]
Faces = [
3,0,1,2,
0,3,4,5,
1,0,5,6,
2,1,6,7,
3,2,7,8,
4,3,9,10,
5,4,10,6,
7,6,11,8,
3,8,11,9,
10,9,11,6,
]
def deflate(x, stride):
return [x[i: i + stride] for i in range(0, len(x), stride)]
Verts = deflate(Verts, 3)
Faces = deflate(Faces, 4)
mesh = bpy.data.meshes.new("Base_Data")
mesh.from_pydata(Verts, [], Faces)
mesh.update()
obj = bpy.data.objects.new("Pentagonal_Trapezohedron", mesh)
scene = bpy.context.scene
scene.objects.link(obj)
obj.select = True
Manual way
This is based on trigonometric principles, but not perfect. Blender is an Arts package which only aims to approach visual accuracy not numeric accuracy.
- add a dodecahedron with the Mesh Extra Objects add-on
- notice its sides are built using two faces: 1 quad (trapezoid), 1 triangle (isosceles)
- the quads have a long edge and an opposing shorter edge.
- the long edge can be copied and placed at the tip of the short edge to get 1 'terminator' point
- repeat this process on the opposite face to find the 2nd 'terminator'.
- then edge-fill around.
- optional cleanup: Remove Doubles, followed by a Limited dissolve and you'll get nice Kite shaped quads.
The edges in blue above are marked to show that they are the same edge, with the same length.
here's the opposite side using orange to show the corresponding edges: