Page 24 - 2020학년도 MDP과제발표회 자료집 (통신과) (3)
P. 24

{
                                    if  (iy  ==  y1  ||  iy  ==  y2  ||  iz  ==  z1  ||  iz  ==  z2)
                                    {
                                            cube[iz][iy]  =  byteline(x1,x2);

                                    }  else
                                    {
                                            cube[iz][iy]  |=  ((0x01  <<  x1)  |  (0x01  <<  x2));
                                    }
                            }

                    }
            }


            void  box_wireframe(int  x1,  int  y1,  int  z1,  int  x2,  int  y2,  int  z2)
            {

                    int  iy;
                    int  iz;


                    argorder(x1,  x2,  &x1,  &x2);
                    argorder(y1,  y2,  &y1,  &y2);

                    argorder(z1,  z2,  &z1,  &z2);


                    cube[z1][y1]  =  byteline(x1,x2);
                    cube[z1][y2]  =  byteline(x1,x2);
                    cube[z2][y1]  =  byteline(x1,x2);

                    cube[z2][y2]  =  byteline(x1,x2);


                    for  (iy=y1;iy<=y2;iy++)
                    {
                            setvoxel(x1,iy,z1);

                            setvoxel(x1,iy,z2);
                            setvoxel(x2,iy,z1);
                            setvoxel(x2,iy,z2);
                    }



                    for  (iz=z1;iz<=z2;iz++)
                    {
                            setvoxel(x1,y1,iz);
                            setvoxel(x1,y2,iz);
                            setvoxel(x2,y1,iz);

                            setvoxel(x2,y2,iz);
                    }


                                                         -  23  -
   19   20   21   22   23   24   25   26   27   28   29