⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tetramod.c

📁 su 的源代码库
💻 C
📖 第 1 页 / 共 5 页
字号:
                                    xhz[ihz][iyhz][ixhz],                                    xhz[ihz0][iyhz][ixhz],				    xhz[ihz0][iyhz+1][ixhz+1],			            yhz[ihz][iyhz][ixhz],                                    yhz[ihz0][iyhz+1][ixhz],       			            yhz[ihz0][iyhz+1][ixhz+1],			            zhz[ihz][iyhz][ixhz],                                    zhz[ihz+1][iyhz+1][ixhz],       			      	    zhz[ihz+1][iyhz+1][ixhz+1],				    &facet[if7].cn[0],				    &facet[if7].cn[1],				    &facet[if7].cn[2]);			      /*centered normal for if8: right slant 2 facet*/		 	      tm_normal(                                     xhz[ihz][iyhz][ixhz+1],                                    xhz[ihz0][iyhz][ixhz],				    xhz[ihz0][iyhz+1][ixhz+1],			            yhz[ihz][iyhz][ixhz+1],                                    yhz[ihz0][iyhz][ixhz],       			            yhz[ihz0][iyhz+1][ixhz+1],			            zhz[ihz][iyhz][ixhz+1],                                    zhz[ihz+1][iyhz][ixhz],       			      	    zhz[ihz+1][iyhz+1][ixhz+1],				    &facet[if8].cn[0],				    &facet[if8].cn[1],				    &facet[if8].cn[2]);			      /*control point for left facet on hz*/			      facet[if1].ip[0]=i000;			      facet[if1].ip[1]=i010;			      facet[if1].ip[2]=i110;			      /*control point of right facet on hz*/			      facet[if2].ip[0]=i000;			      facet[if2].ip[1]=i100;			      facet[if2].ip[2]=i110;                              /*upper diagonal facet*/			      facet[if3].ip[0]=i000;			      facet[if3].ip[1]=i110;			      facet[if3].ip[2]=i111;                        			      /*lower diagonal facet*/			      facet[if4].ip[0]=i000;			      facet[if4].ip[1]=i001;			      facet[if4].ip[2]=i111;			      /*left slant1 facet*/			      facet[if5].ip[0]=i000;			      facet[if5].ip[1]=i010;			      facet[if5].ip[2]=i111;			      /*right slant1 facet*/			      facet[if6].ip[0]=i000;			      facet[if6].ip[1]=i100;			      facet[if6].ip[2]=i111;			      /*left slant2 facet*/			      facet[if7].ip[0]=i000;			      facet[if7].ip[1]=i011;			      facet[if7].ip[2]=i111;			      /*right slant2 facet*/			      facet[if8].ip[0]=i100;			      facet[if8].ip[1]=i001;			      facet[if8].ip[2]=i111;			}                        if (ihz==0) {			      facet[if1].itetra[0]=-1;			      facet[if2].itetra[0]=-1;                        } else {                              facet[if1].itetra[0]=    /*left facet on hz*/                                    nhztrap*2+(ihz-1)*ntrap+iyhz*(nxhz-1)+ixhz;			      facet[if2].itetra[0]=    /*right facet on hz*/                                    facet[if1].itetra[0]+3*nhztrap;                        }                        facet[if1].itetra[1]=it1;       /*left facet on hz*/                        facet[if2].itetra[1]=it4;       /*right facet on hz*/                        facet[if3].itetra[0]=it1;       /*upper diagonal facet*/                        facet[if3].itetra[1]=it4;       /*upper diagonal facet*/                        facet[if4].itetra[0]=it3;       /*lower diagonal facet*/                        facet[if4].itetra[1]=it5;       /*lower diagonal facet*/                        facet[if5].itetra[0]=it1;       /*left slant1 facet*/                        facet[if5].itetra[1]=it2;       /*left slant1 facet*/                        facet[if6].itetra[0]=it4;       /*right slant1 facet*/                        facet[if6].itetra[1]=it5;       /*right slant1 facet*/                        facet[if7].itetra[0]=it2;       /*left slant2 facet*/                        facet[if7].itetra[1]=it3;       /*left slant2 facet*/                        facet[if8].itetra[0]=it5;       /*right slant2 facet*/                        facet[if8].itetra[1]=it6;       /*right slant3 facet*/	          }	    }      }      for (ihz=0;ihz<nhz;ihz++) {            for (iyhz=0;iyhz<nyhz-1;iyhz++) {                  for (ixhz=0;ixhz<nxhz;ixhz++) {		        iwh=nhztrap1*2+nhztrap*6;                        if9=iwh+ihz*nfacetx+iyhz*nxhz+ixhz;/*upper facet facing x*/                        if10=nhzfacetx+if9;                /*lower facet facing x*/                        it1=ihz*ntrap+iyhz*(nxhz-1)+ixhz; /*left top tetra*/                        it2=nhztrap+it1;                  /*left middle tetra*/                        it3=nhztrap*2+it1;                /*left bottom tetra*/                        it4=nhztrap*3+it1;                /*right top tetra*/                        it5=nhztrap*4+it1;                /*right middle tetra*/                        it6=nhztrap*5+it1;                /*right bottom tetra*/                        i000=ihz*nxhz*nyhz+iyhz*nxhz+ixhz;/*upper 4 control point*/                        i010=i000+nxhz;                        i100=i000+1;                        i110=i000+nxhz+1;                        i001=nhzpoint+i000;    /*lower 4 control point*/                        i011=nhzpoint+i010;                        i101=nhzpoint+i100;                        i111=nhzpoint+i110;                                                   if (iyhz%2==0) {			      /*centered normal for if9: upper facet facing x*/		 	      tm_normal(                                     xhz[ihz][iyhz][ixhz],                                    xhz[ihz0][iyhz][ixhz],				    xhz[ihz][iyhz+1][ixhz],			            yhz[ihz][iyhz][ixhz],                                    yhz[ihz0][iyhz][ixhz],       			            yhz[ihz][iyhz+1][ixhz],			            zhz[ihz][iyhz][ixhz],                                    zhz[ihz+1][iyhz][ixhz],       			      	    zhz[ihz][iyhz+1][ixhz],				    &facet[if9].cn[0],				    &facet[if9].cn[1],				    &facet[if9].cn[2]);			      /*centered normal for if10: lower facet facing x*/		 	      tm_normal(                                     xhz[ihz0][iyhz+1][ixhz],                                    xhz[ihz0][iyhz][ixhz],				    xhz[ihz][iyhz+1][ixhz],			            yhz[ihz0][iyhz+1][ixhz],                                    yhz[ihz0][iyhz][ixhz],       			            yhz[ihz][iyhz+1][ixhz],			            zhz[ihz+1][iyhz+1][ixhz],                                    zhz[ihz+1][iyhz][ixhz],       			      	    zhz[ihz][iyhz+1][ixhz],				    &facet[if10].cn[0],				    &facet[if10].cn[1],				    &facet[if10].cn[2]);                              /*upper facet facing x*/			      facet[if9].ip[0]=i000;			      facet[if9].ip[1]=i010;			      facet[if9].ip[2]=i001;                              /*lower facet facing x*/			      facet[if10].ip[0]=i010;			      facet[if10].ip[1]=i001;			      facet[if10].ip[2]=i011;                        } else {			      /*centered normal for if9: upper facet facing x*/		 	      tm_normal(                                     xhz[ihz][iyhz][ixhz],                                    xhz[ihz0][iyhz+1][ixhz],				    xhz[ihz][iyhz+1][ixhz],			            yhz[ihz][iyhz][ixhz],                                    yhz[ihz0][iyhz+1][ixhz],       			            yhz[ihz][iyhz+1][ixhz],			            zhz[ihz][iyhz][ixhz],                                    zhz[ihz+1][iyhz+1][ixhz],       			      	    zhz[ihz][iyhz+1][ixhz],				    &facet[if9].cn[0],				    &facet[if9].cn[1],				    &facet[if9].cn[2]);			      /*centered normal for if10: lower facet facing x*/		 	      tm_normal(                                     xhz[ihz0][iyhz][ixhz],                                    xhz[ihz0][iyhz+1][ixhz],				    xhz[ihz][iyhz][ixhz],			            yhz[ihz0][iyhz][ixhz],                                    yhz[ihz0][iyhz+1][ixhz],       			            yhz[ihz][iyhz][ixhz],			            zhz[ihz+1][iyhz][ixhz],                                    zhz[ihz+1][iyhz+1][ixhz],       			      	    zhz[ihz][iyhz][ixhz],				    &facet[if10].cn[0],				    &facet[if10].cn[1],				    &facet[if10].cn[2]);                              /*upper facet facing x*/		              facet[if9].ip[0]=i000;		      	      facet[if9].ip[1]=i010;			      facet[if9].ip[2]=i011;                              /*lower facet facing x*/			      facet[if10].ip[0]=i000;			      facet[if10].ip[1]=i001;			      facet[if10].ip[2]=i011;                                        }                        if (ixhz==0) {                              facet[if9].itetra[0]=-1;/*upper facet facing x*/		              facet[if10].itetra[0]=-1;/*lower facet facing x*/                        } else {                              facet[if9].itetra[0]=it4-1;      		              facet[if10].itetra[0]=it6-1;                        }                        if (ixhz==nxhz-1) {			      facet[if9].itetra[1]=-1;			      facet[if10].itetra[1]=-1;                        } else {                              facet[if9].itetra[1]=it2;    /*upper facet facing x*/                              facet[if10].itetra[1]=it3;   /*lower facet facing x*/                        }                  }            }            for (iyhz=0;iyhz<nyhz;iyhz++) {                  for (ixhz=0;ixhz<nxhz-1;ixhz++) {       	                iwh=nhztrap1*2+nhztrap*6+nhzfacetx*2;                        if11=iwh+ihz*nfacety+iyhz*(nxhz-1)+ixhz;/*upper facet facing y*/                        if12=nhzfacety+if11;          /*lower facet facing y*/                        it1=ihz*ntrap+iyhz*(nxhz-1)+ixhz; /*left top tetra*/                        it2=nhztrap+it1;                  /*left middle tetra*/                        it3=nhztrap*2+it1;                /*left bottom tetra*/                        it4=nhztrap*3+it1;                /*right top tetra*/                        it5=nhztrap*4+it1;                /*right middle tetra*/                        it6=nhztrap*5+it1;                /*right bottom tetra*/                        i000=ihz*nxhz*nyhz+iyhz*nxhz+ixhz;/*upper 4 control point*/                        i010=i000+nxhz;                        i100=i000+1;                        i110=i000+nxhz+1;                        i001=nhzpoint+i000;    /*lower 4 control point*/                        i011=nhzpoint+i010;                        i101=nhzpoint+i100;                        i111=nhzpoint+i110;                        if (iyhz%2==0) {			      /*centered normal for if11: upper facet facing y*/		 	      tm_normal(                                     xhz[ihz][iyhz][ixhz],                                    xhz[ihz0][iyhz][ixhz+1],				    xhz[ihz][iyhz][ixhz+1],			            yhz[ihz][iyhz][ixhz],                                    yhz[ihz0][iyhz][ixhz+1],       			            yhz[ihz][iyhz][ixhz+1],			            zhz[ihz][iyhz][ixhz],                                    zhz[ihz+1][iyhz][ixhz+1],       			      	    zhz[ihz][iyhz][ixhz+1],				    &facet[if11].cn[0],				    &facet[if11].cn[1],				    &facet[if11].cn[2]);			      /*centered normal for if12: lower facet facing y*/		 	      tm_normal(                                     xhz[ihz][iyhz][ixhz],                                    xhz[ihz0][iyhz][ixhz+1],				    xhz[ihz0][iyhz][ixhz],			            yhz[ihz][iyhz][ixhz],                                    yhz[ihz0][iyhz][ixhz+1],       			            yhz[ihz0][iyhz][ixhz],			            zhz[ihz][iyhz][ixhz],                                    zhz[ihz+1][iyhz][ixhz+1],       			      	    zhz[ihz+1][iyhz][ixhz],				    &facet[if12].cn[0],				    &facet[if12].cn[1],				    &facet[if12].cn[2]);                              /*upper facet facing y*/		              facet[if11].ip[0]=i000;		      	      facet[if11].ip[1]=i100;			      facet[if11].ip[2]=i101;                              /*lower facet facing y*/			      facet[if12].ip[0]=i000;			      facet[if12].ip[1]=i001;			      facet[if12].ip[2]=i101;                              if (iyhz==0) {			            facet[if11].itetra[0]=-1;/*upper facet facing y*/			            facet[if12].itetra[0]=-1;/*lower facet facing y*/                              } else {                                    facet[if11].itetra[0]=it1-(nxhz-1);			            facet[if12].itetra[0]=it2-(nxhz-1);                              }                              if (iyhz==nyhz-1) {                                    facet[if11].itetra[1]=-1;                                    facet[if12].itetra[1]=-1;                              } else {                                    facet[if11].itetra[1]=it1;/*upper facet facing y*/                                    facet[if12].itetra[1]=it2;/*lower facet facing y*/                              }                        } else {            			      /*centered normal for if11: upper facet facing y*/		 	      tm_normal(                                     xhz[ihz][iyhz][ixhz],                                    xhz[ihz0][iyhz][ixhz],				    xhz[ihz][iyhz][ixhz+1],			            yhz[ihz][iyhz][ixhz],                                    yhz[ihz0][iyhz][ixhz],       			            yhz[ihz][iyhz][ixhz+1],			            zhz[ihz][iyhz][ixhz],                                    zhz[ihz+1][iyhz][ixhz],       			      	    zhz[ihz][iyhz][ixhz+1],				    &facet[if11].cn[0],				    &facet[if11].cn[1],				    &facet[if11].cn[2]);			      /*centered normal for if12: lower facet facing y*/		 	      tm_normal(                                     xhz[ihz][iyhz][ixhz+1],                                    xhz[ihz0][iyhz][ixhz+1],				    xhz[ihz0][iyhz][ixhz],			            yhz[ihz][iyhz][ixhz+1],                                    yhz[ihz0][iyhz][ixhz+1],       			            yhz[ihz0][iyhz][ixhz],			            zhz[ihz][iyhz][ixhz+1],                                    zhz[ihz+1][iyhz][ixhz+1],       			      	    zhz[ihz+1][iyhz][ixhz],				    &facet[if12].cn[0],				    &facet[if12].c

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -