Node: Icosahedron Net, Previous: Icosahedron Constructors and Setting Functions, Up: Icosahedron



Net

vector<Reg_Polygon*> get_net (const real triangle_diameter, [bool do_half = false]) Static function
Returns the net, i.e., the two-dimensional pattern of triangles that can be folded into a model of an icosahedron. The net lies in the x-z plane. The triangles have enclosing circles of diameter triangle_diameter. If the argument do_half = true, only the first half of the net is created. This is used in the non-default constructor. See Polyhedron Reference; Regular Platonic Polyhedra; Icosahedron; Constructors and Setting Functions.
          vector<Reg_Polygon*> vrp = Icosahedron::get_net(1.5);
          for (vector<Reg_Polygon*>::iterator iter = vrp.begin();
               iter != vrp.end(); ++iter)
             (**iter).draw();
          


[Figure 197. Not displayed.]

Fig. 197.

void draw_net (const real triangle_diameter, [bool portrait = true, [bool make_tabs = true]]) Static function
Draws the net for an Icosahedron in the x-z plane. The triangles have enclosing circles of diameter triangle_diameter. If the argument portrait is true (the default), the net will be arranged for printing in portrait format. If it's false, it will be arranged for printing in landscape format. In portrait format, the center of the bottom right triangle is at the origin. In landscape format, the center of the bottom left triangle is at the origin. The triangles are numbered.

The argument make_tabs currently has no effect. When I get around to programming this, it will be used for specifying whether tabs for gluing and/or sewing a cardboard model should be drawn, too.

          Icosahedron::draw_net(2, false);
          


[Figure 198. Not displayed.]

Fig. 198.