//---------------------------------------------------------------------- int FDEPState::revertToStart(void) { tensor tI2("I", 2, def_dim_2); tensor t00(2, def_dim_2, 0.0); FpInVar = tI2; StressLikeInVar = 0.0; StrainLikeInVar = 0.0; StressLikeKiVar = t00; StrainLikeKiVar = t00; CommitedFpInVar = tI2; CommitedStressLikeInVar = 0.0; CommitedStrainLikeInVar = 0.0; CommitedStressLikeKiVar = t00; CommitedStrainLikeKiVar = t00; return 0; }
void MeshObject::MakeBox(float x,float y,float z,Material *mtl) { // Allocate arrays NumVertexes=24; NumTriangles=12; Vertexes=new Vertex[NumVertexes]; Triangles=new Triangle[NumTriangles]; if(mtl==0) mtl=new LambertMaterial; x*=0.5f; y*=0.5f; z*=0.5f; // Corners Vector3 p000(-x,-y,-z); Vector3 p001(-x,-y,z); Vector3 p010(-x,y,-z); Vector3 p011(-x,y,z); Vector3 p100(x,-y,-z); Vector3 p101(x,-y,z); Vector3 p110(x,y,-z); Vector3 p111(x,y,z); // Tex coords Vector3 t00(0.0f,0.0f,0.0f); Vector3 t01(0.0f,1.0f,0.0f); Vector3 t10(1.0f,0.0f,0.0f); Vector3 t11(1.0f,1.0f,0.0f); // Right Vertexes[0].Set(p101,Vector3::XAXIS,t00); Vertexes[1].Set(p100,Vector3::XAXIS,t10); Vertexes[2].Set(p110,Vector3::XAXIS,t11); Vertexes[3].Set(p111,Vector3::XAXIS,t01); Triangles[0].Init(&Vertexes[0],&Vertexes[1],&Vertexes[2],mtl); Triangles[1].Init(&Vertexes[0],&Vertexes[2],&Vertexes[3],mtl); // Left Vertexes[4].Set(p000,-Vector3::XAXIS,t00); Vertexes[5].Set(p001,-Vector3::XAXIS,t10); Vertexes[6].Set(p011,-Vector3::XAXIS,t11); Vertexes[7].Set(p010,-Vector3::XAXIS,t01); Triangles[2].Init(&Vertexes[4],&Vertexes[5],&Vertexes[6],mtl); Triangles[3].Init(&Vertexes[4],&Vertexes[6],&Vertexes[7],mtl); // Top Vertexes[8].Set(p011,Vector3::YAXIS,t00); Vertexes[9].Set(p111,Vector3::YAXIS,t10); Vertexes[10].Set(p110,Vector3::YAXIS,t11); Vertexes[11].Set(p010,Vector3::YAXIS,t01); Triangles[4].Init(&Vertexes[8],&Vertexes[9],&Vertexes[10],mtl); Triangles[5].Init(&Vertexes[8],&Vertexes[10],&Vertexes[11],mtl); // Bottom Vertexes[12].Set(p000,-Vector3::YAXIS,t00); Vertexes[13].Set(p100,-Vector3::YAXIS,t10); Vertexes[14].Set(p101,-Vector3::YAXIS,t11); Vertexes[15].Set(p001,-Vector3::YAXIS,t01); Triangles[6].Init(&Vertexes[12],&Vertexes[13],&Vertexes[14],mtl); Triangles[7].Init(&Vertexes[12],&Vertexes[14],&Vertexes[15],mtl); // Front Vertexes[16].Set(p001,Vector3::ZAXIS,t00); Vertexes[17].Set(p101,Vector3::ZAXIS,t10); Vertexes[18].Set(p111,Vector3::ZAXIS,t11); Vertexes[19].Set(p011,Vector3::ZAXIS,t01); Triangles[8].Init(&Vertexes[16],&Vertexes[17],&Vertexes[18],mtl); Triangles[9].Init(&Vertexes[16],&Vertexes[18],&Vertexes[19],mtl); // Back Vertexes[20].Set(p100,-Vector3::ZAXIS,t00); Vertexes[21].Set(p000,-Vector3::ZAXIS,t10); Vertexes[22].Set(p010,-Vector3::ZAXIS,t11); Vertexes[23].Set(p110,-Vector3::ZAXIS,t01); Triangles[10].Init(&Vertexes[20],&Vertexes[21],&Vertexes[22],mtl); Triangles[11].Init(&Vertexes[20],&Vertexes[22],&Vertexes[23],mtl); }