public static bool GenerateCreater(string type, out IWireCreater creater) { bool doubleLayer = false; if (type == WireFrameType.OrthonormalTrussTypeTrussTypeSpaceGrid) { creater = new OrthonormalTrussTypeTrussTypeSpaceGrid(); } else if (type == WireFrameType.TriangularPyramidSpaceGrid) { creater = new TriangularPyramidSpaceGrid(); } else if (type == WireFrameType.OrthonormalFourAnglePyramidMeshFrame) { creater = new OrthonormalFourAnglePyramidMeshFrame(); } else if (type == WireFrameType.OrthogonalSlantingFourAnglePyramidSpaceGrid) { creater = new OrthogonalSlantingFourAnglePyramidSpaceGrid(); } else if (type == WireFrameType.ObliqueFourAnglePyramidSpaceGrid) { creater = new ObliqueFourAnglePyramidSpaceGrid(); } else if (type == WireFrameType.OrthonormalTrussedTrussTypeSpaceGrid) { creater = new OrthonormalTrussedTrussTypeSpaceGrid(); } else if (type == WireFrameType.ThreeDirectionIntersectingSpaceGrid) { creater = new ThreeDirectionIntersectingSpaceGrid(); } else if (type == WireFrameType.FourAnglePyramidSpaceTrussSpaceGrid) { creater = new FourAnglePyramidSpaceTrussSpaceGrid(); } else if (type == WireFrameType.ChessboardFourPyramidSpaceGrid) { creater = new ChessboardFourPyramidSpaceGrid(); } else if (type == WireFrameType.OrthonormalFourAnglePyramidMeshFrame_3) { creater = new OrthonormalFourAnglePyramidMeshFrame(); doubleLayer = true; } else if (type == WireFrameType.FourAnglePyramidSpaceTrussSpaceGrid_3) { creater = new FourAnglePyramidSpaceTrussSpaceGrid(); doubleLayer = true; } else if (type == WireFrameType.ChessboardFourPyramidSpaceGrid_3) { creater = new ChessboardFourPyramidSpaceGrid(); doubleLayer = true; } else if (type == WireFrameType.OrthogonalSlantingFourAnglePyramidSpaceGrid_3) { creater = new OrthogonalSlantingFourAnglePyramidSpaceGrid(); doubleLayer = true; } else { Debug.LogError("new type :" + type); creater = null; } return(doubleLayer); }