private void setElement(string elementName, bool enabled) { if (selectedMolecule == null || selectedMolecule.RenderSettings.EnabledElements == null) { return; } if (selectedMolecule.RenderSettings.EnabledElements.Contains(elementName)) { if (!enabled) { selectedMolecule.RenderSettings.EnabledElements.Remove(elementName); } } else { if (enabled) { selectedMolecule.RenderSettings.EnabledElements.Add(elementName); } } if (selectedMolecule.Hidden) { selectedMolecule.PendingRerender = true; } else { UserInterfaceEvents.RaiseMoleculeRenderSettingsUpdated(selectedMolecule.ID, selectedMolecule.RenderSettings, selectedMolecule.CurrentTrajectoryFrameNumber); } }
public void OnStopButton() { if (validMoleculeSelected()) { animating = false; MoleculeSettings molecule = molecules.GetSelected(); molecule.CurrentTrajectoryFrameNumber = null; UserInterfaceEvents.RaiseMoleculeRenderSettingsUpdated(molecule.ID, molecule.RenderSettings, molecule.CurrentTrajectoryFrameNumber); UpdateFrameNumberInfo(); } }
private void updateMoleculeRender() { if (selectedMolecule.Hidden) { selectedMolecule.PendingRerender = true; } else { UserInterfaceEvents.RaiseMoleculeRenderSettingsUpdated(selectedMolecule.ID, selectedMolecule.RenderSettings, selectedMolecule.CurrentTrajectoryFrameNumber); } }
private void loadRenderSettings(int moleculeID, MoleculeRenderSettings settings) { MoleculeSettings molecule = molecules.Get(moleculeID); if (molecule == null) { return; } molecule.RenderSettings = (MoleculeRenderSettings)settings; UserInterfaceEvents.RaiseMoleculeRenderSettingsUpdated(molecule.ID, molecule.RenderSettings, molecule.CurrentTrajectoryFrameNumber); }
private void stepBackwardAnimation() { MoleculeSettings molecule = molecules.GetSelected(); molecule.CurrentTrajectoryFrameNumber--; if (molecule.CurrentTrajectoryFrameNumber == null || molecule.CurrentTrajectoryFrameNumber < 0) { molecule.CurrentTrajectoryFrameNumber = molecule.TrajectoryFrameCount - 1; } UserInterfaceEvents.RaiseMoleculeRenderSettingsUpdated(molecule.ID, molecule.RenderSettings, molecule.CurrentTrajectoryFrameNumber); UpdateFrameNumberInfo(); }
public void OnEndEditFrameInput() { Debug.Log("End frame input"); try { int frameNumber = int.Parse(this.frameNumber.text); MoleculeSettings molecule = molecules.GetSelected(); frameNumber = Mathf.Clamp(frameNumber, 1, molecule.TrajectoryFrameCount); this.frameNumber.text = frameNumber.ToString(); if (frameNumber != lastFrameNumber) { Debug.Log("New frameNumber: " + frameNumber); molecule.CurrentTrajectoryFrameNumber = frameNumber - 1; UserInterfaceEvents.RaiseMoleculeRenderSettingsUpdated(molecule.ID, molecule.RenderSettings, molecule.CurrentTrajectoryFrameNumber); } } catch (Exception) { frameNumber.text = lastFrameNumber.ToString(); } }
public void OnShowHideMoleculeButton() { MoleculeSettings molecule = molecules.GetSelected(); if (molecule == null) { return; } if (hiddenMolecules.Contains(molecule.ID)) { molecule.Hidden = false; UserInterfaceEvents.RaiseShowMolecule(molecule.ID); if (molecule.PendingRerender) { UserInterfaceEvents.RaiseMoleculeRenderSettingsUpdated(molecule.ID, molecule.RenderSettings, molecule.CurrentTrajectoryFrameNumber); } UserInterfaceEvents.RaiseMoleculeSelected(molecule.ID, true); hiddenMolecules.Remove(molecule.ID); } else { molecule.Hidden = true; trajectoryControls.StopAnimation(); UserInterfaceEvents.RaiseHideMolecule(molecule.ID); hiddenMolecules.Add(molecule.ID); if (interactionsPanel.MonitoringEnabled) { interactionsPanel.StopInteractions(); console.ShowError("Stopped monitoring molecular interactions, hiding molecule"); } UserInterfaceEvents.RaiseMoleculeSelected(molecule.ID, false); } updateSelectedMoleculeInterfaceSettings(); }
public void DecreaseBondScale() { selectedMolecule.RenderSettings.BondScale -= scaleIncrementAmount; BondScale.text = selectedMolecule.RenderSettings.BondScale.ToString("F1"); UserInterfaceEvents.RaiseMoleculeRenderSettingsUpdated(selectedMolecule.ID, selectedMolecule.RenderSettings, selectedMolecule.CurrentTrajectoryFrameNumber); }
public void SaveSettings() { if (selectedMolecule == null) { return; } bool visualisationUpdateRequired = false; // primary structure options if (selectedMolecule.RenderSettings.ShowPrimaryStructure != EnablePrimaryStructureToggle.isOn) { selectedMolecule.RenderSettings.ShowPrimaryStructure = EnablePrimaryStructureToggle.isOn; visualisationUpdateRequired = true; } if (selectedMolecule.RenderSettings.ShowAtoms != ShowAtomsToggle.isOn) { selectedMolecule.RenderSettings.ShowAtoms = ShowAtomsToggle.isOn; visualisationUpdateRequired = true; } if (selectedMolecule.RenderSettings.ShowBonds != ShowBondsToggle.isOn) { selectedMolecule.RenderSettings.ShowBonds = ShowBondsToggle.isOn; visualisationUpdateRequired = true; } if (selectedMolecule.RenderSettings.ShowStandardResidues != ShowStandardResiduesToggle.isOn) { selectedMolecule.RenderSettings.ShowStandardResidues = ShowStandardResiduesToggle.isOn; visualisationUpdateRequired = true; } if (selectedMolecule.RenderSettings.ShowNonStandardResidues != ShowNonStandardResiduesToggle.isOn) { selectedMolecule.RenderSettings.ShowNonStandardResidues = ShowNonStandardResiduesToggle.isOn; visualisationUpdateRequired = true; } if (selectedMolecule.RenderSettings.ShowMainChains != ShowMainChainsToggle.isOn) { selectedMolecule.RenderSettings.ShowMainChains = ShowMainChainsToggle.isOn; visualisationUpdateRequired = true; } // representation options if (ShowCPKToggle.isOn && selectedMolecule.RenderSettings.Representation != MolecularRepresentation.CPK) { selectedMolecule.RenderSettings.Representation = MolecularRepresentation.CPK; visualisationUpdateRequired = true; } else if (ShowVDWToggle.isOn && selectedMolecule.RenderSettings.Representation != MolecularRepresentation.VDW) { selectedMolecule.RenderSettings.Representation = MolecularRepresentation.VDW; visualisationUpdateRequired = true; } // secondary structure options if (selectedMolecule.RenderSettings.ShowSecondaryStructure != EnableSecondaryStructureToggle.isOn) { selectedMolecule.RenderSettings.ShowSecondaryStructure = EnableSecondaryStructureToggle.isOn; visualisationUpdateRequired = true; } if (selectedMolecule.RenderSettings.ShowHelices != ShowHelicesToggle.isOn) { selectedMolecule.RenderSettings.ShowHelices = ShowHelicesToggle.isOn; visualisationUpdateRequired = true; } if (selectedMolecule.RenderSettings.ShowSheets != ShowSheetsToggle.isOn) { selectedMolecule.RenderSettings.ShowSheets = ShowSheetsToggle.isOn; visualisationUpdateRequired = true; } if (selectedMolecule.RenderSettings.ShowTurns != ShowTurnsToggle.isOn) { selectedMolecule.RenderSettings.ShowTurns = ShowTurnsToggle.isOn; visualisationUpdateRequired = true; } if (selectedMolecule.RenderSettings.SmoothNodes != SmoothNodesToggle.isOn) { selectedMolecule.RenderSettings.SmoothNodes = SmoothNodesToggle.isOn; visualisationUpdateRequired = true; } // other options if (selectedMolecule.RenderSettings.ShowSimulationBox != EnableSimlationBoxToggle.isOn) { selectedMolecule.RenderSettings.ShowSimulationBox = EnableSimlationBoxToggle.isOn; visualisationUpdateRequired = true; } if (selectedMolecule.RenderSettings.CalculateBoxEveryFrame != CalculateBoxEveryFrameToggle.isOn) { selectedMolecule.RenderSettings.CalculateBoxEveryFrame = CalculateBoxEveryFrameToggle.isOn; visualisationUpdateRequired = true; } // recreate structures if necessary if (visualisationUpdateRequired) { if (selectedMolecule.Hidden) { selectedMolecule.PendingRerender = true; } else { UserInterfaceEvents.RaiseMoleculeRenderSettingsUpdated(selectedMolecule.ID, selectedMolecule.RenderSettings, selectedMolecule.CurrentTrajectoryFrameNumber); } } }