Example #1
0
        private List <string> saveComposition(string filename)
        {
            List <string> files = new List <string>();

            for (int i = 0; i < ProjectManager.Instance.CurrentProject.projectSettings.PrinterSettings.Extruders.Count; i++)
            {
                List <PrintModel> models = ProjectManager.Instance.CurrentProject.ListObjects().Where(x => x.ExtruderNumber == i).ToList();

                if (models.Count > 0)
                {
                    TopoModel model = new TopoModel();
                    foreach (PrintModel stl in models)
                    {
                        stl.UpdateMatrix();
                        model.Merge(stl.ActiveModel, stl.trans);
                    }

                    model.exportSTL(filename + "composition" + i + ".stl", writeSTLBinary);
                    files.Add(filename + "composition" + i + ".stl");
                }
                else
                {
                    files.Add("-");
                }
            }

            return(files);
        }
Example #2
0
        private void saveComposition(string filename)
        {
            TopoModel model = new TopoModel();

            foreach (PrintModel stl in ListObjects(false))
            {
                stl.UpdateMatrix();
                model.Merge(stl.ActiveModel, stl.trans);
            }
            if (filename.EndsWith(".obj") || filename.EndsWith(".OBJ"))
            {
                model.exportObj(filename, true);
            }
            else
            {
                model.exportSTL(filename, writeSTLBinary);
            }
            Slicer.lastBox.Clear();
            Slicer.lastBox.Add(model.boundingBox);
        }