public LocusViewer(double sX0, double sY0, double sX1, double sY1, AirPlane ap, Recorder rec) { planeM = new Material(new LightColor(0.0D, 0.0D, 0.6D), new LightColor(0.5D, 0.5D, 0.5D), 10.0D, new LightColor(0.0D, 0.0D, 0.0D)); planeM2 = new Material(new LightColor(0.6D, 0.0D, 0.0D), new LightColor(0.5D, 0.5D, 0.5D), 10.0D, new LightColor(0.0D, 0.0D, 0.0D)); light = Jp.Maker1.Vsys3.Tools.Light.Parallel(new LightColor(255.0D, 255.0D, 255.0D), new Vector3D(0.5D, -0.5D, 1.0D)); amblight = Jp.Maker1.Vsys3.Tools.Light.Ambience(new LightColor(128.0D, 128.0D, 128.0D)); infoCol = Color.FromArgb(64, 64, 64); dataCol = Color.Gray; cursolCol = Color.FromArgb(255, 0, 0); suisenCol = Color.Gray; stdFont = new Font("SansSelif", 12); smallFont = new Font("SansSelif", 11); sc = new Scine(); oa = new OpticalAmbience(); viewAngle = 25.0D; grid = new LocusGrid(); rmat = new Matrix44(); tmat = new Matrix44(); mat_bef = new Matrix44(); mat = new Matrix44(); moveingTime = 5.0D; rotationTime = 7.0D; currentDataIndex = 0; proj = new Projector(sX1 - sX0 + 1.0D, sY1 - sY0 + 1.0D, MathTool.DegToRad(25.0D)); clip = new Clipper(sX0, sY0, sX1, sY1); oa.AddLight(light); oa.AddLight(amblight); recorder = rec; locus = new Locus(ap, rec, planeM, planeM2); InitDispParam(); fastMoveStep = (recorder.N_record() / 50); if (fastMoveStep <= 0) { fastMoveStep = 1; } }