Exemplo n.º 1
0
        private void SetCraftOrbit(Vessel craftVessel, OrbitDriver.UpdateMode mode)
        {
            craftVessel.orbitDriver.SetOrbitMode(mode);

            var craftCoM  = GetVesselWorldCoM(craftVessel);
            var vesselCoM = GetVesselWorldCoM(builder.vessel);
            var offset    = (Vector3d.zero + craftCoM - vesselCoM).xzy;

            var corb = craftVessel.orbit;
            var orb  = builder.vessel.orbit;
            var UT   = Planetarium.GetUniversalTime();
            var body = orb.referenceBody;

            corb.UpdateFromStateVectors(orb.pos + offset, orb.vel, body, UT);

            Debug.Log(String.Format("[EL] {0} {1}", orbit(orb), orb.pos));
            Debug.Log(String.Format("[EL] {0} {1}", orbit(corb), corb.pos));
        }
Exemplo n.º 2
0
 protected override void UpdateDisplay(Vessel vessel)
 {
     VesselId      = vessel.id;
     Vessel        = vessel;
     ObtDriverMode = vessel.orbitDriver.updateMode;
 }
 public void SetOrbitMode(OrbitDriver.UpdateMode mode);