Aspose.3D FOSS for TypeScript
Referencja API dla @aspose/3d wersja 24.12.0. Zainstaluj za pomocą:
npm install @aspose/3dŚrodowisko uruchomieniowe: Node.js 18, 20, 22+ · Język: TypeScript 5.0+ / JavaScript (CommonJS) · Licencja: MIT
Podstawowy graf sceny
ImageRenderOptions
Główny kontener sceny 3D. Wywołaj scene.open() lub scene.openFromBuffer() aby wczytać plik, oraz scene.save() aby zapisać wynik. Udostępnia scene.rootNode jako punkt wejścia do hierarchii węzłów.
ImageRenderOptions
Nazwany węzeł w drzewie sceny. Przechowuje Transform, opcjonalny entity (siatka, kamera, światło lub inny SceneObject), oraz zero lub więcej węzłów potomnych dostępnych przez childNodes.
ImageRenderOptions
Klasa bazowa dla wszystkich obiektów, które mogą być dołączone do Node jako jej główna jednostka. Rozszerzana przez Mesh, Camera, Light, i inne.
SceneObject
Abstrakcyjna baza dla nazwanych obiektów należących do sceny. Dostarcza name właściwość oraz śledzenie przynależności do sceny, współdzielone przez węzły, jednostki i obiekty na poziomie zasobów.
A3DObject
Podstawowa klasa bazowa dla wszystkich Aspose.3D obiektów. Dostarcza system właściwości (getProperty, setProperty) oraz name pole dziedziczone przez każdą klasę publiczną.
Geometria i siatka
ImageRenderOptions
Reprezentuje siatkę wielokątową. Zawiera controlPoints tablicę Vector4 wierzchołki i definicje wielokątów tworzone za pomocą createPolygon(). Wywołaj triangulate() aby przekonwertować wszystkie wielokąty na trójkąty przed eksportem.
ImageRenderOptions
Klasa bazowa dla wszystkich typów geometrii. Przechowuje controlPoints oraz kolekcję elementów wierzchołkowych (normale, UV, kolory) dołączonych do geometrii.
VertexElement
Klasa bazowa dla kanałów atrybutów per-wierzchołkowych dołączonych do Geometry.Podklasy zawierają typowane tablice danych oraz mappingMode / referenceMode metadane.
VertexElementNormal
A VertexElement podklasa, która przechowuje normalne powierzchni. Dane są przechowywane wewnętrznie jako FVector4[] (dziedziczone po VertexElementFVector). Wymagane przez większość rendererów dla poprawnego oświetlenia.
VertexElementUV
A VertexElement podklasa, która przechowuje dwuwymiarowe współrzędne tekstury. Pojedyncza siatka może mieć wiele zestawów UV dla różnych warstw tekstur.
VertexElementVertexColor
A VertexElement podklasa, która przechowuje wartości koloru RGBA dla każdego wierzchołka.
VertexElementType
Wyliczenie typów kanałów atrybutów, które może reprezentować VertexElement może reprezentować (np., NORMAL, UV, VERTEX_COLOR, TANGENT, BINORMAL).
MappingMode
Wyliczenie kontrolujące, jak dane elementu mapują się na geometrię: CONTROL_POINT, POLYGON_VERTEX, POLYGON, EDGE, lub ALL_SAME.
ReferenceMode
Wyliczenie kontrolujące, jak indeksy elementów odwołują się do danych: DIRECT (jeden-do-jednego) lub INDEX_TO_DIRECT (przez tablicę indeksów).
TextureMapping
Wyliczenie semantyk kanałów tekstury: DIFFUSE, SPECULAR, NORMAL, EMISSIVE, BUMP, i więcej.
Transform i Spatial
ImageRenderOptions
Przechowuje lokalną pozycję (translation), rotację (rotation jako Quaternion), i skalę (scaling) obiektu Node. Zmiany tutaj wpływają na węzeł i wszystkie jego dzieci.
GlobalTransform
Widok tylko do odczytu transformacji w przestrzeni światowej węzła, obliczany przez akumulację wszystkich przodków Transform wartości. Dostęp przez node.globalTransform.
BoundingBox
Prostopadłościan ograniczający wyrównany do osi, zdefiniowany przez minimum i maximum Vector3 wierzchołek. Używany do opisania przestrzennego zasięgu siatki lub sceny.
ImageRenderOptions
Material, LambertMaterial, PhongMaterial, PbrMaterial
Material jest abstrakcyjną klasą bazową dla wszystkich typów materiałów. Dostępne są trzy konkretne implementacje:
- LambertMaterial — jedynie rozpraszające z kanałami koloru otoczenia, rozproszenia i emisji. Odpowiednie dla powierzchni niebłyszczących.
- PhongMaterial — rozszerza
LambertMaterialo kolorze odbicia i właściwościach połysku dla cieniowania Phonga. - PbrMaterial — materiał renderingu opartego na fizyce z kanałami metaliczności, szorstkości, koloru bazowego i mapy normalnej. Mapuje się bezpośrednio na model materiału glTF 2.0 PBR.
Kamera i oświetlenie
ImageRenderOptions
Encja węzła punktu widzenia z typem projekcji, kątem widzenia, odległościami przycięcia bliskiego/daleka oraz właściwościami proporcji obrazu.
ImageRenderOptions
Jednostka węzła źródła światła. Typ jest kontrolowany przez LightType enumerację.
LightType
Wyliczenie obsługiwanych rodzajów światła: POINT, DIRECTIONAL, SPOT, AREA, VOLUME.
ProjectionType
Wyliczenie trybów projekcji kamery: PERSPECTIVE i ORTHOGRAPHIC.
Narzędzia matematyczne
ImageRenderOptions
Trójskładnikowy wektor zmiennoprzecinkowy z x, y, z pól i wspólnymi metodami arytmetycznymi (dot, cross, normalize, minus, times). Wyeksportowano z @aspose/3d/utilities.
ImageRenderOptions
Czteroskładnikowy wektor zmiennoprzecinkowy z x, y, z, w pól. Używany jako typ wpisów w Mesh.controlPoints.
ImageRenderOptions
Dwuskładnikowy wektor podwójnej precyzji z x i y pól. Używany do współrzędnych tekstury UV.
FVector3
Kompaktowy wektor jednoprzecinkowy o pojedynczej precyzji składający się z trzech komponentów, używany w tablicach danych elementów wierzchołków dla normalnych i stycznych.
ImageRenderOptions
Macierz transformacji 4×4. Obsługuje konkatenację, odwracanie, transpozycję oraz dekompozycję na komponenty translacji, rotacji i skali. Wyeksportowano z @aspose/3d/utilities.
ImageRenderOptions
Jednostkowy kwaternion do reprezentacji obrotów bez blokady gimbal. Zapewnia slerp() do płynnej interpolacji oraz konwersji do/z kątów Eulera i Matrix4. Wyeksportowano z @aspose/3d/utilities.
ImageRenderOptions
AnimationClip
Nazwana, ograniczona w czasie kolekcja AnimationNode tracków. Główny kontener danych animacji klatek kluczowych wczytanych z plików FBX lub COLLADA.
AnimationNode
Nazwana track animacji, która celuje w określoną ścieżkę właściwości obiektu sceny. Zawiera jeden lub więcej AnimationChannel obiektów.
AnimationChannel
Pojedynczy kanał animowanej właściwości w AnimationNode. Zawiera KeyframeSequence par czas/wartość.
KeyFrame
Pojedyncza próbka czas/wartość w KeyframeSequence. Zawiera znacznik czasu (w sekundach), wartość oraz informacje o stycznej do interpolacji.
KeyframeSequence
Uporządkowana lista KeyFrame próbek dla jednego kanału właściwości, wraz z Interpolation oraz Extrapolation ustawieniami sterującymi odtwarzaniem.
ImageRenderOptions
Wyliczenie trybów interpolacji klatek kluczowych. Znane elementy obejmują LINEAR oraz CONSTANT. Dodatkowe elementy, takie jak BEZIER mogą być dostępne.
ImageRenderOptions
Definiuje zachowanie poza zakresem klatek kluczowych (przed pierwszą klatką i po ostatniej). Sterowane przez ExtrapolationType.
StepMode
Wyliczenie kontrolujące, jak interpolacja skokowa (stała) jest stosowana na granicach.
WeightedMode
Wyliczenie obsługi wagi stycznej Béziera: NONE, OUT_WEIGHT, NEXT_IN_WEIGHT, lub BOTH.
ExtrapolationType
Wymienienie zachowań poza zakresem: CONSTANT, GRADIENT, CYCLE, CYCLE_RELATIVE, i OSCILLATE.
Wejście/wyjście formatu
FileFormat
Podstawowy deskryptor formatu pliku 3D. Każdy obsługiwany format udostępnia konkretny singleton poprzez getInstance().
ImageRenderOptions
Klasa bazowa dla implementacji importu specyficznych dla formatu. Nie jest tworzona bezpośrednio; wywoływana wewnętrznie przez scene.open().
ImageRenderOptions
Klasa bazowa dla implementacji eksportu specyficznych dla formatu. Nie jest tworzona bezpośrednio; wywoływana wewnętrznie przez scene.save().
LoadOptions
Klasa bazowa dla obiektów opcji ładowania specyficznych dla formatu. Przekaż instancję podklasy do scene.open() lub scene.openFromBuffer().
SaveOptions
Klasa bazowa dla obiektów opcji zapisu specyficznych dla formatu. Przekaż instancję podklasy do scene.save().
IOService
Wewnętrzny interfejs usługi, który abstrahuje operacje I/O systemu plików i bufora dla importerów i eksporterów.
Format OBJ
OBJ obsługuje zarówno import, jak i eksport. Podczas zapisywania jako OBJ, biblioteka materiałów (.mtl) jest zapisywana automatycznie obok the .obj plik.
ObjImporter
Wewnętrzny importer, który odczytuje pliki Wavefront OBJ, rozwiązuje .mtl biblioteki materiałów i wypełnia Scene. Wywoływany automatycznie, gdy ObjLoadOptions jest przekazywany do scene.open().
ObjExporter
Wewnętrzny eksporter zapisujący pliki Wavefront OBJ. Towarzysząca .mtl biblioteka materiałów jest zapisywana automatycznie. Wywoływany, gdy scene.save() celuje w .obj ścieżkę.
ObjLoadOptions
Opcje ładowania dla plików OBJ. Kluczowe właściwości: enableMaterials (boolean, default true), flipCoordinateSystem (boolean), normalizeNormal (boolean, default true), scale (number). See Opcje ładowania i zapisu formatu po pełne szczegóły.
ObjSaveOptions
Zapisz opcje eksportu OBJ. Przekaż do scene.save() aby kontrolować zachowanie wyjścia OBJ. Zobacz Opcje ładowania i zapisu formatu po pełne szczegóły.
ObjFormat
Jednostka opisująca format dla OBJ. Oba canImport i canExport są true.
Format glTF
GltfImporter
Odczytuje glTF 2.0 JSON (.gltf) oraz binarny GLB (.glb) pliki. Obsługuje osadzone i zewnętrzne odwołania do buforów, materiały PBR, skórki i klipy animacji.
GltfExporter
Zapisuje wyjście glTF 2.0. Gdy GltfSaveOptions.binaryMode jest true, generuje samodzielny GLB; w przeciwnym razie zapisuje JSON .gltf z towarzyszącym .bin buforem.
GltfLoadOptions
Opcje ładowania dla plików glTF/GLB. Kontrolują rozdzielczość buforów oraz zachowanie przy ładowaniu tekstur.
GltfSaveOptions
Opcje zapisu dla eksportu glTF/GLB. Istotne właściwości: binaryMode (boolean, true → GLB, domyślnie false), flipTexCoordV (boolean, odwraca pionową oś UV, domyślnie true). Zobacz Opcje ładowania i zapisu formatu dla pełnych szczegółów.
GltfFormat
Jednostka deskryptora formatu. Uzyskaj poprzez GltfFormat.getInstance() i przekaż do scene.save() jako drugi argument.
Format STL
StlImporter
Odczytuje zarówno pliki ASCII, jak i binarne STL do Scene zawierającego pojedynczy Mesh obiekt.
StlExporter
Zapisuje plik STL w formacie binarnym. Wyjście zawiera siatkę trójkątną z sceny; wielokąty niebędące trójkątami są automatycznie triangulowane.
StlLoadOptions
Opcje ładowania dla STL. Kontrolują, czy importer odwraca wektory normalnych podczas importu.
StlSaveOptions
Zapisz opcje eksportu STL. Kluczowa właściwość: binaryMode (boolean, domyślnie false). Kontroluje, czy wyjście jest w formacie ASCII czy binarnym STL. Zobacz Opcje ładowania i zapisu formatu po pełne szczegóły.
StlFormat
Jednostka opisująca format (singleton). Uzyskaj poprzez StlFormat.getInstance().
3MF Format
ThreeMfImporter
Odczytuje archiwa 3MF zgodne z Open Packaging Convention i wypełnia a Scene z obiektami siatki, kolorami i właściwościami materiałów.
ThreeMfExporter
Zapisuje prawidłowy archiwum 3MF z bieżącej sceny. Nadaje się do przepływów pracy związanych z drukiem 3D.
ThreeMfLoadOptions
Opcje ładowania dla plików 3MF.
ThreeMfSaveOptions
Opcje zapisu dla eksportu 3MF.
ThreeMfFormat
Jednostka opisująca format (singleton). Uzyskaj poprzez ThreeMfFormat.getInstance().
Format FBX
FbxImporter
Odczytuje binarne i ASCII pliki FBX, w tym geometrię, materiały, szkielety, kształty mieszane oraz klipy animacji.
FbxExporter
Zapisuje pliki FBX z bieżącej sceny. Obsługiwane są zarówno binarne, jak i ASCII wyjścia FBX, w zależności od opcji.
FbxLoadOptions
Opcje ładowania dla FBX. Kontrolują, czy animacje, skórki i kształty mieszane są importowane.
FbxSaveOptions
Opcje zapisu dla eksportu FBX. Kluczowa właściwość: embedTextures (boolean, default false). Zobacz Opcje ładowania i zapisu formatu po pełne szczegóły.
FbxFormat
Jednostka opisująca format (singleton). Uzyskaj poprzez FbxFormat.getInstance().
Format COLLADA
Import i eksport COLLADA wymagają the xmldom peer dependency, która jest instalowana automatycznie wraz z @aspose/3d.
ColladaImporter
Odczytuje COLLADA (.dae) pliki XML przy użyciu xmldom. Obsługuje geometrię, materiały, kamery, światła i animację.
ColladaExporter
Zapisuje wyjściowy XML COLLADA z bieżącej sceny. Odpowiedni do wymiany z narzędziami DCC (Blender, Maya itp.).
ColladaFormat
Format descriptor singleton. Uzyskaj poprzez ColladaFormat.getInstance().
System właściwości
ImageRenderOptions
Typed name/value pair, który może być dołączony do dowolnego A3DObject. Obsługuje typy wartości skalarne i wektorowe.
PropertyCollection
Uporządkowany kontener Property obiektów. Dostępny na dowolnym A3DObject poprzez properties accessor.
CustomObject
Wolnoformowa torba właściwości, która rozszerza A3DObject. Używane do przechowywania dowolnych metadanych, które nie odpowiadają standardowej klasie.
Informacje o zasobie
AssetInfo
Zawiera metadane na poziomie sceny wczytane z pliku źródłowego: autora, nazwę aplikacji, datę utworzenia, skalę jednostki oraz informacje o osiach współrzędnych.
ImageRenderOptions
Opcje kontrolujące sposób rozwiązywania i kodowania tekstur oraz obrazów podczas zapisywania do formatów, które osadzają dane obrazu (np. GLB z binaryMode: true).
Zobacz także
- Baza wiedzy: Poradniki
- Szczegółowy przegląd API
- Klasa Scene
- Klasa Node
- Klasa Mesh
- Klasa Transform
- Klasa GlobalTransform
- Klasa Camera
- Klasa Light
- Klasa Vector3
- Klasa Quaternion
- Klasa Matrix4
- Klasa BoundingBox
- Material, LambertMaterial, PhongMaterial, PbrMaterial
- Opcje ładowania i zapisu formatu
- Referencja Vector2, Vector4
- Referencja Property, PropertyCollection, AssetInfo
- Referencja A3DObject, SceneObject, Entity
- Referencja VertexElement, VertexElementNormal, VertexElementUV
- Referencja wyliczeń
- npm: @aspose/3d
- GitHub: aspose-3d-node