Instalație

Acest ghid acoperă tot ce trebuie să instalați Aspose.3D FOSS pentru TypeScript și să confirmați că funcționează corect înainte de a scrie primul script de procesare 3D.

Precondiții

Asigurați-vă că următoarele sunt instalate și pe sistemul dvs. PATH înainte de a continua:

InstrumentMinimNote
Node.js18 LTS20 or 22 LTS recommended
npm7Inclus cu Node.js
TypeScript5.0Instalați prin npm install -D typescript

Pentru a verifica versiunile:

node --version   # v18.x.x or later
npm --version    # 7.x or later
npx tsc --version  # Version 5.x.x

Pasul 1: Creați un proiect (dacă este necesar)

Dacă adăugați Aspose.3D la un proiect TypeScript existent, săriți peste acest pas și treceți direct la Pasul 2.

Pentru un proiect nou:

mkdir my-3d-project && cd my-3d-project
npm init -y
npm install -D typescript ts-node @types/node

Pasul 2: Instalați @aspose/3d

npm install @aspose/3d

Aceasta instalează pachetul și dependența sa tranzitivă unică, xmldom, automat. Nu sunt necesare pachete suplimentare de sistem, module native sau compilatoare. Instalarea este finalizată când @aspose/3d apare în package.json sub dependencies.

Verificați instalarea:

ls node_modules/@aspose/3d

Ar trebui să vedeți directorul pachetului cu package.json, fișiere de definiție de tip (.d.ts), și JavaScript compilat.

Pasul 3: Configurați TypeScript

Adăugați sau actualizați tsconfig.json în rădăcina proiectului dvs. cu următoarele setări. Acestea sunt necesare pentru compatibilitate completă cu definițiile de tip ale bibliotecii și cu ieșirea CommonJS:

{
  "compilerOptions": {
    "target": "ES2020",
    "module": "commonjs",
    "moduleResolution": "node",
    "esModuleInterop": true,
    "strict": true,
    "outDir": "dist",
    "rootDir": "src"
  },
  "include": ["src/**/*.ts"],
  "exclude": ["node_modules", "dist"]
}

Setări cheie și de ce sunt importante:

SetareValoareDe ce
targetES2020Activează chaining opțional, coalescență nullish și alte caracteristici ES2020 utilizate intern
modulecommonjsBiblioteca furnizează ieșire CommonJS; trebuie să se potrivească
moduleResolutionnodeNecesar pentru rezolvarea corectă a the @aspose/3d importuri sub-cale
esModuleInteroptruePermite importuri implicite din module CommonJS fără soluții de ocolire a spațiului de nume
stricttrueBiblioteca este scrisă cu noImplicitAny și strictNullChecks; păstrează aceasta activă

Pasul 4: Verificați instalarea

Creează src/verify.ts cu următorul test minimal de import:

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);

Compilați și rulați:

npx tsc
node dist/verify.js

Ieșire așteptată:

Aspose.3D FOSS for TypeScript is installed correctly.
rootNode name:

Numele nodului rădăcină este un șir gol în mod implicit — scene.rootNode este creat fără argument de nume.

Dacă preferi să sari peste pasul de compilare în timpul dezvoltării, rulează direct cu ts-node:

npx ts-node src/verify.ts

Pasul 5: Pornire rapidă: Încarcă o scenă și afișează informațiile nodului

Scriptul de mai jos încarcă un fișier 3D și afișează numele și tipul entității fiecărui nod din scenă. Funcționează cu orice format suportat: OBJ, glTF, GLB, STL, 3MF, FBX sau 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);

Salvează asta ca src/quickstart.ts și rulează-l:

npx ts-node src/quickstart.ts

Pentru un fișier OBJ cu un singur mesh numit Cube, ieșirea va arăta astfel:

Scene loaded. Node hierarchy:
 [(no entity)]
  Cube [Mesh]

Nodul rădăcină are un nume gol (afișat ca un prefix gol). Nodurile copil își moștenesc numele din fișierul încărcat.

Note privind dependențele

Aspose.3D FOSS pentru TypeScript are exact o dependență la runtime:

PachetScopInstalat automat
xmldomAnaliză XML pentru suportul formatelor COLLADA (DAE) și 3MFDa, prin npm install @aspose/3d

Nu trebuie să instalați xmldom manual. Va apărea în node_modules după comanda principală de instalare. Nu există addon-uri native (.node fișiere) și nu sunt necesare biblioteci de sistem.

Pași următori

Acum că biblioteca este instalată și verificată:

 Română