示例#1
0
        public void Drag(Location start, Location end)
        {
            var d = -start.VectorTo(end);

            _pos     = _pos.LocationAway(d);
            Pos3d    = _pos.ToPositionAboveSeaLeveld(_altitude);
            LookAt   = LookAt.LocationAway(d);
            LookAt3d = LookAt.ToPositionAboveSeaLeveld(0);

            Dirty = true;
        }
示例#2
0
 public bool Update(SimTime t)
 {
     if (_accTime > _duration)
     {
         return(false);
     }
     else
     {
         _accTime += t.WallTimeElapsed;
         var a = _accTime / _duration;
         if (a > 1)
         {
             a = 1;
         }
         a *= a;
         //a = 1 - a;
         _current = _start.LocationAway(_start.VectorTo(_end) * (float)a);
         return(true);
     }
 }
示例#3
0
        public void Drag(Location start, Location end)
        {
            var d = -start.VectorTo(end);

            _pos = _pos.LocationAway(d);
            Pos3d = _pos.ToPositionAboveSeaLeveld (_altitude);
            LookAt = LookAt.LocationAway(d);
            LookAt3d = LookAt.ToPositionAboveSeaLeveld (0);

            Dirty = true;
        }