private void calcolaRaggiToolStripMenuItem_Click(object sender, EventArgs e) { double xraggio, yraggio, alfraggio; FormTrasfo ft = new FormTrasfo(); ft.Text = "Inserimento del raggio, angolo in gradi"; ft.ShowDialog(); xraggio = ft.x; yraggio = ft.y; alfraggio = ft.r; Line2D lr; lr = new Line2D(new Point2D(xraggio,yraggio),new Point2D(10.0,alfraggio,true),true); Raggio r = new Raggio(lr,Ottica.LunghezzaOnda.linea_C); r.CorpoAttuale = completo.Matrice; List<Raggio> raggi; raggi = completo.CalcolaRaggio(r); MessageBox.Show(raggi.Count.ToString()); foreach(Raggio rr in raggi) rr.Display(displayList,1); Invalidate(); }
private void aggiungiSorgenteToolStripMenuItem_Click(object sender, EventArgs e) { displayList.Clear(); FormTrasfo ft = new FormTrasfo(); ft.ShowDialog(); SorgenteOttica corposorgente = new SorgenteOttica( sorgente.Nome, new Point2D(ft.x,ft.y), ft.r + sorgente.Direzione.Alfa(), true, sorgente.Diametro, sorgente.Divergenza, sorgente.Lambda, sorgente.nRaggi ); corposorgente.Validate(); completo.Add(corposorgente); completo.Display(displayList,0); Invalidate(); }
private void aggiungiToolStripMenuItem_Click(object sender, EventArgs e) { displayList.Clear(); Point2D ax1, ax2, ax3; // Punti assi ax1 = new Point2D(0,0); ax2 = new Point2D(finestra.P2.x,0); ax3 = new Point2D(0,finestra.P2.y); (new Line2D(ax1,ax2)).Display(displayList,3); // Assi (new Line2D(ax1,ax3)).Display(displayList,3); this.gradiprimi.Visible=true; this.percdiam.Visible=true; FormTrasfo ft = new FormTrasfo(); ft.ShowDialog(); Transform2D tr = Transform2D.Rotazione(ft.r) + Transform2D.Traslazione(ft.x,ft.y); //Transform2D tr = Transform2D.Traslazione(Math.Max(lente.ET,lente.CT),0.0); CorpoOttico corpolente = lente.CreaCorpoOttico(tr); MaterialeOttico ambiente = new MaterialeOttico("vuoto", 1.0); completo.Add(corpolente.Materiale); completo.Add(ambiente); completo.Add(corpolente); //((CorpoOttico)amb.GetOggetto("lente")).Display(displayList,0); //lenteIn.Display(displayList,0); completo.Display(displayList,0); //corpolente.Display(displayList,0); Invalidate(); }