Safe HaskellSafe

OracleT3

Documentation

randomizeCarro :: Tabuleiro -> Double -> Carro -> Gen Carro #

compareT3Solutions :: Double -> Maybe Carro -> Maybe Carro -> Double #

normAngulo :: (Ord t, Num t) => t -> t #

derrete :: Tabuleiro -> Ponto -> Bool #

movimenta :: Tabuleiro -> Tempo -> Carro -> Maybe Carro #

colide :: Tabuleiro -> Tempo -> Carro -> Maybe Carro #

bounce :: (Double, Double) -> (Double, Double) -> (Double, Double) #

norm :: (Num t1, Num t, Enum t1, Enum t) => (t, t1) -> (Int, Int) -> (t, t1) #

denorm :: (Num t1, Num t, Enum t1, Enum t) => (t, t1) -> (Int, Int) -> (t, t1) #

inv :: Velocidade -> (Ponto, Ponto) -> Maybe (Ponto, Double) -> ((Ponto, Ponto), Velocidade) #

inverte :: (Ponto, Ponto) -> Ponto -> Double -> (Ponto, Ponto, Double) #

colisaoInterna :: Peca -> Posicao -> (Ponto, Ponto) -> Maybe (Maybe (Ponto, Double)) #

dentroPeca :: (Ponto, Ponto) -> Posicao -> Double -> Bool #

atravessaOnde :: Posicao -> (Ponto, Ponto) -> Maybe (Ponto, Double) #

temParede :: Tabuleiro -> Posicao -> (Ponto, Double) -> Maybe Bool #

atravessa :: Double -> Posicao -> Posicao #

altAresta :: Double -> Peca -> Float #

colisaoRelevante :: (Ponto, Ponto) -> (Ponto, Double) -> Bool #

intersecta :: (Ponto, Ponto) -> (Ponto, Ponto) -> Maybe Ponto #

intersectaL :: Ponto -> Ponto -> Ponto -> Ponto -> Maybe Ponto #

closestPontoOnL :: Ponto -> Ponto -> Ponto -> Double #

(.*.) :: Double -> (Double, Double) -> (Double, Double) #

(.+.) :: (Double, Double) -> (Double, Double) -> (Double, Double) #

(.-.) :: (Double, Double) -> (Double, Double) -> (Double, Double) #

(.$.) :: (Double, Double) -> (Double, Double) -> Double #

radians :: Floating a => a -> a #

degrees :: Floating a => a -> a #

arrowToComponents :: (Double, Double) -> Ponto #

normaVetor :: Ponto -> Double #

componentsToArrow :: Ponto -> (Double, Double) #

dist :: Ponto -> Ponto -> Double #