|
|
And yet another diamond... Not fully parameterized yet. Don't change the
diameter just scale it.
#declare Diamond_Diameter = 2.0;
#declare Diamond =
difference {
// body
cylinder { <0,0,0>, <0,2,0>, Diamond_Diameter/2 }
//kite facets
#for (kiteangle,0,315,45)
box { <-5.00, 0.00, -5.00>,< 5.00, 1.00, 5.00> rotate<0,0,34>
translate<-.54*Diamond_Diameter/2,2,0> rotate<0,kiteangle,0> }
#end
// star facets
#for (starangle,22.5,360,45)
box { <-5.00, 0.00, -5.00>,< 5.00, 1.00, 5.00> rotate<0,0,17>
translate<-.4989*Diamond_Diameter/2,2,0> rotate<0,starangle,0> }
#end
// Upper Girdle Facets
#for (girdleangle,11.25,360,22.5)
box { <-5.00, 0.00, -5.00>,< 5.00, 1.00, 5.00> rotate<0,0,38.37>
translate<-.589*Diamond_Diameter/2,2,0> rotate<0,girdleangle,0> }
#end
//Pavilion main facets
#for (pavilionangle,0,360,45)
box { <-5.00, -1.00, -5.00>,< 5.00, 0.00, 5.00> rotate<0,0,(-40.6)>
translate<.963*Diamond_Diameter/2,-.05,0> rotate<0,pavilionangle,0> }
#end
//Lower Girdle Facets
#for (girdleangle,11.25,360,22.5)
box { <-5.00, -1.00, -5.00>,< 5.00, 0.00, 5.00> rotate<0,0,-(40.6+4.37)>
translate<-1.2985*Diamond_Diameter/2,1.95,0> rotate<0,girdleangle,0> }
#end
//Girdle Trim Facets
#for (girdleangle,11.25,360,22.5)
box { <-5.00, -1.00, -5.00>,< 0.00, 2.00, 5.00> rotate<0,0,0>
translate<-0.98*Diamond_Diameter/2,0,0> rotate<0,girdleangle,0> }
#end
}
Post a reply to this message
|
|