よくある質問
よくある質問
@aspose/3d をインストールするにはどうすればよいですか?
npmからインストールします。Node.js 18以降が必要です:
npm install @aspose/3dインストールを確認する:
import { Scene } from '@aspose/3d';
const scene = new Scene();
console.log('@aspose/3d ready');TypeScript の型定義はパッケージに同梱されています。別個の @types/ パッケージは必要ありません。
サポートされているファイル形式は何ですか?
| フォーマット | インポート | エクスポート |
|---|---|---|
| OBJ (Wavefront) | はい | はい |
| glTF 2.0 / GLB | はい | はい |
| FBX (Autodesk) | いいえ* | いいえ* |
| STL (Stereo Lithography) | はい | はい |
| 3MF (3D Manufacturing) | はい | はい |
| COLLADA (.dae) | はい | はい |
3Dファイルをロードするにはどうすればよいですか?
Scene を作成し、scene.open() を呼び出す:
import { Scene } from '@aspose/3d';
import { ObjLoadOptions } from '@aspose/3d/formats/obj';
const scene = new Scene();
scene.open('model.obj', new ObjLoadOptions());特別なオプションが不要なフォーマットの場合、2番目の引数は省略してください:
const scene = new Scene();
scene.open('model.glb');scene.open() は非同期ですか?
いいえ。scene.open() と scene.openFromBuffer() は同期呼び出しです。ノンブロッキング I/O が必要な場合は、Node.js のワーカースレッド内で実行するか、setImmediate でラップしてください。
glTF/GLB に保存するにはどうすればよいですか?
ファイルパスで scene.save() を呼び出します。形式は拡張子から自動的に検出されます:
scene.save('output.glb'); // binary glTF
scene.save('output.gltf'); // JSON glTF
scene.save('output.obj'); // OBJ
scene.save('output.stl'); // STL
バッファ(メモリ内)からロードするにはどうすればよいですか?
scene.openFromBuffer() を使用してください:
import * as fs from 'fs';
import { Scene } from '@aspose/3d';
import { ObjLoadOptions } from '@aspose/3d/formats/obj';
const buffer = fs.readFileSync('model.obj');
const scene = new Scene();
scene.openFromBuffer(buffer, new ObjLoadOptions());エラー: モジュール ‘@aspose/3d/formats/obj’ が見つかりません
これは Node.js 12.7+ のパッケージエクスポート解決が必要です。Node.js 18+ を使用していることを確認してください。TypeScript では、"moduleResolution": "node16" または "bundler" を tsconfig.json に設定してください:
{
"compilerOptions": {
"moduleResolution": "node16",
"target": "ES2020"
}
}node.entity の型は何ですか?
node.entity は広く型付けされています。メッシュ固有のプロパティにアクセスするには、'controlPoints' in node.entity でその存在を確認するか、@aspose/3d/entities の Mesh クラスを使用してください。
import { Mesh } from '@aspose/3d/entities';
if (node.entity instanceof Mesh) {
const mesh = node.entity;
console.log(mesh.controlPoints.length);
}ライブラリはブラウザで実行できますか?
このライブラリは Node.js 用に設計されています。ブラウザでのサポートは、バンドラの構成とファイルシステム API をインメモリ代替に置き換えることに依存します。
ライブラリはスレッドセーフですか?
各Sceneオブジェクトは独立しています。別々のNode.jsワーカースレッドから別々のSceneインスタンスを使用することは、外部同期なしにスレッド間で単一のシーンを共有しない限り安全です。
サポートされている Node.js バージョンはどれですか?
Node.js 18、20、22 は公式にサポートされています。TypeScript 5.0+ は推奨されます。
@aspose/3d はアニメーションをサポートしていますか?
はい。アニメーションシステムにはAnimationClip、AnimationChannel、および@aspose/3d/animationからアクセスできるキーフレーム曲線タイプが含まれています。