Ejemplo n.º 1
0
        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));
        }
Ejemplo n.º 2
0
        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"));
        }