private void LoadingProcess() { progress = new LoadingProgress(3); progress.OnUpdate += new LoadingProgress.ProgressUpdateHandler(progress_OnUpdate); progress.OnProcessUpdate += new LoadingProgress.ProcessUpdateHandler(progress_OnProcessUpdate); loadedChemFile = MoleculeLoader.LoadFromFile(filename, progress); // close dlg this.Invoke(closeDelegate); }
public void LoadFile(IChemFileWrapper file) { renderSource = new ChemRenderingSource3D(file.chemFile); if (renderContext != null) { renderContext.ChemRenderSource = renderSource; renderContext.OnResize(Width, Height); //renderContext.Render(null); } // load structures if available //if (file.results.FileFormat is PDBFormat) //{ // object frame = ChemModel.CreateJMOLFrameFromCDKFile(file.chemFile, renderContext.Device); // // need to render 1 struct/shape at a time // NuSceneBuffer3D sceneBuffer = ChemModel.RenderShapes(frame, ChemModel.ShapesType.Ribbons); // renderSource.sceneBuffer = sceneBuffer; // renderContext.ribbons = new ChemEntityRibbon(sceneBuffer); // renderContext.ribbons.Init(renderContext.Device, outputDesc.GeneralStructuresShadingDesc); // //sceneBuffer = ChemModel.RenderShapes(frame, ChemModel.ShapesType.Cartoon); // //renderContext.cartoons = new ChemEntityCartoon(sceneBuffer); // //renderContext.cartoons.Init(renderContext.Device, outputDesc.GeneralStructuresShadingDesc); //} /*SmilesGenerator gen = new SmilesGenerator(file.chemFile.Builder); * moleculeSMILESRawString = gen.createSMILES(file.chemFile.ChemSequences[0].ChemModels[0].SetOfMolecules.Molecules[0]); */ renderFrame = true; renderingThread.Start(); UleDlg dlg = new UleDlg(file.results, file.progress); dlg.ShowDialog(); dlg.Dispose(); }
private void OpenMolecule(string filename) { //try //{ LoadingProgressDlg dlg = new LoadingProgressDlg(filename); dlg.ShowDialog(); IChemFileWrapper chemFile = dlg.LoadedChemFile; //MoleculeLoader.LoadFromFile(filename); Chem3DControl control = new Chem3DControl(); ViewTab tab = new ViewTab(control); tab.Text = chemFile.filename; tab.MdiParent = this; tab.Show(); HashTableSettings settings = new HashTableSettings(); settings["Base.Path"] = Path.GetFullPath(Application.StartupPath + ConfigurationSettings.AppSettings[(devSettings ? "dev@" : "") + "Base.Path.Relative"]); // /*+ "\\");*/ + "..\\..\\..\\..\\..\\..\\"); control.Init(settings, cdi); control.LoadFile(chemFile); control.OnEntitySelected += control_OnEntitySelected; control.OnRenderUpdate = onRenderUpdate; OnTabChanged(); //} //catch (UserLevelException ule) //{ // MessageBox.Show(this, ule.Message, "Problem Loading File", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); // return; //} //catch { MessageBox.Show(this, "Error loading", "Problem Loading File", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return; } recentFiles.AddFile(filename, RecentFiles.RecentFileType.Molecule); RebuildRecentFilesMenu(); // load outline LoadOutline((IChemFile)control.GetRootNode()); }
public void LoadFile(IChemFileWrapper file) { renderSource = new ChemRenderingSource3D(file.chemFile); if (renderContext != null) { renderContext.ChemRenderSource = renderSource; renderContext.OnResize(Width, Height); //renderContext.Render(null); } // load structures if available //if (file.results.FileFormat is PDBFormat) //{ // object frame = ChemModel.CreateJMOLFrameFromCDKFile(file.chemFile, renderContext.Device); // // need to render 1 struct/shape at a time // NuSceneBuffer3D sceneBuffer = ChemModel.RenderShapes(frame, ChemModel.ShapesType.Ribbons); // renderSource.sceneBuffer = sceneBuffer; // renderContext.ribbons = new ChemEntityRibbon(sceneBuffer); // renderContext.ribbons.Init(renderContext.Device, outputDesc.GeneralStructuresShadingDesc); // //sceneBuffer = ChemModel.RenderShapes(frame, ChemModel.ShapesType.Cartoon); // //renderContext.cartoons = new ChemEntityCartoon(sceneBuffer); // //renderContext.cartoons.Init(renderContext.Device, outputDesc.GeneralStructuresShadingDesc); //} /*SmilesGenerator gen = new SmilesGenerator(file.chemFile.Builder); moleculeSMILESRawString = gen.createSMILES(file.chemFile.ChemSequences[0].ChemModels[0].SetOfMolecules.Molecules[0]); */ renderFrame = true; renderingThread.Start(); UleDlg dlg = new UleDlg(file.results, file.progress); dlg.ShowDialog(); dlg.Dispose(); }