1. 製品
  2.   Aspose.3D
  3.   Aspose.3D FOSS for Java

Aspose.3D FOSS for Java

Java から3Dシーンを読み込み、作成、変換、エクスポートします — 無料でオープンソースです。

3D ファイル処理のためのオープンソース Java ライブラリ

Aspose.3D FOSS for Java は、MIT ライセンスの pure-Java ライブラリで、3D ファイル形式の操作が可能です。Maven 依存関係を 1 つ追加するだけで、ネイティブランタイムや外部 SDK、サードパーティ製レンダラをインストールせずに、すぐに 3D シーンの読み取り、構築、書き込みを開始できます。

このライブラリは、SceneNodeMeshCameraTransform を中心としたクリーンなシーングラフ API を提供します。これはプロの 3D ツールで使用されているのと同じ概念モデルです。サポートフォーマットは OBJ(.mtl マテリアルのロード対応)、STL(バイナリおよび ASCII、ラウンドトリップ検証済み)、glTF 2.0(PBR マテリアル)、GLB(バイナリ glTF)、および FBX(インポートのみ)です。フォーマットごとのロード・セーブオプションにより、座標の反転、スケール、法線の正規化、マテリアルのロードを、フォーマット固有のパースコードを書かずに制御できます。

Aspose.3D FOSS は Java 21 以降が必要で、Windows、macOS、Linux の CI ランナー、Docker コンテナ、サーバーレス環境でも同一に動作します。コンパイルすべきネイティブ拡張も、インストールすべきシステムパッケージもありません。

3D フォーマットのサポートとシーングラフ API

  • OBJ / MTL: 付随するマテリアル定義とともに Wavefront OBJ ファイルをロードします。
  • STL: バイナリと ASCII の両方の STL を読み書きし、完全なラウンドトリップ検証を行います。
  • glTF 2.0 / GLB: GltfSaveOptions を使用した PBR マテリアルのロードとエクスポート。GLB 出力には setContentType(FileContentType.BINARY) を使用します。
  • FBX: FBX ファイルのロードに対するインポートサポート(エクスポートは利用できません)。
  • Scene-graph API: Scene, Node, Mesh, Camera, Transform.

どこで Aspose.3D FOSS が使用できるか

  • アセット検証パイプライン: CI で 3D アセットを検証、再向き付け、再エクスポートします。
  • ゲーム開発ツール: ネイティブエンジンなしで OBJ と STL メッシュをバッチ処理します。
  • 3D プリントワークフロー: STL ファイルを読み取り、検証し、再エクスポートします。
  • Web バックエンド: Docker またはサーバーレス関数で 3D 変換エンドポイントを提供します。
  • コンテンツ移行: 大規模にフォーマットファミリー間の変換を行います。

フォーマット別オプションと座標制御

  • 座標系の向き: カスタムコードなしで、フォーマットごとに軸を反転し、スケールを調整します。
  • 法線の正規化: 読み込みまたは保存時に頂点法線を自動的に正規化します。
  • マテリアル読み込み制御: 解析を高速化するために MTL/テクスチャの読み込みを有効化または無効化します。
  • 整形出力: オプションでコンパクトまたは人間が読みやすい glTF JSON を選択できます。
  • 往復忠実度: 未知のシーングラフノードは再保存時にそのまま保持されます。

開発者体験

Aspose.3D FOSS for Java は、単一の Maven 依存関係 (com.aspose:aspose-3d-foss:26.1.0) でインストールできます。このライブラリは純粋な Java で、コンパイルが必要なネイティブ拡張やインストールすべきシステムパッケージはありません。

シーングラフ API はプロフェッショナルな 3D ツールの概念モデルを鏡のように再現しているため、Three.js や Blender のデータモデルに慣れている人にとって学習曲線は短くなります。このライブラリは MIT ライセンスのオープンソースで、GitHub でのバグ報告や貢献を歓迎します。

OBJシーンをロードし、glTFとしてエクスポートする

Maven 依存関係を追加し、Scene.fromFile("model.obj") を呼び出して OBJ ファイルとその MTL マテリアル定義をロードします。.gltf 拡張子を付けた単一の scene.save() 呼び出しで、フォーマットレジストリやコンバータオブジェクトを必要とせずに glTF 2.0 JSON ファイルが書き出されます。

<dependency>
  <groupId>com.aspose</groupId>
  <artifactId>aspose-3d-foss</artifactId>
  <version>26.1.0</version>
</dependency>
import com.aspose.threed.*;

// OBJ ファイルを読み込む(.mtl マテリアル付き)
Scene scene = Scene.fromFile("model.obj");

// glTF 2.0としてエクスポート
scene.save("model.gltf");

GltfSaveOptions を使って STL を glTF に変換する

座標系の調整を行った glTF ファイルを生成するには、setFlipCoordinateSystem(true) を設定した GltfSaveOptions インスタンスを渡します。同様のパターンはすべてのフォーマット固有オプションに適用されます — 対象とするフォーマットに合わせてオプションクラスを差し替えてください。

import com.aspose.threed.*;

Scene scene = new Scene();
scene.open("mesh.stl");

// glTFとして保存(オプション付き)
GltfSaveOptions opts = new GltfSaveOptions();
opts.setFlipCoordinateSystem(true);
opts.setPrettyPrint(true);
scene.save("mesh.gltf", opts);

よくある質問

Aspose.3D FOSS for Java とは何ですか?

これは、ネイティブランタイムや外部 SDK をインストールせずに 3D シーンの読み込み、操作、保存ができる、無料で MIT ライセンスの pure-Java ライブラリです。

サポートされている3Dフォーマットはどれですか?

OBJ(.mtl 付き)、STL(バイナリおよび ASCII)、glTF 2.0、GLB(バイナリ glTF)、および FBX(インポートのみ)。各フォーマットには専用のロード/セーブオプションクラスがあります。

ネイティブの依存関係は必要ですか?

いいえ。Aspose.3D FOSS for Java は pure Java で、ネイティブ拡張は一切ありません。Windows、macOS、Linux でコンパイル工程なしで実行できます。

インストール方法は?

プロジェクトに Maven 依存関係 com.aspose:aspose-3d-foss:26.1.0 を追加してください。追加のシステムパッケージやネイティブ拡張は必要ありません。

座標系の向きを制御できますか?

はい。フォーマットごとのオプションクラスを使用すれば、軸の反転、スケールの調整、法線の正規化を、フォーマット固有のパースコードを書かずに行えます。

どの Java バージョンがサポートされていますか?

Java 21以降がサポートされています。ライブラリは主要なすべてのオペレーティングシステムで同一に動作します。

ソースコードは入手可能ですか?

はい。ライブラリはMITライセンスで、GitHubでホストされています。バグ報告やプルリクエストは歓迎します。

  

サポートと学習リソース

 日本語