18 lines
578 B
Python
18 lines
578 B
Python
from fastapi import APIRouter
|
|
|
|
from app.models.antenna import AntennaPatternSpec, BeamRequest, BeamResponse, PatternResponse
|
|
from app.routers.errors import as_501
|
|
from app.services import antenna as antenna_service
|
|
|
|
router = APIRouter()
|
|
|
|
|
|
@router.post("/pattern", response_model=PatternResponse)
|
|
def pattern(request: AntennaPatternSpec) -> PatternResponse:
|
|
return as_501(lambda: antenna_service.normalize_pattern(request))
|
|
|
|
|
|
@router.post("/beam", response_model=BeamResponse)
|
|
def beam(request: BeamRequest) -> BeamResponse:
|
|
return antenna_service.beam_geometry(request)
|