#include #include #include #include #include "3d.h" #include "model.h" #include "solid.h" static SOLID solids[10]; static void gen_model(void) { MODEL *model; solids[0].archetype = &arch_o[0]; solids[0].xf = transform_identity(); transform_solid(&solids[0]); solids[1].archetype = &arch_o[0]; solids[1].xf = find_transform(solids[0].at[7],solids[0].at[5],solids[0].at[1]); transform_solid(&solids[1]); solids[2].archetype = &arch_a[0]; solids[2].xf = find_transform(solids[0].at[5],solids[0].at[7],solids[0].at[4]); transform_solid(&solids[2]); solids[3].archetype = &arch_a[0]; solids[3].xf = find_transform(solids[0].at[3],solids[0].at[2],solids[0].at[7]); transform_solid(&solids[3]); solids[4].archetype = &arch_o[0]; solids[4].xf = find_transform(solids[2].at[5],solids[2].at[7],solids[2].at[6]); transform_solid(&solids[4]); solids[5].archetype = &arch_o[0]; solids[5].xf = find_transform(solids[1].at[7],solids[1].at[5],solids[1].at[1]); transform_solid(&solids[5]); solids[6].archetype = &arch_a[0]; solids[6].xf = find_transform(solids[1].at[3],solids[1].at[2],solids[1].at[7]); transform_solid(&solids[6]); solids[7].archetype = &arch_a[0]; solids[7].xf = find_transform(solids[1].at[5],solids[1].at[7],solids[1].at[4]); transform_solid(&solids[7]); solids[8].archetype = &arch_a[0]; solids[8].xf = find_transform(solids[3].at[7],solids[3].at[6],solids[3].at[5]); transform_solid(&solids[8]); solids[9].archetype = &arch_o[0]; solids[9].xf = find_transform(solids[3].at[4],solids[3].at[0],solids[3].at[1]); transform_solid(&solids[9]); model = new_model(); add_solid(model,&solids[0],"red",1,0,0); add_solid(model,&solids[1],"green",0,1,0); add_solid(model,&solids[2],"blue",0,0,1); add_solid(model,&solids[3],"cyan",0,1,1); add_solid(model,&solids[4],"magenta",1,0,1); add_solid(model,&solids[5],"yellow",1,1,0); add_solid(model,&solids[6],"tan",1,.8,.57); add_solid(model,&solids[7],"pink",1,.7,1); add_solid(model,&solids[8],"ltblue",.57,.8,1); add_solid(model,&solids[9],"brn",.7,.7,0); save_model(model,stdout); } int main(void); int main(void) { solid_init(); gen_model(); return(0); }