🌐 ID

🏔️ 3D Surface Plotter

Gambarkan permukaan 3D z = f(x, y) sebagai mesh berwarna yang dapat diputar. Pilih preset seperti pelana atau riak, atau masukkan fungsi Anda sendiri, lalu putar dengan slider rotasi.

z =

Diizinkan: + - * / ^ ( ) dan sin, cos, tan, sqrt, abs, exp, log, pow; konstanta pi dan e; variabel x dan y.

30
6
34°
52°
PANDUAN

Pelajari lebih lanjut

01

Apa itu surface plot?

Surface plot memvisualisasikan fungsi dua variabel, z = f(x, y), sebagai medan ketinggian: untuk setiap titik pada bidang datar x/y, fungsi menghasilkan ketinggian z, dan menghubungkan semua ketinggian itu membentuk mesh halus yang melayang di 3D. Warna biasanya mengkodekan ketinggian, sehingga puncak dan lembah langsung terlihat. Ini adalah cara alami untuk menggambarkan hal seperti topografi, suhu di atas pelat, atau bentuk pelana matematis.
02

Cara tampilan 3D dirender

Alat ini menghitung grid titik (hingga 40×40) dengan mengevaluasi fungsi Anda di seluruh domain, lalu memutar-nya menggunakan dua sudut yang Anda kontrol, memproyeksikan titik yang sudah diputar ke 2D dengan proyeksi isometrik sederhana, dan mengurutkan bidang dari belakang ke depan agar yang lebih dekat menutupi yang lebih jauh - algoritma pelukis klasik. Semua digambar dengan HTML canvas biasa: tidak ada WebGL dan tidak ada three.js, sehingga alat ini kecil dan tanpa dependensi.
03

Input fungsi yang aman

Parser whitelist khusus membaca rumus Anda - tidak ada JavaScript eval - jadi hanya fungsi yang tercantum (sin, cos, tan, sqrt, abs, exp, log, pow), konstanta pi dan e, serta dua variabel x dan y yang diterima. Selain itu akan ditolak sebelum dijalankan. Titik awal yang baik adalah preset, seperti sin(x)*cos(y) untuk medan gelombang bergulung atau x^2 - y^2 untuk pelana klasik.

Pertanyaan umum

Variabel apa yang bisa saya gunakan?
Gunakan <strong>x</strong> dan <strong>y</strong>. Alat ini mengevaluasi fungsi Anda untuk mendapatkan ketinggian <em>z</em> di setiap titik grid pada domain yang dipilih.
Fungsi apa yang diizinkan?
sin, cos, tan, sqrt, abs, exp, log, dan pow, plus konstanta pi dan e. Gabungkan dengan aritmetika biasa (+ − * /) dan gunakan ^ untuk pangkat, misalnya z = sin(sqrt(x^2 + y^2)).
Apakah ini menggunakan WebGL atau three.js?
Tidak. Ini menggunakan proyeksi HTML canvas mandiri dengan pengurutan bidang ala algoritma pelukis, jadi tidak ada dependensi eksternal dan berjalan di mana saja browser bisa berjalan - bahkan pada perangkat keras sederhana.