ロケットムービーで入力した角度に応じてこのロケットが上がるように、ラケットでこのコードに取り組んでいます。アニメのシーンでロケットが間違った方向に飛び続けているので、私の数学では何かがおかしいと思います。私は正確に何が間違っているのか理解できないようです。うまくいくように見える唯一の方向は 20 度です。ロケットの画像自体は 90 度の位置にあります。私が取り組んだ場所と画像の式を誰か助けてくれませんか? 何が悪いのかわからない。
御時間ありがとうございます。
#lang racket
(require 2htdp/image)
(require 2htdp/universe)
(require rackunit)
;; (make−takeoff angle) −> (−> natural−number/c image?)
;; angle : exact−integer?
(define make-takeoff
(lambda (angle)
(let ([side-length 400])
(let ([the−background (square side-length "solid" "white")]
[the-rocket .]
[the-velocity (/ side-length 100)])
(lambda (frame)
(place-image
(rotate angle the-rocket)
(- 375 (* (cos (- 90 angle)) (* frame the-velocity)))
(- 375 (* (sin (- 90 angle)) (* frame the-velocity)))
the−background))))))
;; (rocket−movie angle) −> natural−number/c
;; angle : exact−integer?
(define rocket-movie
(lambda (angle)
(animate (make-takeoff angle))))