protected override void OnContentRendered(EventArgs e) { model1.Layers[0].LineWeight = 2; model1.Layers[0].Color = MyModel.DrawingColor; model1.Layers.TryAdd(new Layer("Dimensions", System.Drawing.Color.ForestGreen)); model1.Layers.TryAdd(new Layer("Reference geometry", System.Drawing.Color.Red)); tableTabControl.Environment = model1; model1.ActiveLayerName = model1.Layers[0].Name; // enables FastZPR when the scene exceeds 3000 objects _maxComplexity = model1.Turbo.MaxComplexity = 3000; selectionComboBox.SelectedIndex = 0; rendererVersionStatusLabel.Text = model1.RendererVersion.ToString(); model1.SetView(viewType.Top); model1.Invalidate(); model1.Focus(); EnableControls(false); #if SETUP string fileName = String.Format(@"{0}\Eyeshot {1} {2} Samples\dataset\Assets\Misc\app8.dwg", System.Environment.GetFolderPath(System.Environment.SpecialFolder.MyDocuments), _helper.Edition, _helper.Version.Major); ReadFileAsync ra = _helper.GetReadAutodesk(model1, fileName); #else ReadAutodesk ra = new ReadAutodesk("../../../../../../dataset/Assets/Misc/app8.dwg"); ra.HatchImportMode = ReadAutodesk.hatchImportType.BlockReference; #endif model1.StartWork(ra); base.OnContentRendered(e); }
private void model1_WorkCompleted(object sender, WorkCompletedEventArgs e) { ReadFileAsync rfa = (ReadFileAsync)e.WorkUnit; // adds MotherBoard Entities and Materials in view scene rfa.AddToScene(model1); model1.ZoomFit(); // updates the bounding box size values of the viewport model1.Entities.UpdateBoundingBox(); // copies all items inside model1's master collections to model2 model1.CopyTo(model2); // sets the center and the radius of external content sphere for drawing directional Lights in model2 Point3D max = model1.Entities.BoxMax; Point3D min = model1.Entities.BoxMin; Point3D center = new Point3D(min.X + (max.X - min.X) / 2, min.Y + (max.Y - min.Y) / 2, min.Z + (max.Z - min.Z) / 2); double radius = Math.Sqrt(Math.Pow(max.X - min.X, 2) + Math.Pow(max.Y - min.Y, 2) + Math.Pow(max.Z - min.Z, 2)); // creates Light editors Lights = new DrawLight[8]; for (int i = 0; i < 8; i++) { Lights[i] = new DrawLight(model1, i + 1, center, radius, "Lights"); } UpdateLights(); model1_CameraMoveEnd(null, null); model2.ZoomFit(); }
//导入 private void importButton_Click(object sender, EventArgs e) { using (var importFileDialog1 = new OpenFileDialog()) using (var importFileAddOn = new ImportFileAddOn()) { string theFilter = "All compatible file types (*.*)|*.asc;*.stl;*.obj;*.las;*.3ds"; theFilter += ";*.igs;*.iges;*.stp;*.step"; theFilter += "|Points (*.asc)|*.asc|" + "WaveFront OBJ (*.obj)|*.obj|" + "Stereolithography (*.stl)|*.stl|" + "Laser LAS (*.las)|*.las|" + "3D Studio Max (*.3ds)|*.3ds"; theFilter += "|IGES (*.igs; *.iges)|*.igs; *.iges|" + "STEP (*.stp; *.step)|*.stp; *.step"; importFileDialog1.Filter = theFilter; importFileDialog1.Multiselect = false; importFileDialog1.AddExtension = true; importFileDialog1.CheckFileExists = true; importFileDialog1.CheckPathExists = true; if (importFileDialog1.ShowDialog(importFileAddOn, this) == DialogResult.OK) { model.Clear(); ReadFileAsync rfa = getReader(importFileDialog1.FileName); if (rfa != null) { model.StartWork(rfa); setFileButtonEnabled(false); } } } }
private void importButton_OnClick(object sender, EventArgs e) { using (var importFileDialog = new System.Windows.Forms.OpenFileDialog()) using (var importFileAddOn = new ImportFileAddOn()) { importFileDialog.Filter = "CAD drawings (*.dwg)|*.dwg|Drawing Exchange Format (*.dxf)|*.dxf|All compatible file types (*.*)|*.dwg;*.dxf"; importFileDialog.Multiselect = false; importFileDialog.AddExtension = true; importFileDialog.CheckFileExists = true; importFileDialog.CheckPathExists = true; if (importFileDialog.ShowDialog(importFileAddOn, null) == System.Windows.Forms.DialogResult.OK) { model1.Clear(); _yAxisUp = importFileAddOn.YAxisUp; EnableControls(false); #if SETUP ReadFileAsync ra = _helper.GetReadAutodesk(model1, importFileDialog.FileName); #else ReadAutodesk ra = new ReadAutodesk(importFileDialog.FileName); #endif model1.StartWork(ra); } } }
private void model2_WorkCompleted(object sender, devDept.Eyeshot.WorkCompletedEventArgs e) { if (e.WorkUnit is ReadFileAsync) { ReadFileAsync rfa = (ReadFileAsync)e.WorkUnit; rfa.AddToScene(model1); model1.SetView(viewType.Trimetric, true, model1.AnimateCamera); } }
private void importButton_Click(object sender, EventArgs e) { using (var importFileDialog1 = new OpenFileDialog()) using (var importFileAddOn = new ImportFileAddOn()) { string theFilter = "All compatible file types (*.*)|*.asc;*.stl;*.obj;*.las;*.3ds" #if NURBS + ";*.igs;*.iges;*.stp;*.step" #endif #if SOLID + ";*.ifc;*.ifczip" #endif + "|Points (*.asc)|*.asc|" + "WaveFront OBJ (*.obj)|*.obj|" + "Stereolithography (*.stl)|*.stl|" + "Laser LAS (*.las)|*.las|" + "3D Studio Max (*.3ds)|*.3ds"; #if NURBS theFilter += "|IGES (*.igs; *.iges)|*.igs; *.iges|" + "STEP (*.stp; *.step)|*.stp; *.step"; #endif #if SOLID theFilter += "|IFC (*.ifc; *.ifczip)|*.ifc; *.ifczip"; #endif importFileDialog1.Filter = theFilter; importFileDialog1.Multiselect = false; importFileDialog1.AddExtension = true; importFileDialog1.CheckFileExists = true; importFileDialog1.CheckPathExists = true; if (importFileDialog1.ShowDialog(importFileAddOn, null) == System.Windows.Forms.DialogResult.OK) { assemblyTreeView1.ClearTree(); if (model1.Entities.IsOpenCurrentBlockReference) { model1.Entities.CloseCurrentBlockReference(); } model1.Clear(); _yAxisUp = importFileAddOn.YAxisUp; ReadFileAsync rfa = getReader(importFileDialog1.FileName); if (rfa != null) { model1.StartWork(rfa); model1.SetView(viewType.Trimetric, true, model1.AnimateCamera); openButton.IsEnabled = false; saveButton.IsEnabled = false; importButton.IsEnabled = false; exportButton.IsEnabled = false; } } } }
private void modelWorkCompleted2(object sender, WorkCompletedEventArgs e) { if (e.WorkUnit is ReadFileAsync) { ReadFileAsync rfa = (ReadFileAsync)e.WorkUnit; rfa.AddToScene(model); model.SetView(viewType.Trimetric, true, model.AnimateCamera); } setFileButtonEnabled(true); }
private void model1_WorkCompleted(object sender, devDept.Eyeshot.WorkCompletedEventArgs e) { if (e.WorkUnit is ReadFileAsync) { ReadFileAsync ra = (ReadFileAsync)e.WorkUnit; ra.AddToScene(model1, new RegenOptions() { Async = true }); } }
private void model1_WorkCompleted(object sender, devDept.Eyeshot.WorkCompletedEventArgs e) { // checks the WorkUnit type, more than one can be present in the same application if (e.WorkUnit is ReadFileAsync) { ReadFileAsync rfa = (ReadFileAsync)e.WorkUnit; ReadFile rf = e.WorkUnit as ReadFile; if (rf != null) { _skipZoomFit = rf.FileSerializer.FileBody.Camera != null; } else { _skipZoomFit = false; } if (rfa.Entities != null && _yAxisUp) { rfa.RotateEverythingAroundX(); } rfa.AddToScene(model1); model1.Layers[0].LineWeight = 2; model1.Layers[0].Color = MyModel.DrawingColor; model1.Layers.TryAdd(new Layer("Dimensions", System.Drawing.Color.ForestGreen)); model1.Layers.TryAdd(new Layer("Reference geometry", System.Drawing.Color.Red)); tableTabControl.Sync(); if (System.IO.Path.GetFileName(rfa.FileName) == "app8.dwg") { foreach (Entity ent in model1.Entities) { ent.Translate(-170, -400); } model1.Entities.Regen(); model1.Camera.Target = new Point3D(75, 3.5, 288); model1.Camera.ZoomFactor = 3; _skipZoomFit = true; } if (!_skipZoomFit) { model1.SetView(viewType.Top, true, false); } } EnableControls(true); }
//导入文件 private void importButton_Click(object sender, EventArgs e) { using (var importFileDialog1 = new OpenFileDialog()) //using (var importFileAddOn = new ImportFileAddOn()) { string filter = "All compatible file types (*.*)|*.stl;*.obj;*.3ds" #if NURBS + ";*.igs;*.iges;*.stp;*.step" #endif #if SOLID + ";*.ifc;*.ifczip" #endif + "|WaveFront OBJ (*.obj)|*.obj|" + "Stereolithography (*.stl)|*.stl|" + "3D Studio Max (*.3ds)|*.3ds"; #if NURBS filter += "|IGES (*.igs; *.iges)|*.igs; *.iges|" + "STEP (*.stp; *.step)|*.stp; *.step"; #endif #if SOLID filter += "|IFC (*.ifc; *.ifczip)|*.ifc; *.ifczip"; #endif importFileDialog1.Filter = filter; importFileDialog1.Multiselect = true; importFileDialog1.AddExtension = true; importFileDialog1.CheckFileExists = true; importFileDialog1.CheckPathExists = true; if (importFileDialog1.ShowDialog() == DialogResult.OK) { model1.Clear(); ReadFileAsync rfa = GetReader(importFileDialog1.FileName); if (rfa != null) { model1.StartWork(rfa); model1.SetView(viewType.Trimetric, true, model1.AnimateCamera); } } } }
private void model1_WorkCompleted(object sender, devDept.Eyeshot.WorkCompletedEventArgs e) { if (e.WorkUnit is ReadFileAsync) { assemblyTreeView1.ClearCurrent(true); ReadFileAsync ra = (ReadFileAsync)e.WorkUnit; if (_yAxisUp) { ra.RotateEverythingAroundX(); } // updates model units and its related combo box if (e.WorkUnit is ReadFileAsyncWithBlocks) { model1.Units = ((ReadFileAsyncWithBlocks)e.WorkUnit).Units; } ra.AddToScene(model1, new RegenOptions() { Async = true }); } else if (e.WorkUnit is Regeneration) { assemblyTreeView1.PopulateTree(model1.Entities); model1.Entities.UpdateBoundingBox(); UpdateFastZprButton(); model1.ZoomFit(); model1.Invalidate(); } openButton.IsEnabled = true; saveButton.IsEnabled = true; importButton.IsEnabled = true; exportButton.IsEnabled = true; }