public FormFor3DVisu(cScreening CompleteScreening, FormForSimuGenerator Parent) { InitializeComponent(); this.CompleteScreening = CompleteScreening; //this.NewWorld = NewWorld; this.Parent = Parent; }
public cGlobalInfo(cScreening CurrentScreen, HCSAnalyzer WindowHCSAnalyzer) { OptionsWindow = new FormForOptionsWindow(CurrentScreen); this.CurrentScreen = CurrentScreen; this.WindowHCSAnalyzer = WindowHCSAnalyzer; this.WindowName = WindowHCSAnalyzer.Text; this.LUT = LUTs.LUT_JET; }
// protected Size SizeHisto = new System.Drawing.Size(10, 5); public cWell(cWell NewWell) { this.PosX = NewWell.PosX; this.PosY = NewWell.PosY; this.ListDescriptors = NewWell.ListDescriptors; this.Parent = NewWell.Parent; this.AssociatedChart = NewWell.AssociatedChart; this.AssociatedPlate = NewWell.AssociatedPlate; this.CurrentColor = this.Parent.GlobalInfo.GetColor(ClassForClassif); }
public FormForOptionsWindow(cScreening CurrentScreen) { this.CurrentScreen = CurrentScreen; InitializeComponent(); buttonOk.Focus(); buttonOk.Select(); this.comboBoxHierarchicalDistance.SelectedIndex = 0; this.comboBoxHierarchicalLinkType.SelectedIndex = 0; }
public FormFor3DDataDisplay(bool IsFullScreen, cScreening CompleteScreening) { this.CompleteScreening = CompleteScreening; InitializeComponent(); this.IsFullScreen = IsFullScreen; // WindowFormFor3DVizuOptions.Parent = this; for (int i = 0; i < (int)CompleteScreening.ListDescriptors.Count; i++) { ListScales.Add(1); } }
public cWell(List<cDescriptor> ListDesc, int Col, int Row, cScreening screenParent, cPlate CurrentPlate) { this.Parent = screenParent; this.AssociatedPlate = CurrentPlate; this.ListDescriptors = new List<cDescriptor>(); this.ListDescriptors = ListDesc; this.PosX = Col; this.PosY = Row; this.CurrentColor = this.Parent.GlobalInfo.GetColor(ClassForClassif); }
//public cWell(cWell NewWell) //{ // this.PosX = NewWell.PosX; // this.PosY = NewWell.PosY; // this.ListDescriptors = NewWell.ListDescriptors; // this.Parent = NewWell.Parent; // this.AssociatedChart = NewWell.AssociatedChart; // this.AssociatedPlate = NewWell.AssociatedPlate; // this.CurrentColor = this.Parent.GlobalInfo.GetColor(ClassForClassif); //} public cWell(cDescriptor Desc, int Col, int Row, cScreening screenParent, cPlate CurrentPlate) { this.CellNumber = -1; this.Parent = screenParent; this.AssociatedPlate = CurrentPlate; this.ListDescriptors = new List<cDescriptor>(); List<cDescriptor> TmpListDescriptors = new List<cDescriptor>(); TmpListDescriptors.Add(Desc); this.AddDescriptors(TmpListDescriptors); this.PosX = Col; this.PosY = Row; this.CurrentColor = this.Parent.GlobalInfo.GetColor(ClassForClassif); }
public FormFor3DDataDisplay(bool IsFullScreen, cScreening CompleteScreening) { this.CompleteScreening = CompleteScreening; InitializeComponent(); // toolTip1.SetToolTip(comboBoxDescriptorX,comboBoxDescriptorX.Text+"aaaaaa"); //comboBoxDescriptorX.MouseHover += new System.EventHandler(this.comboBoxDescriptorX_MouseHover); //this.comboBoxDescriptorX.tool // Set up the ToolTip text for the Button and Checkbox. // toolTip1.SetToolTip(, "Unsupervised feature selection.\nThese approaches use all the active wells as data for the dimensionality reduction."); this.IsFullScreen = IsFullScreen; // WindowFormFor3DVizuOptions.Parent = this; for (int i = 0; i < (int)CompleteScreening.ListDescriptors.Count; i++) { ListScales.Add(1); } ClassSelectionPanel = new PanelForClassSelection(true, Classes.Base_Classes.GUI.eClassType.WELL); ClassSelectionPanel.Height = panelForClasses.Height; ClassSelectionPanel.SelectAll(); panelForClasses.Controls.Add(ClassSelectionPanel); foreach (var CurrentCheckBox in ClassSelectionPanel.ListCheckBoxes) { CurrentCheckBox.CheckedChanged += new EventHandler(CurrentCheckBox_CheckedChanged); } ToolTipForX.AutoPopDelay = ToolTipForY.AutoPopDelay = ToolTipForZ.AutoPopDelay = 5000; ToolTipForX.InitialDelay = ToolTipForY.InitialDelay = ToolTipForZ.InitialDelay = 500; ToolTipForX.ReshowDelay = ToolTipForY.ReshowDelay = ToolTipForZ.ReshowDelay = 500; ToolTipForX.ShowAlways = ToolTipForY.ShowAlways = ToolTipForZ.ShowAlways = true; ToolTipForX.SetToolTip(comboBoxDescriptorX, comboBoxDescriptorX.Text); this.WindowFormFor3DVizuOptions = new FormFor3DVizuOptions(this); this.LightIntensity = (double)this.WindowFormFor3DVizuOptions.numericUpDownLightIntensity.Value; this.LightAmbient = (double)this.WindowFormFor3DVizuOptions.numericUpDownLightAmbient.Value; this.LightDiffuse = (double)this.WindowFormFor3DVizuOptions.numericUpDownLightIntensity.Value; this.LightSpecular = (double)this.WindowFormFor3DVizuOptions.numericUpDownLightIntensity.Value; SphereSource = vtkSphereSource.New(); }
public cWell(cSignature Desc, int Col, int Row, cScreening screenParent, cPlate CurrentPlate) { //Parent = screenParent; this.AssociatedPlate = CurrentPlate; this.ListSignatures = new cListSignature(); this.ListSignatures.Add(Desc); this.PosX = Col; this.PosY = Row; // this.CurrentColor = this.cGlobalInfo.ListClasses[ClassForClassif].ColourForDisplay; Desc.AssociatedWell = this; // this.ListClass.Add(this.InitialClass); this.ListProperties = new cListWellProperty(this); this.ListProperties.UpdateValueByName("Well Class", 2); }
public cPanelForDisplayArray(double[][] Values, cScreening CurrentScreening) { this.CellSize = 2; this.Paint += new System.Windows.Forms.PaintEventHandler(this.cPanelForDisplayArray_Paint); this.DoubleBuffered = false; this.CurrentScreening = CurrentScreening; this.ValuesMatrix = Values; for (int j = 0; j < ValuesMatrix.Length; j++) for (int i = 0; i < ValuesMatrix[0].Length; i++) { if (ValuesMatrix[j][i] > this.Max) this.Max = ValuesMatrix[j][i]; if (ValuesMatrix[j][i] < this.Min) this.Min = ValuesMatrix[j][i]; } DisplayMatrix(); }
public FormClassification(cScreening CurrentScreening) { InitializeComponent(); this.CurrentScreening = CurrentScreening; }
private void generateDRCsToolStripMenuItem_Click(object sender, EventArgs e) { int nbrofdrugs = 6; int nbrofconcentrations = 10; int nbrofdesc = 3; double[, ,] DRC = new double[nbrofconcentrations, nbrofdrugs, nbrofdesc]; float[] X1 = new float[nbrofconcentrations]; X1[0] = 1000; for (int i = 1; i < X1.Length; i++) { X1[i] = X1[i - 1] / 3; } Random Bot = new Random(); Random To = new Random(); Random Ec5 = new Random(); Random Slop = new Random(); CompleteScreening = new cScreening("Current Screen", this.GlobalInfo); CompleteScreening.Columns = nbrofconcentrations; CompleteScreening.Rows = nbrofdrugs; for (int j = 0; j < nbrofdrugs; j++) { for (int k = 0; k < nbrofdesc; k++) { float Bottom = Bot.Next(10); float Top = To.Next(80, 100); float Ec50 = Ec5.Next(40, 60); float Slope = Slop.Next(1, 5); for (int i = 0; i < X1.Length; i++) { //DRC[i, j, k] = Bottom + (Top - Bottom) / (1 + Math.Pow(((Math.Pow(10, Ec50) / Math.Pow(10, X1[0]))), Slope)); DRC[i, j, k] = Bottom + (Top - Bottom) / (1 + Math.Pow((X1[i] / Ec50), -Slope)); } } } cPlate NewPlate = new cPlate("Cpds", "Plate0", CompleteScreening); CompleteScreening.AddPlate(NewPlate); CompleteScreening.ListDescriptors.Clean(); for (int k = 0; k < nbrofdesc; k++) { cDescriptorsType DescType = new cDescriptorsType("Desc" + k, true, 1, GlobalInfo); CompleteScreening.ListDescriptors.AddNew(DescType); } for (int j = 0; j < nbrofdrugs; j++) { for (int i = 0; i < nbrofconcentrations; i++) { List<cDescriptor> LDesc = new List<cDescriptor>(); for (int k = 0; k < nbrofdesc; k++) { //DRC[i, j, k] = Bottom + (Top - Bottom) / (1 + Math.Pow(((Math.Pow(10, Ec50) / Math.Pow(10, X1[0]))), Slope)); cDescriptor CurrentDesc = new cDescriptor(DRC[i, j, k], CompleteScreening.ListDescriptors[k], CompleteScreening); LDesc.Add(CurrentDesc); } cWell NewWell = new cWell(LDesc, i+1, j+1, CompleteScreening, NewPlate); NewWell.Concentration = X1[i]; NewPlate.AddWell(NewWell); } } CompleteScreening.ListDescriptors.UpDateDisplay(); CompleteScreening.UpDatePlateListWithFullAvailablePlate(); for (int idxP = 0; idxP < CompleteScreening.ListPlatesActive.Count; idxP++) CompleteScreening.ListPlatesActive[idxP].UpDataMinMax(); StartingUpDateUI(); this.toolStripcomboBoxPlateList.Items.Clear(); for (int IdxPlate = 0; IdxPlate < CompleteScreening.ListPlatesActive.Count; IdxPlate++) { string Name = CompleteScreening.ListPlatesActive.GetPlate(IdxPlate).Name; this.toolStripcomboBoxPlateList.Items.Add(Name); PlateListWindow.listBoxPlateNameToProcess.Items.Add(Name); PlateListWindow.listBoxAvaliableListPlates.Items.Add(Name); } CompleteScreening.CurrentDisplayPlateIdx = 0; CompleteScreening.SetSelectionType(comboBoxClass.SelectedIndex - 1); UpdateUIAfterLoading(); }
private void convertDRCToWellToolStripMenuItem1_Click(object sender, EventArgs e) { System.Windows.Forms.DialogResult ResWin = MessageBox.Show("By applying this process, the current screening will be entirely updated ! Proceed ?", "Warning", MessageBoxButtons.YesNo, MessageBoxIcon.Warning); if (ResWin == System.Windows.Forms.DialogResult.No) return; //foreach (cDescriptorsType DescType in CompleteScreening.ListDescriptors) //{ // CompleteScreening.ListDescriptors.RemoveDescUnSafe(DescType, CompleteScreening); //} if (CompleteScreening != null) CompleteScreening.Close3DView(); // CompleteScreening.ListDescriptors.RemoveDesc(CompleteScreening.ListDescriptors[IntToTransfer], CompleteScreening); cScreening MergedScreening = new cScreening("Merged Screen", GlobalInfo); MergedScreening.PanelForPlate = this.panelForPlate; MergedScreening.Rows = CompleteScreening.Rows; MergedScreening.Columns = CompleteScreening.Columns; MergedScreening.ListPlatesAvailable = new cExtendPlateList(); // create the descriptor MergedScreening.ListDescriptors.Clean(); int Idesc = 0; List<cDescriptorsType> ListDescType = new List<cDescriptorsType>(); for (int i = 0; i < CompleteScreening.ListDescriptors.Count; i++) { if (!CompleteScreening.ListDescriptors[i].IsActive()) continue; cDescriptorsType DescEC50 = new cDescriptorsType("EC50_" + CompleteScreening.ListDescriptors[i].GetName(), true, 1, GlobalInfo); ListDescType.Add(DescEC50); MergedScreening.ListDescriptors.AddNew(DescEC50); cDescriptorsType DescTop = new cDescriptorsType("Top_" + CompleteScreening.ListDescriptors[i].GetName(), true, 1, GlobalInfo); ListDescType.Add(DescTop); MergedScreening.ListDescriptors.AddNew(DescTop); cDescriptorsType DescBottom = new cDescriptorsType("Bottom_" + CompleteScreening.ListDescriptors[i].GetName(), true, 1, GlobalInfo); ListDescType.Add(DescBottom); MergedScreening.ListDescriptors.AddNew(DescBottom); cDescriptorsType DescSlope = new cDescriptorsType("Slope_" + CompleteScreening.ListDescriptors[i].GetName(), true, 1, GlobalInfo); ListDescType.Add(DescSlope); MergedScreening.ListDescriptors.AddNew(DescSlope); Idesc++; } MergedScreening.ListDescriptors.CurrentSelectedDescriptor = 0; foreach (cPlate CurrentPlate in CompleteScreening.ListPlatesAvailable) { cPlate NewPlate = new cPlate("Cpds", CurrentPlate.Name + " Merged", MergedScreening); // check if the plate exist already MergedScreening.AddPlate(NewPlate); foreach (cDRC_Region CurrentRegion in CurrentPlate.ListDRCRegions) { List<cDescriptor> LDesc = new List<cDescriptor>(); Idesc = 0; int IDESCBase = 0; for (int i = 0; i < CompleteScreening.ListDescriptors.Count; i++) { if (!CompleteScreening.ListDescriptors[i].IsActive()) continue; cDRC CurrentDRC = CurrentRegion.GetDRC(CompleteScreening.ListDescriptors[IDESCBase++]); cDescriptor Desc_EC50 = new cDescriptor(CurrentDRC.EC50, ListDescType[Idesc++], CompleteScreening); LDesc.Add(Desc_EC50); cDescriptor Desc_Top = new cDescriptor(CurrentDRC.Top, ListDescType[Idesc++], CompleteScreening); LDesc.Add(Desc_Top); cDescriptor Desc_Bottom = new cDescriptor(CurrentDRC.Bottom, ListDescType[Idesc++], CompleteScreening); LDesc.Add(Desc_Bottom); cDescriptor Desc_Slope = new cDescriptor(CurrentDRC.Slope, ListDescType[Idesc++], CompleteScreening); LDesc.Add(Desc_Slope); } cWell NewWell = new cWell(LDesc, CurrentRegion.PosXMin + 1, CurrentRegion.PosYMin + 1, MergedScreening, NewPlate); NewWell.Name = "DRC [" + CurrentRegion.PosXMin + ":" + CurrentRegion.PosYMin + "]"; NewPlate.AddWell(NewWell); } } // PanelList[0].CurrentScreening.ListPlatesActive.Clear(); // PanelList[0].CurrentScreening.GlobalInfo.WindowHCSAnalyzer.RefreshInfoScreeningRichBox(); MergedScreening.ListPlatesActive = new cExtendPlateList(); for (int i = 0; i < MergedScreening.ListPlatesAvailable.Count; i++) { MergedScreening.ListPlatesActive.Add(MergedScreening.ListPlatesAvailable[i]); // MergedScreening.GlobalInfo.WindowHCSAnalyzer.toolStripcomboBoxPlateList.Items.Add(PanelList[0].CurrentScreening.ListPlatesActive[i].Name); } //PanelList[0].CurrentScreening.CurrentDisplayPlateIdx = 0; //PanelList[0].CurrentScreening.GlobalInfo.WindowHCSAnalyzer.toolStripcomboBoxPlateList.SelectedIndex = 0; //PanelList[0].CurrentScreening.GetCurrentDisplayPlate().DisplayDistribution(PanelList[0].CurrentScreening.ListDescriptors.CurrentSelectedDescriptor, false); CompleteScreening.ListDescriptors = MergedScreening.ListDescriptors; CompleteScreening.ListPlatesAvailable = MergedScreening.ListPlatesAvailable; CompleteScreening.ListPlatesActive = MergedScreening.ListPlatesActive; CompleteScreening.UpDatePlateListWithFullAvailablePlate(); for (int idxP = 0; idxP < CompleteScreening.ListPlatesActive.Count; idxP++) CompleteScreening.ListPlatesActive[idxP].UpDataMinMax(); CompleteScreening.GetCurrentDisplayPlate().DisplayDistribution(CompleteScreening.ListDescriptors.CurrentSelectedDescriptor, true); }
public cWell(string FileName, cScreening screenParent, cPlate CurrentPlate) { this.Parent = screenParent; this.AssociatedPlate = CurrentPlate; StreamReader sr = new StreamReader(FileName); int Idx; string NewLine; string TmpLine; string line; // we have to build the descriptor list if (screenParent.ListDescriptors.Count == 0) { Idx = FileName.LastIndexOf("\\"); NewLine = FileName.Remove(0, Idx + 1); TmpLine = NewLine; Idx = TmpLine.IndexOf("x"); NewLine = TmpLine.Remove(Idx); if (!int.TryParse(NewLine, out this.PosX)) { MessageBox.Show("Error in load the current file.\n", "Loading error !", MessageBoxButtons.OK, MessageBoxIcon.Error); sr.Close(); return; } NewLine = TmpLine.Remove(0, Idx + 1); Idx = NewLine.IndexOf("."); TmpLine = NewLine.Remove(Idx); this.PosY = Convert.ToInt16(TmpLine); line = sr.ReadLine(); while (line != null) { if (line != null) { Idx = line.IndexOf("\t"); string DescName = line.Remove(Idx); List<double> readData = new List<double>(); NewLine = line.Remove(0, Idx + 1); line = NewLine; Idx = line.IndexOf("\t"); int NumValue = 0; while (Idx > 0) { string DescValue = line.Remove(Idx); double CurrentValue = Convert.ToDouble(DescValue); readData.Add(CurrentValue); NewLine = line.Remove(0, Idx + 1); line = NewLine; Idx = line.IndexOf("\t"); NumValue++; } if (line.Length > 0) { double Value = Convert.ToDouble(line); readData.Add(Value); } // first check if the descriptor exist screenParent.ListDescriptors.AddNew(new cDescriptorsType(DescName, true, NumValue)); } line = sr.ReadLine(); } sr.Close(); } this.ListDescriptors = new List<cDescriptor>(); sr = new StreamReader(FileName); Idx = FileName.LastIndexOf("\\"); NewLine = FileName.Remove(0, Idx + 1); TmpLine = NewLine; Idx = TmpLine.IndexOf("x"); NewLine = TmpLine.Remove(Idx); this.PosX = Convert.ToInt16(NewLine); NewLine = TmpLine.Remove(0, Idx + 1); Idx = NewLine.IndexOf("."); TmpLine = NewLine.Remove(Idx); this.PosY = Convert.ToInt16(TmpLine); line = sr.ReadLine(); int IDxLine = 0; while (line != null) { if (line != null) { Idx = line.IndexOf("\t"); string DescName = line.Remove(Idx); List<double> readData = new List<double>(); NewLine = line.Remove(0, Idx + 1); line = NewLine; Idx = line.IndexOf("\t"); while (Idx > 0) { string DescValue = line.Remove(Idx); double CurrentValue = Convert.ToDouble(DescValue); readData.Add(CurrentValue); NewLine = line.Remove(0, Idx + 1); line = NewLine; Idx = line.IndexOf("\t"); } if (line.Length > 0) { double Value = Convert.ToDouble(line); readData.Add(Value); } cDescriptor CurrentDesc = new cDescriptor(readData.ToArray(), 0, screenParent.ListDescriptors[IDxLine].GetBinNumber() - 1, screenParent.ListDescriptors[IDxLine], this.Parent/* DescName*/); this.ListDescriptors.Add(CurrentDesc); } line = sr.ReadLine(); IDxLine++; } sr.Close(); this.CurrentColor = this.Parent.GlobalInfo.GetColor(ClassForClassif); return; }
public cWell(string FileName, cScreening screenParent, cPlate CurrentPlate) { // Parent = screenParent; this.AssociatedPlate = CurrentPlate; StreamReader sr = new StreamReader(FileName); int Idx; string NewLine; string TmpLine; string line; // we have to build the descriptor list if (cGlobalInfo.CurrentScreening.ListDescriptors.Count == 0) { Idx = FileName.LastIndexOf("\\"); NewLine = FileName.Remove(0, Idx + 1); TmpLine = NewLine; Idx = TmpLine.IndexOf("x"); NewLine = TmpLine.Remove(Idx); if (!int.TryParse(NewLine, out this.PosX)) { MessageBox.Show("Error in load the current file.\n", "Loading error !", MessageBoxButtons.OK, MessageBoxIcon.Error); sr.Close(); return; } NewLine = TmpLine.Remove(0, Idx + 1); Idx = NewLine.IndexOf("."); TmpLine = NewLine.Remove(Idx); this.PosY = Convert.ToInt16(TmpLine); line = sr.ReadLine(); while (line != null) { if (line != null) { Idx = line.IndexOf("\t"); string DescName = line.Remove(Idx); List<double> readData = new List<double>(); NewLine = line.Remove(0, Idx + 1); line = NewLine; Idx = line.IndexOf("\t"); int NumValue = 0; while (Idx > 0) { string DescValue = line.Remove(Idx); double CurrentValue = Convert.ToDouble(DescValue); readData.Add(CurrentValue); NewLine = line.Remove(0, Idx + 1); line = NewLine; Idx = line.IndexOf("\t"); NumValue++; } if (line.Length > 0) { double Value = Convert.ToDouble(line); readData.Add(Value); } // first check if the descriptor exist cGlobalInfo.CurrentScreening.ListDescriptors.AddNew(new cDescriptorType(DescName, true, NumValue)); } line = sr.ReadLine(); } sr.Close(); } this.ListSignatures = new cListSignature(); sr = new StreamReader(FileName); Idx = FileName.LastIndexOf("\\"); NewLine = FileName.Remove(0, Idx + 1); TmpLine = NewLine; Idx = TmpLine.IndexOf("x"); NewLine = TmpLine.Remove(Idx); this.PosX = Convert.ToInt16(NewLine); NewLine = TmpLine.Remove(0, Idx + 1); Idx = NewLine.IndexOf("."); TmpLine = NewLine.Remove(Idx); this.PosY = Convert.ToInt16(TmpLine); line = sr.ReadLine(); int IDxLine = 0; while (line != null) { if (line != null) { Idx = line.IndexOf("\t"); string DescName = line.Remove(Idx); cExtendedList readData = new cExtendedList(); NewLine = line.Remove(0, Idx + 1); line = NewLine; Idx = line.IndexOf("\t"); while (Idx > 0) { string DescValue = line.Remove(Idx); double CurrentValue = Convert.ToDouble(DescValue); readData.Add(CurrentValue); NewLine = line.Remove(0, Idx + 1); line = NewLine; Idx = line.IndexOf("\t"); } if (line.Length > 0) { double Value = Convert.ToDouble(line); readData.Add(Value); } cSignature CurrentDesc = new cSignature(readData, cGlobalInfo.CurrentScreening.ListDescriptors[IDxLine].GetBinNumber() - 1, cGlobalInfo.CurrentScreening.ListDescriptors[IDxLine], cGlobalInfo.CurrentScreening); this.ListSignatures.Add(CurrentDesc); } line = sr.ReadLine(); IDxLine++; } sr.Close(); // this.ListClass.Add(this.InitialClass); this.ListProperties = new cListWellProperty(this); this.ListProperties.UpdateValueByName("Well Class", 2); // this.CurrentColor = this.cGlobalInfo.ListClasses[ClassForClassif].ColourForDisplay; return; }
public void SetCurrentScreening(cScreening CurrentScreen) { this.CurrentScreen = CurrentScreen; }
void OptionsItem(object sender, EventArgs e) { //ColorDialog colorDialog = new ColorDialog(); //if (colorDialog.ShowDialog() != DialogResult.OK) return; //Color backgroundColor = colorDialog.Color; //this.SetBackgroundColor(backgroundColor); //this.renWin.Render(); this.CurrentScreen.GlobalInfo.OptionsWindow.tabControlWindowOption.SelectedTab = this.CurrentScreen.GlobalInfo.OptionsWindow.tabPage3D; this.CurrentScreen.GlobalInfo.OptionsWindow.CurrentScreen = this.CurrentScreen; this.CurrentScreen.GlobalInfo.OptionsWindow.Visible = !this.CurrentScreen.GlobalInfo.OptionsWindow.Visible; this.CurrentScreen.GlobalInfo.OptionsWindow.Update(); }
public FormToDisplayPlate(cPlate PlateToDisplay, cScreening CompleteScreening) { //this.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D; // this.WindowToDisplayEntireScreening = WindowToDisplayEntireScreening; this.PlateToDisplay = PlateToDisplay; this.CompleteScreening = CompleteScreening; this.CurrentScreening = CompleteScreening; this.LUT = this.CurrentScreening.GlobalInfo.LUT; this.AssociatedPlate = PlateToDisplay; bool ResMiss = false; this.MouseDoubleClick += new MouseEventHandler(this.FormToDisplayPlate_MouseDoubleClick); this.MouseClick += new MouseEventHandler(this.FormToDisplayPlate_MouseClick); ValuesMatrix = PlateToDisplay.GetAverageValueDescTable1(CompleteScreening.ListDescriptors.CurrentSelectedDescriptor, out ResMiss); System.Windows.Forms.ToolTip ToolTip = new System.Windows.Forms.ToolTip(); ToolTip.SetToolTip(this, PlateToDisplay.Name); for (int j = 0; j < ValuesMatrix.Length; j++) for (int i = 0; i < ValuesMatrix[0].Length; i++) { if(double.IsNaN(ValuesMatrix[j][i])) continue; if (ValuesMatrix[j][i] > Max) Max = ValuesMatrix[j][i]; if (ValuesMatrix[j][i] < Min) Min = ValuesMatrix[j][i]; } this.SetNewCellSize(5); //DisplayMatrix(); // this.Update(); }
public FormToDisplayDistanceMap(cPlate CurrentPlate, cScreening CompleteScreening) { this.CurrentScreening = CompleteScreening; this.LUT = this.CurrentScreening.GlobalInfo.LUTs.LUT_FIRE; this.AssociatedPlate = CurrentPlate; bool ResMiss = false; //this.MouseDoubleClick += new MouseEventHandler(this.FormToDisplayPlate_MouseDoubleClick); this.MouseClick += new MouseEventHandler(this.FormToDisplayDistanceMap_MouseClick); ValuesMatrix = new double[CurrentPlate.ListActiveWells.Count][]; for (int i = 0; i < ValuesMatrix.Length; i++) ValuesMatrix[i] = new double[CurrentPlate.ListActiveWells.Count]; RecomputeDistances(eDistances.EUCLIDEAN); this.SetNewCellSize(2); }
public FormForPCAAxisGeneration(cScreening CurrentScreening) { InitializeComponent(); this.CurrentScreening = CurrentScreening; }
//public cReplicateType AssociatedReplicateType { get; private set; } //public bool SetNewReplicateType(cReplicateType NewReplicate) //{ // foreach (var item in ParentScreening.ListReplicate) // { // if (NewReplicate == item) // { // this.AssociatedReplicateType = NewReplicate; // return true; // } // } // return false; //} public cPlate(string Name, cScreening ParentScreening) { this.ParentScreening = ParentScreening; this.Name = Name; //this.PlateType = Type; ListWell = new cWell[ParentScreening.Columns, ParentScreening.Rows]; //this.AssociatedReplicateType = ParentScreening.ListReplicate[0]; this.ListProperties = new cListPlateProperty(this); //this.ListProperties.UpdateValueByName("Quality", 1); this.ListProperties.UpdateValueByName("Name", Name); this.IsActive = true; this.CurrentLUTManager = new cPlateLUTManager(this); return; }
//private List<double> List public cEdgeEffect(cScreening CurrentScreening, int MaxIteration) { this.CurrentScreening = CurrentScreening; GenerateMask(); ComputeDiffusionMaps(MaxIteration); }
private void hitsDistributionMapToolStripMenuItem_Click(object sender, EventArgs e) { if (cGlobalInfo.CurrentScreening == null) return; List<cPanelForDisplayArray> ListPlates = new List<cPanelForDisplayArray>(); foreach (cPlate CurrentPlate in cGlobalInfo.CurrentScreening.ListPlatesActive) { ListPlates.Add(new FormToDisplayPlate(CurrentPlate)); } cWindowToDisplayEntireScreening WindowToDisplayArray = new cWindowToDisplayEntireScreening(ListPlates, cGlobalInfo.CurrentScreening.ListDescriptors[cGlobalInfo.CurrentScreening.ListDescriptors.CurrentSelectedDescriptorIdx].GetName(), 6); WindowToDisplayArray.checkBoxDisplayClasses.Checked = true; WindowToDisplayArray.Text = "Generate Hits Distribution Maps"; WindowToDisplayArray.Show(); System.Windows.Forms.DialogResult ResWin = MessageBox.Show("By applying this process, the current screening will be entirely updated ! Proceed ?", "Warning", MessageBoxButtons.YesNo, MessageBoxIcon.Warning); if (ResWin == System.Windows.Forms.DialogResult.No) { WindowToDisplayArray.Close(); return; } WindowToDisplayArray.Close(); if (cGlobalInfo.CurrentScreening != null) cGlobalInfo.CurrentScreening.Close3DView(); // CompleteScreening.ListDescriptors.RemoveDesc(CompleteScreening.ListDescriptors[IntToTransfer], CompleteScreening); cScreening MergedScreening = new cScreening("Class Screen"); MergedScreening.PanelForPlate = this.panelForPlate; MergedScreening.Rows = cGlobalInfo.CurrentScreening.Rows; MergedScreening.Columns = cGlobalInfo.CurrentScreening.Columns; MergedScreening.ListPlatesAvailable = new cListPlates(); // create the descriptor MergedScreening.ListDescriptors.Clean(); List<cDescriptorType> ListDescType = new List<cDescriptorType>(); List<int[][]> Values = new List<int[][]>(); for (int i = 0; i < cGlobalInfo.ListWellClasses.Count; i++) { cDescriptorType DescClass = new cDescriptorType("Class_" + i, true, 1); ListDescType.Add(DescClass); MergedScreening.ListDescriptors.AddNew(DescClass); int[][] TMpVal = new int[MergedScreening.Columns][]; for (int ii = 0; ii < MergedScreening.Columns; ii++) TMpVal[ii] = new int[MergedScreening.Rows]; Values.Add(TMpVal); } MergedScreening.ListDescriptors.CurrentSelectedDescriptorIdx = 0; foreach (cPlate CurrentPlate in cGlobalInfo.CurrentScreening.ListPlatesActive) { foreach (cWell TmpWell in CurrentPlate.ListActiveWells) { int Class = TmpWell.GetCurrentClassIdx(); if (Class >= 0) Values[Class][TmpWell.GetPosX() - 1][TmpWell.GetPosY() - 1]++; } } cPlate NewPlate = new cPlate(cGlobalInfo.CurrentScreening.GetName(), MergedScreening); for (int X = 0; X < cGlobalInfo.CurrentScreening.Columns; X++) for (int Y = 0; Y < cGlobalInfo.CurrentScreening.Rows; Y++) { cListSignature LDesc = new cListSignature(); for (int i = 0; i < cGlobalInfo.ListWellClasses.Count; i++) { cSignature Desc = new cSignature(Values[i][X][Y], ListDescType[i], cGlobalInfo.CurrentScreening); LDesc.Add(Desc); } cWell NewWell = new cWell(LDesc, X + 1, Y + 1, MergedScreening, NewPlate); // NewWell.SetCpdName("Well [" + (X + 1) + ":" + (Y + 1) + "]"); NewPlate.AddWell(NewWell); } // check if the plate exist already MergedScreening.AddPlate(NewPlate); MergedScreening.ListPlatesActive = new cListPlates(); cGlobalInfo.WindowHCSAnalyzer.toolStripcomboBoxPlateList.Items.Clear(); for (int i = 0; i < MergedScreening.ListPlatesAvailable.Count; i++) { MergedScreening.ListPlatesActive.Add(MergedScreening.ListPlatesAvailable[i]); cGlobalInfo.WindowHCSAnalyzer.toolStripcomboBoxPlateList.Items.Add(NewPlate.GetName()); } cGlobalInfo.CurrentScreening.ListDescriptors = MergedScreening.ListDescriptors; cGlobalInfo.CurrentScreening.ListPlatesAvailable = MergedScreening.ListPlatesAvailable; cGlobalInfo.CurrentScreening.ListPlatesActive = MergedScreening.ListPlatesActive; cGlobalInfo.CurrentScreening.UpDatePlateListWithFullAvailablePlate(); for (int idxP = 0; idxP < cGlobalInfo.CurrentScreening.ListPlatesActive.Count; idxP++) cGlobalInfo.CurrentScreening.ListPlatesActive[idxP].UpDataMinMax(); cGlobalInfo.CurrentScreening.CurrentDisplayPlateIdx = 0; cGlobalInfo.CurrentScreening.GetCurrentDisplayPlate().DisplayDistribution(cGlobalInfo.CurrentScreening.ListDescriptors.GetActiveDescriptor(), true); ListPlates = new List<cPanelForDisplayArray>(); for (int DescIdx = 0; DescIdx < cGlobalInfo.CurrentScreening.ListDescriptors.Count; DescIdx++) { if (cGlobalInfo.CurrentScreening.ListDescriptors[DescIdx].IsActive()) ListPlates.Add(new FormToDisplayDescriptorPlate(cGlobalInfo.CurrentScreening.GetCurrentDisplayPlate(), cGlobalInfo.CurrentScreening, DescIdx)); } cWindowToDisplayEntireDescriptors WindowToDisplayDesc = new cWindowToDisplayEntireDescriptors(ListPlates, cGlobalInfo.CurrentScreening.GetCurrentDisplayPlate().GetName(), cGlobalInfo.ListWellClasses.Count); WindowToDisplayDesc.checkBoxGlobalNormalization.Checked = true; WindowToDisplayDesc.Show(); }
public void SetInputData(cScreening Input) { this.Input = Input; }
public SimpleForm(cScreening CompleteScreening) { InitializeComponent(); this.CompleteScreening = CompleteScreening; }
public cGlobalInfo(cScreening CurrentScreen) { OptionsWindow = new FormForOptionsWindow(CurrentScreen); this.CurrentScreen = CurrentScreen; }
public FormForPlateManager(cScreening CurrentScreen) { InitializeComponent(); this.CurrentScreening = CurrentScreen; this.dataGridView.AlternatingRowsDefaultCellStyle.BackColor = Color.LightGray; DataGridViewComboBoxColumn Col = (DataGridViewComboBoxColumn)this.dataGridView.Columns[1]; List<string> ListReplicateNames = new List<string>(); // foreach (var item in cGlobalInfo.CurrentScreening.ListReplicate) // ListReplicateNames.Add(item.Name); Col.DataSource = ListReplicateNames.ToArray(); foreach (cPlate TmpPlate in CurrentScreen.ListPlatesAvailable) { this.dataGridView.Rows.Add(); this.dataGridView[0, this.dataGridView.Rows.Count - 2].ValueType = typeof(string); this.dataGridView[0, this.dataGridView.Rows.Count - 2].Value = TmpPlate.GetName(); // this.dataGridView[1, this.dataGridView.Rows.Count - 2].Value = TmpPlate.AssociatedReplicateType.Name; this.dataGridView[2, this.dataGridView.Rows.Count - 2].Value = TmpPlate.IsActive; } //dataGridView.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells); dataGridView.AllowUserToAddRows = false; ContextMenuStrip ImageContextMenu = new ContextMenuStrip(); ToolStripMenuItem ToolStripMenuItem_CheckAll = new ToolStripMenuItem("Check all"); ImageContextMenu.Items.Add(ToolStripMenuItem_CheckAll); ToolStripMenuItem_CheckAll.Click += new System.EventHandler(this.ToolStripMenuItem_CheckAll); ToolStripMenuItem ToolStripMenuItem_UnCheckAll = new ToolStripMenuItem("Uncheck all"); ImageContextMenu.Items.Add(ToolStripMenuItem_UnCheckAll); ToolStripMenuItem_UnCheckAll.Click += new System.EventHandler(this.ToolStripMenuItem_UnCheckAll); ImageContextMenu.Items.Add(new ToolStripSeparator()); ToolStripMenuItem ToolStripMenuItem_MoveUp = new ToolStripMenuItem("Move Up"); ImageContextMenu.Items.Add(ToolStripMenuItem_MoveUp); ToolStripMenuItem_MoveUp.Click += new System.EventHandler(this.ToolStripMenuItem_MoveUp); ToolStripMenuItem ToolStripMenuItem_MoveDown = new ToolStripMenuItem("Move Down"); ImageContextMenu.Items.Add(ToolStripMenuItem_MoveDown); ToolStripMenuItem_MoveDown.Click += new System.EventHandler(this.ToolStripMenuItem_MoveDown); ImageContextMenu.Items.Add(new ToolStripSeparator()); ToolStripMenuItem ToolStripMenuItem_CreateNewReplicateType = new ToolStripMenuItem("Create New Replicate Type"); ImageContextMenu.Items.Add(ToolStripMenuItem_CreateNewReplicateType); ToolStripMenuItem_CreateNewReplicateType.Click += new System.EventHandler(this.ToolStripMenuItem_CreateNewReplicateType); dataGridView.ContextMenuStrip = ImageContextMenu; dataGridView.ContextMenuStrip.BringToFront(); }
/// <summary> /// Create a 3D world /// </summary> /// <param name="CurrentrenderWindowControl">vtk Control</param> /// <param name="Dimensions">in pixels</param> /// <param name="Resolution">spatial resolutions</param> public c3DWorld(cPoint3D Dimensions, cPoint3D Resolution, RenderWindowControl CurrentrenderWindowControl, int[] WinPos, cScreening CurrentScreen) { this.CurrentScreen = CurrentScreen; // int[] Pos = renWin.GetPosition(); if (CurrentrenderWindowControl == null) { renWin = vtkRenderWindow.New(); renWin.LineSmoothingOn(); renWin.PointSmoothingOn(); renWin.SetWindowName("3D World"); renWin.BordersOn(); renWin.DoubleBufferOn(); if(WinPos!=null) renWin.SetSize(WinPos[0], WinPos[1]); this.ren1 = vtkRenderer.New(); // if(WinPos!=null) renWin.SetPosition(WinPos[0], WinPos[1]); // this.ren1 = CurrentrenderWindowControl.RenderWindow.GetRenderers().GetFirstRenderer(); //CurrentrenderWindowControl.RenderWindow; } else { renWin = CurrentrenderWindowControl.RenderWindow; this.ren1 = CurrentrenderWindowControl.RenderWindow.GetRenderers().GetFirstRenderer(); } //// Menu Strip Construction //this.contextMenuStripActorPicker = new ContextMenuStrip(); //ToolStripMenuItem StripMenuItemDisplay = new ToolStripMenuItem("Display"); //contextMenuStripActorPicker.Items.Add(StripMenuItemDisplay); //renWin = CurrentrenderWindowControl.RenderWindow;//vtkRenderWindow.New(); renWin.AddRenderer(ren1); iren = new vtkRenderWindowInteractor(); iren.SetRenderWindow(renWin); //iren.SetInteractorStyle(vtkInteractorStyleJoystickCamera.New()); iren.SetInteractorStyle(vtkInteractorStyleTrackballCamera.New()); // iren.SetInteractorStyle(vtkInteractorStyleTerrain.New()); // iren.LeftButtonPressEvt += new vtkObject.vtkObjectEventHandler(RenderWindow_LeftButtonPressEvt); iren.KeyPressEvt += new vtkObject.vtkObjectEventHandler(RenderWindow_KeyPressEvt); iren.RightButtonPressEvt += new vtkObject.vtkObjectEventHandler(RenderWindow_RightButtonPressEvt); //Render(); //this.ren1 = Xres = Resolution.X; Yres = Resolution.Y; Zres = Resolution.Z; SizeX = (int)Dimensions.X; SizeY = (int)Dimensions.Y; SizeZ = (int)Dimensions.Z; // double[] fp = ren1.GetActiveCamera().GetFocalPoint(); // double[] p = ren1.GetActiveCamera().GetPosition(); // ren1.GetActiveCamera().ParallelProjectionOn(); // double dist = Math.Sqrt((p[0] - fp[0]) * (p[0] - fp[0]) + (p[1] - fp[1]) * (p[1] - fp[1]) + (p[2] - fp[2]) * (p[2] - fp[2])); // ren1.GetActiveCamera().SetPosition(fp[0], fp[1], fp[2] + dist*1000); // ren1.GetActiveCamera().Zoom(2); //ren1.Render(); // this.Render(); ListPolyDataMapper = new List<vtkPolyDataMapper>(); ListObject = new List<cObject3D>(); // Vtk_CameraViewOrientation = ren1.GetActiveCamera(); }
public cWindowToDisplayHisto(cScreening CompleteScreening0, cExtendedList RawValues0) { this.CompleteScreening = CompleteScreening0; this.parametersToolStripMenuItem.Click += new System.EventHandler(this.parametersToolStripMenuItem_Click); RequestWindow.label3.Text = "Bin Number"; this.RawValues = RawValues0; CurrentChartArea = new ChartArea(); CurrentChartArea.BorderColor = Color.Black; this.chartForSimpleForm.ChartAreas.Add(CurrentChartArea); CurrentChartArea.Axes[0].MajorGrid.Enabled = false; if(CompleteScreening!=null) CurrentChartArea.Axes[0].Title = CompleteScreening.ListDescriptors[CompleteScreening.ListDescriptors.CurrentSelectedDescriptorIdx].GetName(); CurrentChartArea.Axes[1].Title = "Sum"; CurrentChartArea.AxisX.LabelStyle.Format = "N2"; this.chartForSimpleForm.TextAntiAliasingQuality = TextAntiAliasingQuality.High; if (CompleteScreening != null) CurrentChartArea.BackColor = Color.White; this.chartForSimpleForm.ChartAreas[0].CursorX.IsUserEnabled = true; this.chartForSimpleForm.ChartAreas[0].CursorX.IsUserSelectionEnabled = true; this.chartForSimpleForm.ChartAreas[0].AxisX.ScaleView.Zoomable = true; this.chartForSimpleForm.ChartAreas[0].AxisX.ScrollBar.IsPositionedInside = true; if ((CompleteScreening != null) && (cGlobalInfo.OptionsWindow.FFAllOptions.checkBoxHistoDisplayStats.Checked)) { StripLine AverageLine = new StripLine(); AverageLine.BackColor = Color.Black; AverageLine.IntervalOffset = RawValues.Mean(); AverageLine.StripWidth = double.Epsilon; CurrentChartArea.AxisX.StripLines.Add(AverageLine); AverageLine.Text = String.Format("{0:0.###}", AverageLine.IntervalOffset); StripLine StdLine = new StripLine(); StdLine.BackColor = Color.FromArgb(64, Color.Black); double Std = RawValues.Std(); StdLine.IntervalOffset = AverageLine.IntervalOffset - 0.5 * Std; StdLine.StripWidth = Std; CurrentChartArea.AxisX.StripLines.Add(StdLine); AverageLine.StripWidth = 0.0001; } SerieForHisto = new Series(); SerieForHisto.ShadowOffset = 1; SerieForHisto.ChartType = SeriesChartType.Column; if (CompleteScreening != null) SerieForHisto.Color = cGlobalInfo.ListWellClasses[1].ColourForDisplay; List<double[]> HistoPos = RawValues.CreateHistogram(this.BinNumber, false); if (HistoPos.Count == 0) return; for (int IdxValue = 0; IdxValue < HistoPos[0].Length; IdxValue++) { SerieForHisto.Points.AddXY(HistoPos[0][IdxValue], HistoPos[1][IdxValue]); SerieForHisto.Points[IdxValue].ToolTip = HistoPos[1][IdxValue].ToString(); if (CompleteScreening != null) { if (CompleteScreening.SelectedClass == -1) SerieForHisto.Points[IdxValue].Color = Color.Black; else SerieForHisto.Points[IdxValue].Color = cGlobalInfo.ListWellClasses[CompleteScreening.SelectedClass].ColourForDisplay; } } this.chartForSimpleForm.Series.Add(SerieForHisto); }
public cFeedBackMessage Run(cScreening CompleteScreening) { if (this.Input == null) { FeedBackMessage.IsSucceed = false; FeedBackMessage.Message = "No input data defined."; return FeedBackMessage; } bool IsCurrentDescOnly = false; if (this.ListPlates == null) ListPlates = CompleteScreening.ListPlatesActive; cDisplayToWindow CDW1 = new cDisplayToWindow(); cDesignerTab DT = new cDesignerTab(); foreach (cDescriptorType CurrentDesc in CompleteScreening.ListDescriptors.GetActiveDescriptors()) { cListExtendedTable CompleteListOfData = new cListExtendedTable(); cExtendedTable FullTableAverage = new cExtendedTable(); FullTableAverage.ListRowNames = new List<string>(); string TableName = CurrentDesc.GetName() + " evolution\n" + Input[0].Sum() + " classes - "; for (int i = 0; i < Input[0].Count; i++) { if ((Input[0][i] == 1) && (Input[0].ListTags != null) && (Input[0].ListTags[i].GetType() == typeof(cWellClassType))) { cWellClassType TmpWellClass = (cWellClassType)Input[0].ListTags[i]; CompleteListOfData.Add(new cExtendedTable()); CompleteListOfData[CompleteListOfData.Count - 1].Name = TmpWellClass.Name; CompleteListOfData[CompleteListOfData.Count - 1].Tag = Input[0].ListTags[i]; FullTableAverage.Add(new cExtendedList(TmpWellClass.Name)); FullTableAverage[FullTableAverage.Count - 1].ListTags = new List<object>(); FullTableAverage[FullTableAverage.Count - 1].Name = TmpWellClass.Name; FullTableAverage[FullTableAverage.Count - 1].Tag = TmpWellClass; int IdxPlate = 0; foreach (cPlate TmpPlate in CompleteScreening.ListPlatesActive) { FullTableAverage[FullTableAverage.Count - 1].Add(0); FullTableAverage[FullTableAverage.Count - 1].ListTags.Add(TmpWellClass); CompleteListOfData[CompleteListOfData.Count - 1].Add(new cExtendedList(TmpPlate.GetName())); CompleteListOfData[CompleteListOfData.Count - 1][CompleteListOfData[CompleteListOfData.Count - 1].Count - 1].Tag = TmpPlate; CompleteListOfData[CompleteListOfData.Count - 1][CompleteListOfData[CompleteListOfData.Count - 1].Count - 1].Add(IdxPlate); IdxPlate++; } } } TableName += FullTableAverage[0].Count + " plates"; FullTableAverage.Name = TableName; foreach (cPlate TmpPlate in CompleteScreening.ListPlatesActive) FullTableAverage.ListRowNames.Add(TmpPlate.GetName()); // cDescriptorsType CurrentDesc = CompleteScreening.ListDescriptors.GetActiveDescriptor(); int RealIdx = 0; for (int i = 0; i < Input[0].Count; i++) { if (Input[0][i] == 1) { int IdxPlate = 0; foreach (cPlate TmpPlate in ListPlates/*CompleteScreening.ListPlatesActive*/) { cExtendedList CurrentListValues = new cExtendedList(); foreach (cWell item in TmpPlate.ListActiveWells) if ((item.GetCurrentClassIdx() != -1) && (item.GetCurrentClassIdx() == i)) { double Value = item.ListSignatures.GetSignature(CurrentDesc).GetValue(); CurrentListValues.Add(Value); CompleteListOfData[RealIdx][IdxPlate].Add(Value); } FullTableAverage[RealIdx][IdxPlate] = CurrentListValues.Mean(); IdxPlate++; } RealIdx++; } } cViewerGraph1D VG = new cViewerGraph1D(); VG.Chart.IsLine = true; VG.Chart.IsShadow = true; VG.Chart.IsZoomableX = true; // VG.Chart.IsYGrid = true; //VG.Chart.IsDisplayValues = true; VG.Chart.IsLegend = true; //cViewerStackedHistogram CV1 = new cViewerStackedHistogram(); // CV1.SetInputData(NewTable); VG.SetInputData(FullTableAverage); VG.SetInputData(CompleteListOfData); VG.Chart.LabelAxisX = "Plate"; VG.Chart.LabelAxisY = CurrentDesc.GetName(); VG.Run(); cExtendedControl TmpCtrl = VG.GetOutPut(); TmpCtrl.Title = CurrentDesc.GetName(); DT.SetInputData(TmpCtrl); } DT.Run(); CDW1.Title = "Descriptor Evolution"; CDW1.SetInputData(DT.GetOutPut()); CDW1.Run(); CDW1.Display(); return FeedBackMessage; }