Paket: @aspose/3d (v24.12.0) Dil: TypeScript / Node.js 18+ Lisans: MIT
@aspose/3d MIT lisanslı bir kütüphanedir; Node.js’te 3D sahneleri okuma, oluşturma ve dışa aktarma için kullanılır. Tam TypeScript tip tanımları, tek bir çalışma zamanı bağımlılığı (xmldom), ve yedi büyük 3D dosya formatını destekler. Tüm G/Ç eşzamanlıdır. Yerel eklentiler gerektirmez.
Enumerations
Enumerations tsconfig.json doğru alt yol çözümlemesi için ayarlar:
Çekirdek Sınıflar
Enumerations
3D sahne için kök kapsayıcı. Tüm içerik; düğümler, geometri, materyaller ve animasyonlar; şu konumda köklenen bir ağaçta depolanır scene.rootNode.Kullan open() / openFromBuffer() bir dosya yüklemek için ve save() / saveToBuffer() dışa aktarmak için.
| Enumerations | Enumerations | Enumerations |
|---|
rootNode | Node | Sahne grafiğinin kökü |
assetInfo | AssetInfo | Dosya meta verileri (oluşturucu, birimler, koordinat sistemi) |
animationClips | AnimationClip[] | Sahnede bulunan tüm animasyon klipleri |
open(path, opts?) | (string, LoadOptions?) → void | Diskten bir dosya yükle |
openFromBuffer(buf, opts?) | (Buffer, LoadOptions?) → void | Bellek içi tampondan yükle |
save(path, opts?) | (string, SaveOptions?) → void | Diskte kaydet (format uzantıdan çıkarılır) |
saveToBuffer(ext, opts?) | (string, SaveOptions?) → Buffer | Bellek içi tamponda kaydet |
createAnimationClip(name) | (string) → AnimationClip | Yeni bir animasyon klibi oluştur ve kaydet |
Enumerations
Sahne grafiğinde adlandırılmış bir ağaç düğümü. Düğümler isteğe bağlı bir Entity (mesh, camera, light) ve bir Transform düğümü ebeveynine göre konumlandıran.
| Enumerations | Enumerations | Enumerations |
|---|
name | string | Düğüm adı |
childNodes | Node[] | Doğrudan alt düğümler |
entity | `Entity | null` |
transform | Transform | Yerel çeviri, dönüş, ölçek |
materials | Material[] | Bu düğüme atanmış materyaller |
createChildNode(name) | (string) → Node | Bir alt düğüm ekle |
getChildNode(name) | `(string) → Node | null` |
Enumerations
Poligon ağı; birincil geometri türü. Extends Geometry.
| Enumerations | Enumerations | Enumerations |
|---|
controlPoints | Vector4[] | Vertex konumları (w=1 konumlar için) |
polygonCount | number | Poligon sayısı |
createPolygon(indices) | (number[]) → void | Bir poligon ekle (üçgen veya dörtgen) |
getElement(type) | `(VertexElementType) → VertexElement | null` |
createElement(type) | (VertexElementType) → VertexElement | Bir vertex öğesi oluştur |
Enumerations
Bir düğüme uygulanan yerel dönüşüm.
| Enumerations | Enumerations | Enumerations |
|---|
translation | Vector3 | Yerel konum |
eulerAngles | Vector3 | Derece cinsinden Euler dönüşü (XYZ sırası) |
rotation | Quaternion | Rotasyon quaternion olarak |
scaling | Vector3 | Yerel ölçek |
Malzeme Sınıfları
| Enumerations | Enumerations | Ana Özellikler |
|---|
LambertMaterial | Difüz + ortam gölgelendirme | diffuseColor, ambientColor, transparency |
PhongMaterial | Lambert’e speküler + yayılımlı ekler | specularColor, shininess, emissiveColor |
PbrMaterial | Fiziksel temelli glTF 2.0 için | albedo, metallicFactor, roughnessFactor, emissiveColor |
Matematik Sınıfları
| Enumerations | Enumerations |
|---|
Vector3 | 3-component double-precision vector (x, y, z) |
Vector4 | 4-component vector for homogeneous math (x, y, z, w) |
FVector3 | Tek duyarlıklı varyant, köşe verilerinde kullanılır |
Matrix4 | 4×4 transformation matrix; multiply, invert, decompose |
Quaternion | Dönüş kuaterniyonu; fromEulerAngle, toEulerAngles, slerp |
BoundingBox | Eksen hizalı sınırlayıcı kutu; minimum, maximum, center, size, merge |
Animasyon Sınıfları
| Enumerations | Enumerations |
|---|
AnimationClip | Adlandırılmış klip; içerir AnimationNode liste; aracılığıyla erişilir scene.animationClips |
AnimationNode | Bir klibi adlandırılmış sahne düğümüne bağlar; içerir AnimationChannel liste |
AnimationChannel | Tek bir özelliği hedefler (ör. translation X); bir … tutar KeyframeSequence |
KeyframeSequence | Sıralı … listesi KeyFrame nesnelerle interpolation ve extrapolation |
KeyFrame | Tek zaman/değer çifti |
Enumerations
| Enumerations | Enumerations | Enumerations |
|---|
VertexElementType | NORMAL, UV, VERTEX_COLOR, BINORMAL, TANGENT | Vertex eleman semantiği |
MappingMode | CONTROL_POINT, POLYGON_VERTEX, POLYGON, ALL_SAME | Verinin geometriye nasıl eşlendiği |
ReferenceMode | DIRECT, INDEX, INDEX_TO_DIRECT | Vertex eleman verisi için indeksleme stratejisi |
Interpolation | CONSTANT, LINEAR, BEZIER | Anahtar kare interpolasyonu |
Extrapolation | CONSTANT, GRADIENT, CYCLE, CYCLE_RELATIVE, OSCILLATE | Anahtar kare aralığının dışındaki davranış |
Format Modülleri
Biçime özgü seçenek sınıfları alt yol modüllerinden dışa aktarılır. Bunları ayrı ayrı içe aktarın:
OBJ Modülü (@aspose/3d/formats/obj)
| Enumerations | Anahtar Seçenekleri |
|---|
ObjLoadOptions | enableMaterials, flipCoordinateSystem, scale, normalizeNormal |
glTF/GLB Modülü (@aspose/3d/formats/gltf)
| Enumerations | Anahtar Seçenekleri |
|---|
GltfSaveOptions | binaryMode (true → .glb), flipTexCoordV |
GltfFormat | GltfFormat.getInstance(): format örneği için scene.save() |
STL Modülü (@aspose/3d/formats/stl)
| Enumerations | Anahtar Seçenekler |
|---|
StlLoadOptions | N/A |
StlSaveOptions | binaryMode (false → ASCII, true → ikili) |
FBX Modülü (@aspose/3d/formats/fbx)
| Enumerations | Anahtar Seçenekler |
|---|
FbxLoadOptions | N/A |
FbxSaveOptions | embedTextures |
Desteklenen Biçimler
| Enumerations | Enumerations | Enumerations | Enumerations |
|---|
| Enumerations | .obj | Enumerations | Enumerations |
| glTF 2.0 | .gltf | Enumerations | Enumerations |
| Enumerations | .glb | Enumerations | Enumerations |
| STL | .stl | Enumerations | Enumerations |
| FBX | .fbx | Hayır* | Hayır* |
| COLLADA | .dae | Enumerations | Enumerations |
| 3MF | .3mf | Enumerations | Enumerations |
Hızlı Referans Örneği
Ayrıca Bakınız