Inheritance: SpaceCraftBase
示例#1
0
        public static List <ISpaceCraft> BuildDragonV2Abort(IMassiveBody planet, string path)
        {
            var dragon      = new DragonV2.DragonV2(planet.Position + new DVector2(0, -planet.SurfaceRadius), planet.Velocity);
            var dragonTrunk = new DragonV2Trunk(DVector2.Zero, DVector2.Zero);

            dragon.AddChild(dragonTrunk);
            dragonTrunk.SetParent(dragon);

            return(new List <ISpaceCraft> {
                dragon, dragonTrunk
            });
        }
示例#2
0
        private static List <ISpaceCraft> BuildDragonV2Abort(IMassiveBody planet, MissionConfig config, string craftDirectory)
        {
            var dragon      = new DragonV2.DragonV2(craftDirectory, planet.Position + new DVector2(0, -planet.SurfaceRadius), planet.Velocity, config.PayloadMass, 446);
            var dragonTrunk = new DragonV2Trunk(craftDirectory, DVector2.Zero, DVector2.Zero);

            dragon.AddChild(dragonTrunk);
            dragonTrunk.SetParent(dragon);

            return(new List <ISpaceCraft> {
                dragon, dragonTrunk
            });
        }
示例#3
0
        public static List <ISpaceCraft> BuildDragonV2Entry(IMassiveBody planet, string path)
        {
            var dragon      = new DragonV2.DragonV2(planet.Position + new DVector2(planet.SurfaceRadius * 0.75, planet.SurfaceRadius * -0.75), planet.Velocity + new DVector2(-6000, -5100));
            var dragonTrunk = new DragonV2Trunk(DVector2.Zero, DVector2.Zero);

            dragon.AddChild(dragonTrunk);
            dragonTrunk.SetParent(dragon);

            dragon.SetRotation(Math.PI * 1.24);

            return(new List <ISpaceCraft> {
                dragon, dragonTrunk
            });
        }
示例#4
0
        private static List <ISpaceCraft> BuildDragonV2Entry(IMassiveBody planet, Payload payload, string craftDirectory)
        {
            var dragon = new DragonV2.DragonV2(craftDirectory, planet.Position + new DVector2(planet.SurfaceRadius * 0.75, planet.SurfaceRadius * -0.75),
                                               planet.Velocity + new DVector2(-6000, -5100), payload.DryMass, payload.PropellantMass);

            var dragonTrunk = new DragonV2Trunk(craftDirectory, DVector2.Zero, DVector2.Zero);

            dragon.AddChild(dragonTrunk);
            dragonTrunk.SetParent(dragon);

            dragon.SetPitch(Math.PI * 1.24);

            return(new List <ISpaceCraft> {
                dragon, dragonTrunk
            });
        }
示例#5
0
        private static List <ISpaceCraft> BuildF9Dragon2(IMassiveBody planet, MissionConfig config, string craftDirectory)
        {
            var dragon      = new DragonV2.DragonV2(craftDirectory, planet.Position + new DVector2(0, -planet.SurfaceRadius) + config.PositionOffset, planet.Velocity, config.PayloadMass, 1250);
            var dragonTrunk = new DragonV2Trunk(craftDirectory, DVector2.Zero, DVector2.Zero);

            var f9S1 = new F9S1B5(craftDirectory, DVector2.Zero, DVector2.Zero);
            var f9S2 = new F9S2B5(craftDirectory, DVector2.Zero, DVector2.Zero, 9.0);

            dragon.AddChild(dragonTrunk);
            dragonTrunk.SetParent(dragon);
            dragonTrunk.AddChild(f9S2);
            f9S2.SetParent(dragonTrunk);
            f9S2.AddChild(f9S1);
            f9S1.SetParent(f9S2);

            return(new List <ISpaceCraft>
            {
                dragon, dragonTrunk, f9S2, f9S1
            });
        }
示例#6
0
        private static List<ISpaceCraft> BuildDragonV2Abort(IMassiveBody planet, VehicleConfig vehicle, string craftDirectory)
        {
            var dragon = new DragonV2.DragonV2(craftDirectory, planet.Position + new DVector2(0, -planet.SurfaceRadius), planet.Velocity, vehicle.PayloadMass);
            var dragonTrunk = new DragonV2Trunk(craftDirectory, DVector2.Zero, DVector2.Zero);

            dragon.AddChild(dragonTrunk);
            dragonTrunk.SetParent(dragon);

            return new List<ISpaceCraft> { dragon, dragonTrunk };
        }
示例#7
0
        private static List<ISpaceCraft> BuildDragonV2Entry(IMassiveBody planet, VehicleConfig vehicle, string craftDirectory)
        {
            var dragon = new DragonV2.DragonV2(craftDirectory, planet.Position + new DVector2(planet.SurfaceRadius*0.75, planet.SurfaceRadius*-0.75),
                                               planet.Velocity + new DVector2(-6000, -5100), vehicle.PayloadMass);

            var dragonTrunk = new DragonV2Trunk(craftDirectory, DVector2.Zero, DVector2.Zero);

            dragon.AddChild(dragonTrunk);
            dragonTrunk.SetParent(dragon);

            dragon.SetPitch(Math.PI * 1.24);

            return new List<ISpaceCraft> { dragon, dragonTrunk };
        }