Mandelbrot (WebFX demo)

Mandelbrot (WebFX demo)

  • 最新バージョン
  • NKT-IKBU

WebFXを実証するためのシンプルなMandelBrotアプリ

このアプリについて

ターゲットオーディエンス

このアプリは、WebFXプロジェクトに従って開発者向けに公開されており、プロジェクトデモの一部です。


新しい聴衆のために

WebFXは、単一のJavaコードベースから7つのプラットフォーム(Web、Android、iOS、Macos、Linux、Rinax、Raspberry Piなどの埋め込み)をターゲットにできる無料のオープンソースクロスプラットフォームソリューションです。
基礎となるテクノロジー:OpenJFX、Gluon、GWT。

たとえば、https://mandelbrot.webfx.devのこの同じアプリのWebバージョンにアクセスできます

プラットフォームが何であれ、アプリケーションソースコードはまったく同じです(以下のリンクセクションを参照して、このデモのソースコードにアクセスしてください)。
アプリケーションはJavaで記述されており、Javafx APIを使用してユーザーインターフェイスを構築します。
Gluon Toolchain(Graalvmの上に構築された)は、Webを除くすべてのプラットフォームのネイティブアプリにアプリケーションJavaコードをコンパイルするために使用されます(これにはこのAndroidバージョンが含まれます)。
GWTは、Webバージョンのコンパイルに使用されます。 Javaコードを最適化されたJavaScriptコードに送信します。
その結果、すべてのプラットフォームのすべての実行可能ファイルは、最適化されたパフォーマンスを提供します。


この特定のデモについて

このデモはRay Tracerデモに似ていますが、さらにWebプラットフォーム上のWebAssemblyを利用しています。

Ray Tracerのように、Mandelbrot Demoは、CPUの使用量が多いにもかかわらずUIをブロックしないアプリの例を示しています。

アプリケーションが計算を行っている間、UIはまだ反応的ですが、バックグラウンドで計算を継続しながら、これまでに計算されたアニメーションを再生することもできます。

これは、WebFXワーカーAPIおよびWebAssembly APIを使用して達成されます。これは、Webプラットフォーム用の実際のWebワーカー、および他のプラットフォーム用の標準Javaスレッドに翻訳されます。

WebAssemblyがサポートされている場合(Webプラットフォームのみ)、計算はWebAssemblyを使用して行われます。


リンク

デモソースコード:https://github.com/webfx-demos/webfx-demo-mandelbrot
WebFX Webサイト:https://webfx.dev
webfx github:https://github.com/webfx-project/webfx

バージョン Mandelbrot (WebFX demo)