Instalcja
Ten przewodnik obejmuje wszystko, co potrzebne, aby zainstalować Aspose.3D FOSS dla TypeScript i potwierdzić, że działa poprawnie, zanim napiszesz swój pierwszy skrypt przetwarzania 3D.
Wymagania wstępne
Upewnij się, że następujące są zainstalowane i znajdują się w twoim PATH przed kontynuacją:
| Narzędzie | Minimum | Uwagi |
|---|---|---|
| Node.js | 18 LTS | 20 or 22 LTS recommended |
| npm | 7 | Dołączony do Node.js |
| TypeScript | 5.0 | Instaluj za pomocą npm install -D typescript |
Aby sprawdzić wersje:
node --version # v18.x.x or later
npm --version # 7.x or later
npx tsc --version # Version 5.x.xKrok 1: Utwórz projekt (jeśli potrzebny)
Jeśli dodajesz Aspose.3D do istniejącego projektu TypeScript, pomiń ten krok i przejdź od razu do Kroku 2.
Dla nowego projektu:
mkdir my-3d-project && cd my-3d-project
npm init -y
npm install -D typescript ts-node @types/nodeKrok 2: Zainstaluj @aspose/3d
npm install @aspose/3dInstaluje to pakiet oraz jego jedyną zależność przechodnią, xmldom, automatycznie. Nie są wymagane dodatkowe pakiety systemowe, natywne dodatki ani kompilatory. Instalacja jest zakończona, gdy @aspose/3d pojawia się w twoim package.json w dependencies.
Zweryfikuj instalację:
ls node_modules/@aspose/3dPowinieneś zobaczyć katalog pakietu z package.json, pliki definicji typów (.d.ts), oraz skompilowanym JavaScriptem.
Krok 3: Skonfiguruj TypeScript
Dodaj lub zaktualizuj tsconfig.json w katalogu głównym projektu z następującymi ustawieniami. Są one wymagane dla pełnej kompatybilności z definicjami typów biblioteki i wyjściem CommonJS:
{
"compilerOptions": {
"target": "ES2020",
"module": "commonjs",
"moduleResolution": "node",
"esModuleInterop": true,
"strict": true,
"outDir": "dist",
"rootDir": "src"
},
"include": ["src/**/*.ts"],
"exclude": ["node_modules", "dist"]
}Kluczowe ustawienia i ich znaczenie:
| Ustawienie | Wartość | Dlaczego |
|---|---|---|
target | ES2020 | Włącza opcjonalne łańcuchowanie, operator nullish coalescing oraz inne funkcje ES2020 używane wewnętrznie |
module | commonjs | Biblioteka dostarcza wyjście CommonJS; musi się zgadzać |
moduleResolution | node | Wymagane do prawidłowego rozwiązywania the @aspose/3d importy podścieżek |
esModuleInterop | true | Umożliwia domyślne importy z modułów CommonJS bez obejść przestrzeni nazw |
strict | true | Biblioteka została napisana przy użyciu noImplicitAny oraz strictNullChecks; pozostaw to włączone |
Krok 4: Zweryfikuj instalację
Utwórz src/verify.ts z następującym minimalnym testem importu:
import { Scene } from '@aspose/3d';
const scene = new Scene();
console.log('Aspose.3D FOSS for TypeScript is installed correctly.');
console.log('rootNode name:', scene.rootNode.name);Skompiluj i uruchom:
npx tsc
node dist/verify.jsOczekiwany wynik:
Aspose.3D FOSS for TypeScript is installed correctly.
rootNode name:Nazwa węzła głównego jest domyślnie pustym ciągiem znaków — scene.rootNode jest tworzony bez argumentu nazwy.
Jeśli wolisz pominąć krok kompilacji podczas rozwoju, uruchom bezpośrednio przy użyciu ts-node:
npx ts-node src/verify.tsKrok 5: Szybki start: Załaduj scenę i wypisz informacje o węzłach
Poniższy skrypt ładuje plik 3D i wypisuje nazwę oraz typ encji każdego węzła w scenie. Działa z każdym obsługiwanym formatem: OBJ, glTF, GLB, STL, 3MF, FBX lub COLLADA.
import { Scene, Node } from '@aspose/3d';
function printNode(node: Node, depth: number = 0): void {
const indent = ' '.repeat(depth);
const entityType = node.entity ? node.entity.constructor.name : '(no entity)';
console.log(`${indent}${node.name} [${entityType}]`);
for (const child of node.childNodes) {
printNode(child, depth + 1);
}
}
const scene = new Scene();
// Replace 'model.obj' with any supported 3D file path.
// Format is detected automatically from binary magic numbers.
scene.open('model.obj');
console.log('Scene loaded. Node hierarchy:');
printNode(scene.rootNode);Zapisz to jako src/quickstart.ts i uruchom go:
npx ts-node src/quickstart.tsDla pliku OBJ z jedną siatką o nazwie Cube, wynik będzie wyglądał następująco:
Scene loaded. Node hierarchy:
[(no entity)]
Cube [Mesh]Węzeł główny ma pustą nazwę (wyświetlaną jako pusty prefiks). Węzły potomne dziedziczą swoje nazwy z załadowanego pliku.
Uwagi dotyczące zależności
Aspose.3D FOSS for TypeScript ma dokładnie jedną zależność w czasie wykonywania:
| Pakiet | Cel | Instalowany automatycznie |
|---|---|---|
xmldom | Parsowanie XML dla obsługi formatu COLLADA (DAE) i 3MF | Tak, przez npm install @aspose/3d |
Nie musisz instalować xmldom ręcznie. Pojawi się w twoim node_modules po głównym poleceniu instalacji. Nie ma natywnych dodatków (.node pliki) i nie wymaga bibliotek systemowych.
Kolejne kroki
Teraz, gdy biblioteka jest zainstalowana i zweryfikowana:
- Przeczytaj Przewodnik dewelopera aby uzyskać pełny przewodnik po wszystkich obszarach funkcji.
- Zobacz Funkcje i możliwości w celu uzyskania szczegółów dotyczących obsługi formatów, wzorców grafu sceny, interfejsów API materiałów i animacji oraz pełnych przykładów kodu TypeScript.