public void OnPhysicsUpdate() { _currentDateTime = _state.CurrentSystemDateTime; if (_transitLeaveDateTime < _currentDateTime) { _transitLeaveDateTime = _currentDateTime; } _transitLeavePositionRalitive = OrbitProcessor.GetPosition_AU(_movingEntityCurrentOrbit, _transitLeaveDateTime); _progradeAngle = Math.Atan2(_transitLeavePositionRalitive.Y, _transitLeavePositionRalitive.X); //OrbitProcessor.PreciseOrbitalVector( _progradeAngle -= Math.PI; _departIcon.ProgradeAngle = _progradeAngle; _departIcon.SetTransitPostion(_transitLeavePositionRalitive); if (_arriveIcon != null) { _arriveIcon.ProgradeAngle = _progradeAngle; _arriveIcon.SetTransitPostion(_progradeAngle, _arrivePntRadius); } }
public void SetArrivalPosition(Vector4 ralitiveWorldPosition) { _transitArrivePosition = ralitiveWorldPosition; _arriveIcon.SetTransitPostion(_transitArrivePosition); }