public AircraftDimensionsForm(ModelControl modelControl) { this.modelControl = modelControl; InitializeComponent(); if (modelControl != null) { numericUpDownWeight.Value = (decimal)modelControl.AirplaneModel.AirplaneControl.AircraftParameters.Mass; numericUpDownWingArea.Value = (decimal) modelControl.AirplaneModel.AirplaneControl.AircraftParameters.WingArea * 10000; numericUpDownVertArea.Value = (decimal) modelControl.AirplaneModel.AirplaneControl.AircraftParameters.VerticalArea * 10000; numericUpDownWingSpan.Value = (decimal)(200 * modelControl.AirplaneModel.AirplaneControl.AircraftParameters.WingCenter.Y * modelControl.AirplaneModel.AirplaneControl.AircraftParameters.WingSpanFactor); } if (modelControl.AirplaneModel.AirplaneControl.AircraftParameters.Version == 1.0) { labelWingCenter.Visible = false; vectorControlWingCenter.Visible = false; labelPropCenter.Visible = false; vectorControlPropCenter.Visible = false; numericUpDownWingSpan.Visible = false; labelWingSpan.Visible = false; labelWingSpanCm.Visible = false; labelWingSpanInch.Visible = false; } else { Program.Instance.CursorVisible = true; Program.Instance.Cursor2Visible = true; vectorControlWingCenter.Vector = FlightModelWind.ToDirectX(modelControl.AirplaneModel.AirplaneControl.AircraftParameters.WingCenter); vectorControlPropCenter.Vector = FlightModelWind.ToDirectX(modelControl.AirplaneModel.AirplaneControl.AircraftParameters.PropCenter); } }
public void UpdatePointPositions() { for (int i = 0; i < ModelControl.AirplaneModel.AirplaneControl.AircraftParameters.UnscaledCollisionPoints.Count; i++) { if (i < points.Count) { points[i].Position = FlightModelWind.ToDirectX(ModelControl.AirplaneModel.AirplaneControl.AircraftParameters.UnscaledCollisionPoints[i]) * ModelControl.AirplaneModel.AirplaneControl.AircraftParameters.Scale; } } for (int i = 0; i < ModelControl.AirplaneModel.AirplaneControl.AircraftParameters.UnscaledGearPoints.Count; i++) { if (i < gearPoints.Count) { gearPoints[i].Position = FlightModelWind.ToDirectX(ModelControl.AirplaneModel.AirplaneControl.AircraftParameters.UnscaledGearPoints[i]) * ModelControl.AirplaneModel.AirplaneControl.AircraftParameters.Scale; } } for (int i = 0; i < ModelControl.AirplaneModel.AirplaneControl.AircraftParameters.UnscaledFloatPoints.Count; i++) { if (i < floatPoints.Count) { floatPoints[i].Position = FlightModelWind.ToDirectX(ModelControl.AirplaneModel.AirplaneControl.AircraftParameters.UnscaledFloatPoints[i]) * ModelControl.AirplaneModel.AirplaneControl.AircraftParameters.Scale; } } }
public void UpdatePoints() { if (modelControl != null) { foreach (GameObject point in points) { point.Dispose(); } points.Clear(); for (int i = 0; i < ModelControl.AirplaneModel.AirplaneControl.AircraftParameters.UnscaledCollisionPoints.Count; i++) { Vector3 point = ModelControl.AirplaneModel.AirplaneControl.AircraftParameters.UnscaledCollisionPoints[i]; GameObject cursor = new GameObject(); cursor.Position = FlightModelWind.ToDirectX(point) * ModelControl.AirplaneModel.AirplaneControl.AircraftParameters.Scale; cursor.Mesh = cursorMesh; if (i == SelectedCollisionPoint) { cursor.Scale = new Vector3(0.03f, 0.03f, 0.03f); } else { cursor.Scale = new Vector3(0.015f, 0.015f, 0.015f); } points.Add(cursor); } foreach (GameObject gearPoint in gearPoints) { gearPoint.Dispose(); } gearPoints.Clear(); for (int i = 0; i < ModelControl.AirplaneModel.AirplaneControl.AircraftParameters.UnscaledGearPoints.Count; i++) { Vector3 point = ModelControl.AirplaneModel.AirplaneControl.AircraftParameters.UnscaledGearPoints[i]; GameObject cursor = new GameObject(); cursor.Position = FlightModelWind.ToDirectX(point) * ModelControl.AirplaneModel.AirplaneControl.AircraftParameters.Scale; cursor.Mesh = cursorMesh2; if (i == SelectedGearPoint) { cursor.Scale = new Vector3(0.03f, 0.03f, 0.03f); } else { cursor.Scale = new Vector3(0.015f, 0.015f, 0.015f); } gearPoints.Add(cursor); } foreach (GameObject floatPoint in floatPoints) { floatPoint.Dispose(); } floatPoints.Clear(); for (int i = 0; i < ModelControl.AirplaneModel.AirplaneControl.AircraftParameters.UnscaledFloatPoints.Count; i++) { Vector3 point = ModelControl.AirplaneModel.AirplaneControl.AircraftParameters.UnscaledFloatPoints[i]; GameObject cursor = new GameObject(); cursor.Position = FlightModelWind.ToDirectX(point) * ModelControl.AirplaneModel.AirplaneControl.AircraftParameters.Scale; cursor.Mesh = cursorMesh3; if (i == SelectedFloatPoint) { cursor.Scale = new Vector3(0.03f, 0.03f, 0.03f); } else { cursor.Scale = new Vector3(0.015f, 0.015f, 0.015f); } floatPoints.Add(cursor); } } }