はじめに
リリースします Aspose.3D FOSS for Python, Python 純粋なライブラリで、一般的な 3D ファイル形式の読み取り、書き込み、変換を行います。このライブラリは PyPI で次の名前で公開されています aspose-3d-foss, MIT ライセンスを採用し、外部依存は一切ありません。.
プログラムから 3D ファイルを検査または変換する必要があったことがあるなら(メッシュの頂点数を取得したり、OBJ のジオメトリを処理スクリプトに流し込んだり、STL ファイルを一括で glTF に変換してウェブビューアで表示したり)、このライブラリはそのような用途向けに作られています。グラフィックドライバやネイティブ拡張モジュール、クラウド接続は不要です。.
含まれるもの
コアシーングラフ
すべてのファイルは Scene 元のファイルのノード階層を鏡像するオブジェクトです。ノードは Transform (平行移動、回転、スケール) と、以下のような 1 つ以上の付随エンティティ Mesh, Camera, または Light.
ジオメトリアクセス
Mesh オブジェクトは次を公開します:
control_points: 頂点位置のリストとしてVector4(x, y, z, w)polygons: 任意の多角形の頂点数(三角形だけでなく)を含む面インデックスリストのリストget_element(VertexElementType): 法線、UV、頂点カラー、スムージンググループのための名前付き頂点データレイヤーを取得します
マテリアル
LambertMaterial および PhongMaterial OBJから読み取ったマテリアルプロパティを保持します .mtl ファイル(ambient、diffuse、specular、emissive、transparency、shininess)。マテリアルは、対応フォーマットにおいてロード–セーブの往復を経ても保持されます。.
数学ユーティリティ
Vector2, Vector3, Vector4, FVector3, Quaternion, Matrix4, および BoundingBox はジオメトリ計算用の軽量値型として含まれています。.
アニメーション
この AnimationClip, AnimationNode, KeyframeSequence, および KeyFrame クラスは、glTFやCOLLADAなど、キー フレーム アニメーション データを保持するフォーマットからのデータへのアクセスを提供します。.
クイックスタート
pip install aspose-3d-foss
3D ファイルをロードし、すべてのメッシュの頂点数を出力します::
from aspose.threed import Scene
from aspose.threed.entities import Mesh
scene = Scene.from_file("model.obj")
def visit(node):
for entity in node.entities:
if isinstance(entity, Mesh):
print(f"{node.name}: {len(entity.control_points)} vertices, "
f"{len(entity.polygons)} polygons")
for child in node.child_nodes:
visit(child)
visit(scene.root_node)
同じファイルを glTF に変換:
from aspose.threed import Scene
from aspose.threed.formats import GltfSaveOptions
scene = Scene.from_file("model.obj")
scene.save("model.gltf", GltfSaveOptions())
これが完全なプログラムです。設定ファイルは不要、API キーも不要、ネットワーク呼び出しもありません。.
サポートされているフォーマット
| フォーマット | Extension(s) | 読み込み | 保存 | メモ |
|---|---|---|---|---|
| Wavefront OBJ | .obj | はい | はい | .mtl マテリアルのロードに対応 |
| STL | .stl | はい | はい | バイナリとASCII; 座標系反転オプション |
| glTF 2.0 | .gltf, .glb | はい | はい | GLB(自己完結型バイナリ)に対応 |
| COLLADA | .dae | はい | はい | ColladaSaveOptions 利用可能 flip_coordinate_system, enable_materials, indented |
| 3MF | .3mf | はい | はい | 3Dプリントのワークフローに適しています |
| FBX | .fbx | 部分的 | N/A | トークナイザーのみ;完全パーサは進行中 |
フォーマットの検出はファイル拡張子から自動的に行われます。フォーマット固有のロードおよび保存オプション(ObjLoadOptions, StlSaveOptions, GltfSaveOptions, ThreeMfSaveOptions)は細かい制御のために利用可能です。.
オープンソースかつ無料
このライブラリは MIT ライセンスです。商用アプリケーションでの使用、改変、再配布が制限なく可能です。ソースは GitHub の Aspose 組織で入手できます。.
利用階層やトークン制限、テレメトリはありません。ライブラリはすべてローカルで処理を行います。.
依存関係: なし。このパッケージは純粋なPythonホイールとしてインストールされ、C拡張やサードパーティのランタイム要件はありません。.
はじめに
- インストール:
pip install aspose-3d-foss - ハウツー:ファイルのロード: Pythonで3Dモデルをロードする方法
- ハウツー:ファイルの変換: Pythonで3Dモデルを変換する方法
- API リファレンス: Aspose.3D FOSS for Python API リファレンス
- PyPI: aspose-3d-foss(PyPI)
結論
Aspose.3D FOSS for Python 26.1.0 は、ツール、パイプライン、Web アプリケーションで使用される一般的な 3D ファイルフォーマット(OBJ、STL、glTF、COLLADA、3MF)を、統一された Python API とインストールの手間なしでカバーします。バグや未対応のエッジケース、追加が必要なフォーマットに遭遇した場合は、GitHub で issue を作成してください。ライブラリは積極的にメンテナンスしており、貢献を歓迎します。.