private void Chage_GraphicsAreas_Values(Node_ND[] Side_Nodes, int[] NNPE_Side, int Resolution, ref Side TheSide) { ParametricInterpolation_ND_Square Node_Interpolator = new ParametricInterpolation_ND_Square(NNPE_Side[0], NNPE_Side[1]); int Res_NNPE_l = Resolution * (NNPE_Side[0] - 1) + 1; int Res_NNPE_m = Resolution * (NNPE_Side[1] - 1) + 1; ParametricInterpolation_ND_Square Resolution_Interpolaor = new ParametricInterpolation_ND_Square(Res_NNPE_l, Res_NNPE_m); Vector Area_DisplayValues = Calculate_Area_DisplayValues(Side_Nodes, Node_Interpolator, Resolution_Interpolaor); int NA = Resolution * (NNPE_Side[0] - 1) * Resolution * (NNPE_Side[1] - 1); TheSide.AreaValues = new Vector[NA]; int index_1 = 0; int index_2 = NNPE_Side[0]; int index = 0; for (int j = 0; j < Res_NNPE_m - 1; j++) { for (int i = 0; i < Res_NNPE_l - 1; i++) { TheSide.AreaValues[index] = new Vector(4); TheSide.AreaValues[index].Values[0] = Area_DisplayValues.Values[index_1 + i]; TheSide.AreaValues[index].Values[1] = Area_DisplayValues.Values[index_1 + i + 1]; TheSide.AreaValues[index].Values[2] = Area_DisplayValues.Values[index_2 + i + 1]; TheSide.AreaValues[index].Values[3] = Area_DisplayValues.Values[index_2 + i]; //TheSide.AreaValues[index].Values[4] = TheSide.AreaValues[index].Values[0]; index++; } index_1 = index_2; index_2 += NNPE_Side[0]; } }
private void Chage_GraphicsAreas_Values(Node_ND[] Side_Nodes, int[] NNPE_Side, ref Side TheSide) { Vector Node_DisplayValues = Get_Nodal_DisplayValues(Side_Nodes); int NA = (NNPE_Side[0] - 1) * (NNPE_Side[1] - 1); TheSide.AreaValues = new Vector[NA]; int index_1 = 0; int index_2 = NNPE_Side[0]; int index = 0; for (int j = 0; j < NNPE_Side[1] - 1; j++) { for (int i = 0; i < NNPE_Side[0] - 1; i++) { TheSide.AreaValues[index] = new Vector(4); TheSide.AreaValues[index].Values[0] = Node_DisplayValues.Values[index_1 + i]; TheSide.AreaValues[index].Values[1] = Node_DisplayValues.Values[index_1 + i + 1]; TheSide.AreaValues[index].Values[2] = Node_DisplayValues.Values[index_2 + i + 1]; TheSide.AreaValues[index].Values[3] = Node_DisplayValues.Values[index_2 + i]; //TheSide.AreaValues[index].Values[4] = TheSide.AreaValues[index].Values[0]; index++; } index_1 = index_2; index_2 += NNPE_Side[0]; } }
public void Make_GraphicsAreasForSide_local(Node_ND[] Side_Nodes, int[] NNPE_Side, int Resolution, ref Side TheSide) { if (Resolution == 1) { Make_GraphicsAreas(Side_Nodes, NNPE_Side, ref TheSide); } else { Make_GraphicsAreas(Side_Nodes, NNPE_Side, Resolution, ref TheSide); } }
private void Change_GraphicsSurfaces_Values_local(Node_ND[] Side_Nodes, int[] NNPE_Side, int Resolution, ref Side TheSide) { if (Resolution == 1) { Chage_GraphicsAreas_Values(Side_Nodes, NNPE_Side, ref TheSide); } else { Chage_GraphicsAreas_Values(Side_Nodes, NNPE_Side, Resolution, ref TheSide); } }
private void Make_Side(Node_ND[] Side_Nodes, int[] NNPE_Side, int Resolution, out Side TheSide) { TheSide = new Side(); TheSide.NodeLocations = Get_ElementNodal_X(Side_Nodes); TheSide.MeshLines = new Vector[4][]; TheSide.MeshLines[0] = new Vector[NNPE_Side[0]]; TheSide.MeshLines[1] = new Vector[NNPE_Side[1]]; TheSide.MeshLines[2] = new Vector[NNPE_Side[0]]; TheSide.MeshLines[3] = new Vector[NNPE_Side[1]]; for (int i = 0; i < NNPE_Side[0]; i++) { TheSide.MeshLines[0][i] = TheSide.NodeLocations[i]; TheSide.MeshLines[2][i] = TheSide.NodeLocations[NNPE_Side[0] * NNPE_Side[1] - 1]; } for (int i = 0; i < NNPE_Side[1]; i++) { TheSide.MeshLines[1][i] = TheSide.NodeLocations[NNPE_Side[0] * i - 1]; TheSide.MeshLines[3][i] = TheSide.NodeLocations[NNPE_Side[0] * (NNPE_Side[1] - 1) - NNPE_Side[0] * i]; } Make_GraphicsAreasForSide_local(Side_Nodes, NNPE_Side, Resolution, ref TheSide); }
private void Chage_GraphicsAreas_Values(Node_ND[] Side_Nodes, int Resolution, ref Side TheSide) { ParametricInterpolation_ND_Triangle Node_Interpolator = new ParametricInterpolation_ND_Triangle(NNPE_m); int Res_NNPE_m = Resolution * (NNPE_m - 1) + 1; ParametricInterpolation_ND_Triangle Resolution_Interpolaor = new ParametricInterpolation_ND_Triangle(Res_NNPE_m); Vector Area_DisplayValues = Calculate_Area_DisplayValues(Side_Nodes, Node_Interpolator, Resolution_Interpolaor); int NA = Resolution * (NNPE_m - 1) * Resolution * (NNPE_m - 1); TheSide.AreaValues = new Vector[NA]; int index_1 = 0; int index_2 = Resolution * (NNPE_m - 1) + 1; int index = 0; for (int i = 0; i < Resolution * (NNPE_m - 1); i++) { int N = Resolution * (NNPE_m - 1) + 1 - i; for (int j = 0; j < N - 2; j++) { TheSide.AreaValues[index] = new Vector(3); TheSide.AreaValues[index].Values[0] = Area_DisplayValues.Values[index_1 + j]; TheSide.AreaValues[index].Values[1] = Area_DisplayValues.Values[index_1 + j + 1]; TheSide.AreaValues[index].Values[2] = Area_DisplayValues.Values[index_2 + j]; //TheSide.AreaValues[index].Values[3] = TheSide.AreaValues[index].Values[0]; index++; TheSide.AreaValues[index] = new Vector(3); TheSide.AreaValues[index].Values[0] = Area_DisplayValues.Values[index_1 + j + 1]; TheSide.AreaValues[index].Values[1] = Area_DisplayValues.Values[index_2 + j + 1]; TheSide.AreaValues[index].Values[2] = Area_DisplayValues.Values[index_2 + j]; //TheSide.AreaValues[index].Values[3] = TheSide.AreaValues[index].Values[0]; index++; } TheSide.AreaValues[index] = new Vector(3); TheSide.AreaValues[index].Values[0] = Area_DisplayValues.Values[index_1 + N - 2]; TheSide.AreaValues[index].Values[1] = Area_DisplayValues.Values[index_1 + N - 1]; TheSide.AreaValues[index].Values[2] = Area_DisplayValues.Values[index_2 + N - 2]; //TheSide.AreaValues[index].Values[3] = TheSide.AreaValues[index].Values[0]; index++; index_1 = index_2; index_2 += N - 1; } }
public override void Change_GraphicsSurfaces_Values(Node_ND[] Side_Nodes, int Resolution, ref Side TheSide) { if (Resolution == 1) { Chage_GraphicsAreas_Values(Side_Nodes, ref TheSide); } else { Chage_GraphicsAreas_Values(Side_Nodes, Resolution, ref TheSide); } }
public override void Make_GraphicsAreasForSide(Node_ND[] Side_Nodes, int Resolution, ref Side TheSide) { if (Resolution == 1) { Make_GraphicsAreas(Side_Nodes, ref TheSide); } else { Make_GraphicsAreas(Side_Nodes, ref TheSide, Resolution); } }
private void Make_Side(Node_ND[] Side_Nodes, Vector[] Side_NodeLocations_X, Vector[] Side_NodeLocations_Xi, int Resolution, out Side TheSide) { TheSide = new Side(); TheSide.NodeLocations = Side_NodeLocations_X; TheSide.MeshLines = new Vector[3][]; TheSide.MeshLines[0] = new Vector[NNPE_m]; TheSide.MeshLines[1] = new Vector[NNPE_m]; TheSide.MeshLines[2] = new Vector[NNPE_m]; int index_1 = 0; for (int i = 0; i < NNPE_m; i++) { TheSide.MeshLines[0][i] = TheSide.NodeLocations[i]; TheSide.MeshLines[1][i] = TheSide.NodeLocations[index_1 + NNPE_m - 1]; TheSide.MeshLines[2][NNPE_m - 1 - i] = TheSide.NodeLocations[index_1]; index_1 += NNPE_m - i; } Make_GraphicsAreasForSide(Side_Nodes, Resolution, ref TheSide); }