public ActionResult GetCustomMesh() { IneqMeshViewModel ineqMeshViewModel = (IneqMeshViewModel)Session["IneqMeshViewModel"]; IneqMesh ineqMesh = null; if (ineqMeshViewModel == null) { return(Content(null)); } if (!String.IsNullOrEmpty(ineqMeshViewModel.PLY)) { return(Content(ineqMeshViewModel.PLY)); } ineqMesh = ineqMeshViewModel.IneqMesh; ineqMesh.Create(); if (ineqMeshViewModel.Quality) { CheckQuality(ineqMesh); } if (ineqMeshViewModel.CurvatureQuality) { CheckCurvatureQuality(ineqMesh); } string ply = GetPLY(ineqMesh); ineqMeshViewModel.PLY = ply; return(Content(ply)); }
public ActionResult GetMesh(string Mesh = "") { IneqMesh ineqMesh = null; string path = null; MeshSamples samples = new MeshSamples(); string FileName = Mesh + ".ply"; path = System.IO.Path.Combine(Server.MapPath("~/Samples"), FileName); if (System.IO.File.Exists(path)) { return(File(path, "application/octet-stream")); } ineqMesh = samples[Mesh]; ineqMesh.Create(); CheckQuality(ineqMesh); ineqMesh.DeleteLonelyPoints(); string ply = GetPLY(ineqMesh); System.IO.File.WriteAllText(path, ply); return(File(path, "application/octet-stream")); }