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 GetCustomMeshImproveQuality(bool boundary) { IneqMeshViewModel ineqMeshViewModel = (IneqMeshViewModel)Session["IneqMeshViewModel"]; IneqMesh ineqMesh = null; if (ineqMeshViewModel == null || ineqMeshViewModel.IneqMesh == null || ineqMeshViewModel.IneqMesh.Tetrahedrons.Count == 0) { return(Content(null)); } ineqMesh = ineqMeshViewModel.IneqMesh; if (boundary) { CheckBoundaryQuality(ineqMesh); } else { CheckQuality(ineqMesh); } string ply = GetPLY(ineqMesh); ineqMeshViewModel.PLY = ply; return(Content(ply)); }
public ActionResult GetSampleUFunc(int sampleUFuncIndex) { var tmp = IneqMeshViewModel.DefaultModel(-1, sampleUFuncIndex); return(Json(new { ufunc = tmp.UFunc })); }
public ActionResult GetSampleFormula(int sampleIndex) { var tmp = IneqMeshViewModel.DefaultModel(sampleIndex); return(Json(new { formula = tmp.Formula })); }
public ActionResult SetIneqMesh(IneqMeshViewModel ineqMeshViewModel) { if (ModelState.IsValid) { try { ineqMeshViewModel.SetIneqMesh(); Session["IneqMeshViewModel"] = ineqMeshViewModel; } catch (Exception exc) { return(Json(new { success = false, message = exc.Message })); } return(Json(new { success = true })); } return(Json(new { success = false, message = "Invalid data" })); }
public ActionResult GetCustomMeshJiggle() { IneqMeshViewModel ineqMeshViewModel = (IneqMeshViewModel)Session["IneqMeshViewModel"]; IneqMesh ineqMesh = null; if (ineqMeshViewModel == null || ineqMeshViewModel.IneqMesh == null || ineqMeshViewModel.IneqMesh.Tetrahedrons.Count == 0) { return(Content(null)); } ineqMesh = ineqMeshViewModel.IneqMesh; ineqMesh.Jiggle(3); ineqMesh.DeleteLonelyPoints(); string ply = GetPLY(ineqMesh); ineqMeshViewModel.PLY = ply; return(Content(ply)); }