drone-env / core /drone.py
manikandan-n-07's picture
Standardization: Final validator-compatible structure and inference standardization
675f070
Raw
History Blame Contribute Delete
680 Bytes
"""
drone_env/core/drone.py
# Physics and movement kinematics for the Drone Delivery Env.
"""
from typing import Tuple
def compute_next_pos(x: int, y: int, direction: str) -> Tuple[int, int]:
"""
Calculate the next grid coordinates for the drone.
direction: UP | DOWN | LEFT | RIGHT | WAIT
"""
move = direction.upper()
if move == "UP": return (x, y - 1)
if move == "DOWN": return (x, y + 1)
if move == "LEFT": return (x - 1, y)
if move == "RIGHT": return (x + 1, y)
return (x, y)
def drain_battery(current: float, cost: float) -> float:
"""
Apply battery drain and clamp at 0.0.
"""
return max(0.0, current - cost)