Remove our old lat/lon support code.

pydcs provides this now.
This commit is contained in:
Dan Albert
2022-02-22 17:40:07 -08:00
parent bb72acd3ac
commit 1a9930b93a
26 changed files with 57 additions and 640 deletions

View File

@@ -1,16 +1,16 @@
from __future__ import annotations
from dcs.mapping import LatLng
from pydantic.dataclasses import dataclass
from game.ato import FlightWaypoint
from game.ato.flightwaypointtype import FlightWaypointType
from game.theater import ConflictTheater, LatLon
@dataclass
class FlightWaypointJs:
name: str
position: LatLon
position: LatLng
altitude_ft: float
altitude_reference: str
is_movable: bool
@@ -18,9 +18,7 @@ class FlightWaypointJs:
include_in_path: bool
@staticmethod
def for_waypoint(
waypoint: FlightWaypoint, theater: ConflictTheater
) -> FlightWaypointJs:
def for_waypoint(waypoint: FlightWaypoint) -> FlightWaypointJs:
# Target *points* are the exact location of a unit, whereas the target area is
# only the center of the objective. Allow moving the latter since its exact
# location isn't very important.
@@ -64,7 +62,7 @@ class FlightWaypointJs:
return FlightWaypointJs(
name=waypoint.name,
position=theater.point_to_ll(waypoint.position),
position=waypoint.position.latlng(),
altitude_ft=waypoint.alt.feet,
altitude_reference=waypoint.alt_type,
is_movable=is_movable,

View File

@@ -1,7 +1,7 @@
from datetime import timedelta
from uuid import UUID
from dcs.mapping import LatLng
from dcs.mapping import LatLng, Point
from fastapi import APIRouter, Depends, HTTPException, status
from game import Game
@@ -26,12 +26,10 @@ def all_waypoints_for_flight(
flight.departure.position,
meters(0),
"RADIO",
),
game.theater,
)
)
return [departure] + [
FlightWaypointJs.for_waypoint(w, game.theater)
for w in flight.flight_plan.waypoints
FlightWaypointJs.for_waypoint(w) for w in flight.flight_plan.waypoints
]
@@ -47,7 +45,7 @@ def set_position(
raise HTTPException(status_code=status.HTTP_403_FORBIDDEN)
waypoint = flight.flight_plan.waypoints[waypoint_idx - 1]
waypoint.position = game.theater.ll_to_point(position)
waypoint.position = Point.from_latlng(position, game.theater.terrain)
package_model = (
GameContext.get_model()
.ato_model_for(flight.blue)