コード例 #1
0
 public void NotReady()
 {
     StartElev = Elev;
     SeaLevel  = MinR;
     RControllers.SetAutoPilotEnabled(false);
     RControllers.FlightMode = FlightMode.OneWay;
     RControllers.Direction  = Base6Directions.Direction.Forward;
     RControllers.SpeedLimit = 200;
     StartLocation           = RController.GetPosition();
     RControllers.ClearWaypoints();
     GyroStartLocation = RGyro.GetPosition();
     RConStartLocation = RCon.GetPosition();
     RefDist           = Math.Round(Vector3D.Distance(GyroStartLocation, StartLocation), 2);               //Distance between RC and Gyro
     Distance          = ((GyroStartLocation - StartLocation) * ((TargetAltitude - StartElev) / RefDist)); //Calculates Distance to Target
     TargetLocation    = (StartLocation + Distance);                                                       ////Calculates Co-ords for Target
     RefDist           = Math.Round(Vector3D.Distance(RConStartLocation, StartLocation), 2);               //Distance between RC and Gyro
     Distance          = ((RConStartLocation - StartLocation) * ((AppTarget + StartElev) / RefDist));      //Calculates Distance to Approach (1000m)
     AppLocation       = (StartLocation + Distance);                                                       ////Calculates Co-ords for Target
     RControllers.AddWaypoint(TargetLocation, (Ship + "Target Location"));
     Init = true;
     Main("Ready");
     return;
 }
コード例 #2
0
 public Vector3D GetPosition()
 {
     return(m_gyroBlock.GetPosition());
 }