internal void UpdateNodes()
        {
            var newtarget = NodeTools.GetTargetOrbit(CurrentNode.patch.referenceBody);

            if (newtarget != target)
            {
                target = newtarget;
                NotifyTargetChanged();
            }

            UpdateCurrentNode();
            bool origSame = CurrentSavedNode.OrigSame(CurrentNode);
            bool changed  = CurrentSavedNode.Changed;

            if (changed)
            {
                if (origSame)
                {
                    Vector3d newdv = CurrentSavedNode.dV;
                    if (CurrentNode.attachedGizmo != null)
                    {
                        CurrentNode.attachedGizmo.DeltaV = newdv;
                        CurrentNode.attachedGizmo.UT     = CurrentSavedNode.UT;
                    }
                    CurrentNode.OnGizmoUpdated(newdv, CurrentSavedNode.UT);
                    CurrentSavedNode.UpdateOrig();
                }
            }
            if (!origSame)
            {
                CurrentSavedNode.ResetSavedNode(CurrentNode);
            }
            if (changed || !origSame)
            {
                NotifyDvUTChanged();
            }
        }