private static List <BetterListViewItem> getSimulationDetailItem(ZhangSimulation s) { var r = new List <BetterListViewItem>(); if (s == null || s.Chessboards.Count == 0) { var item = new BetterListViewItem(new[] { s == null ? "No Simulation Selected" : "No Chessboards!" }); item.Tag = null; r.Add(item); return(r); } var boards = s.Chessboards; for (int i = 0; i < boards.Count; i++) { var item = new BetterListViewItem(new[] { boards[i].ToString(), calcAngle(s.Camera, boards[i]).ToString(), (s.Camera.Pos - boards[i].Pos).Norm.ToString(), s.ReporjectionErrorRMS.Count != boards.Count ? "niet berekend" : s.ReporjectionErrorRMS[i].ToString() }); item.Tag = boards[i]; r.Add(item); } return(r); }
private void button1_Click(object sender, EventArgs e) { var c = PinholeCamera.getTestCamera(); var b = new ChessBoard(8, 6, 20); var s = ZhangSimulation.CreateSimulation(c, b, 5, count => Util.gaussDistr(count, .5, .2, .20, 1), count => Util.gaussDistr(count, 0, Math.PI / 4, -Math.PI / 2, Math.PI / 2) ); _simulations.Add(s); }