Fix: remove abstractmethod decroation for on_elevator_move

This commit is contained in:
Xuwznln
2025-10-09 16:49:07 +08:00
parent ee3c4bab7e
commit 889d554f19
3 changed files with 13 additions and 1 deletions

View File

@@ -284,6 +284,7 @@ The controller provides these event handlers:
- ``on_passenger_alight(elevator, passenger, floor)``: Passenger alights - ``on_passenger_alight(elevator, passenger, floor)``: Passenger alights
- ``on_elevator_passing_floor(elevator, floor, direction)``: Elevator passes floor - ``on_elevator_passing_floor(elevator, floor, direction)``: Elevator passes floor
- ``on_elevator_approaching(elevator, floor, direction)``: Elevator about to arrive - ``on_elevator_approaching(elevator, floor, direction)``: Elevator about to arrive
- ``on_elevator_move(elevator, from_position, to_position, direction, status)``: Elevator moves
Complete Example Complete Example
---------------- ----------------

View File

@@ -171,7 +171,7 @@ class ElevatorController(ABC):
""" """
pass pass
@abstractmethod # @abstractmethod 为了兼容性暂不强制要求elevator_move必须实现
def on_elevator_move( def on_elevator_move(
self, elevator: ProxyElevator, from_position: float, to_position: float, direction: str, status: str self, elevator: ProxyElevator, from_position: float, to_position: float, direction: str, status: str
) -> None: ) -> None:

View File

@@ -138,6 +138,17 @@ class ElevatorBusController(ElevatorController):
elevator.go_to_floor(elevator.target_floor + 1, immediate=True) elevator.go_to_floor(elevator.target_floor + 1, immediate=True)
print(f" 不让0号电梯上行停站设定新目标楼层 {elevator.target_floor + 1}") print(f" 不让0号电梯上行停站设定新目标楼层 {elevator.target_floor + 1}")
def on_elevator_move(
self, elevator: ProxyElevator, from_position: float, to_position: float, direction: str, status: str
) -> None:
"""
电梯移动时的回调
可以在这里记录电梯移动信息,用于调试或性能分析
"""
# 取消注释以显示电梯移动信息
# print(f"🚀 电梯 E{elevator.id} 移动: {from_position:.1f} -> {to_position:.1f} ({direction}, {status})")
pass
if __name__ == "__main__": if __name__ == "__main__":
algorithm = ElevatorBusController(debug=True) algorithm = ElevatorBusController(debug=True)