Ich versuche, eine 3D-Grafik mit Racket und Dr. Racket zu plotten.Plot 3D-Grafik in Racket
Ich bin mit der Bibliothek plot und ich habe in vielen Grafiken, wie erfolgreich:
#lang racket
(require plot)
(plot3d (surface3d (lambda (x y) (* x y (+ 1 (- x) (- y)))) (- 2) 2 (- 2) 2))
(plot3d (surface3d (lambda (x y) (* (sin y) x)) (- 1) 1 (- 5) 5))
(plot3d (surface3d (lambda (x y) (+ 4 (expt x 3) (expt y 3) (* -3 x y))) (- 2) 2 (- 2) 2))
aber wenn ich versuche, das klassische Beispiel einer Linie in 2D „y = x“ grafisch darstellen, aber in 3D:
(plot3d (surface3d (lambda (x y) (+ x (- y)))
10 10 10 10))
Das Programm wird zu einem unendlichen Skript.
Vielleicht ist meine Mathematik falsch.
Die Zeile y = x in 2D wäre f (x, y) = x - y in 3D?
Ich möchte y = x in 3D sehen, das ist was ich will. Wie kann ich das lösen?
Ihr Programm läuft gut für mich, aber Ihre Grundstücksgrenzen sind alle "10", also gibt es nichts zu rendern. Wenn ich sie zu "0 10 0 10" ändere, sehe ich die Ebene "z = x - y". –