Installatie
Deze gids behandelt alles wat je nodig hebt om Aspose.3D FOSS voor TypeScript te installeren en te bevestigen dat het correct werkt voordat je je eerste 3D-verwerkingsscript schrijft.
Vereisten
Zorg ervoor dat het volgende is geïnstalleerd en op uw PATH voordat u verdergaat:
| Tool | Minimum | Opmerkingen |
|---|---|---|
| Node.js | 18 LTS | 20 or 22 LTS recommended |
| npm | 7 | Meegeleverd met Node.js |
| TypeScript | 5.0 | Installeer via npm install -D typescript |
Om je versies te controleren:
node --version # v18.x.x or later
npm --version # 7.x or later
npx tsc --version # Version 5.x.xStap 1: Maak een project aan (indien nodig)
Als je Aspose.3D toevoegt aan een bestaand TypeScript-project, sla deze stap dan over en ga direct naar Stap 2.
Voor een nieuw project:
mkdir my-3d-project && cd my-3d-project
npm init -y
npm install -D typescript ts-node @types/nodeStap 2: Installeer @aspose/3d
npm install @aspose/3dDit installeert het pakket en zijn enige transitieve afhankelijkheid, xmldom, automatisch. Er zijn geen extra systeempakketten, native add-ons of compilers nodig. De installatie is voltooid wanneer @aspose/3d verschijnt in uw package.json onder dependencies.
Controleer de installatie:
ls node_modules/@aspose/3dU zou de pakketmap moeten zien met package.json, type-definitiebestanden (.d.ts), en gecompileerde JavaScript.
Stap 3: Configureer TypeScript
Voeg toe of werk bij tsconfig.json in de root van uw project met de volgende instellingen. Deze zijn vereist voor volledige compatibiliteit met de type-definities van de bibliotheek en CommonJS-uitvoer:
{
"compilerOptions": {
"target": "ES2020",
"module": "commonjs",
"moduleResolution": "node",
"esModuleInterop": true,
"strict": true,
"outDir": "dist",
"rootDir": "src"
},
"include": ["src/**/*.ts"],
"exclude": ["node_modules", "dist"]
}Belangrijke instellingen en waarom ze belangrijk zijn:
| Instelling | Waarde | Waarom |
|---|---|---|
target | ES2020 | Schakelt optionele chaining, nullish coalescing en andere ES2020-functies in die intern worden gebruikt |
module | commonjs | De bibliotheek levert CommonJS-output; moet overeenkomen |
moduleResolution | node | Vereist voor correcte resolutie van de @aspose/3d sub‑pad imports |
esModuleInterop | true | Stelt standaardimports van CommonJS-modules mogelijk zonder namespace‑workarounds |
strict | true | De bibliotheek is geschreven met noImplicitAny en strictNullChecks; houd dit aan |
Stap 4: Verifieer de installatie
Maak src/verify.ts met de volgende minimale importtest:
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);Compileer en voer uit:
npx tsc
node dist/verify.jsVerwachte output:
Aspose.3D FOSS for TypeScript is installed correctly.
rootNode name:De naam van de root‑node is standaard een lege string — scene.rootNode wordt aangemaakt zonder naam‑argument.
Als je de compileerstap tijdens ontwikkeling wilt overslaan, voer dan direct uit met ts-node:
npx ts-node src/verify.tsStap 5: Snelstart: Laad een scène en druk knoopinfo af
Het volgende script laadt een 3D‑bestand en drukt de naam en het entiteitstype van elke knoop in de scène af. Het werkt met elk ondersteund formaat: OBJ, glTF, GLB, STL, 3MF, FBX, of 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);Sla dit op als src/quickstart.ts en voer het uit:
npx ts-node src/quickstart.tsVoor een OBJ‑bestand met één mesh genaamd Cube, zal de output er als volgt uitzien:
Scene loaded. Node hierarchy:
[(no entity)]
Cube [Mesh]De rootnode heeft een lege naam (afgedrukt als een lege prefix). Kindknopen erven hun namen uit het geladen bestand.
Afhankelijkheidsopmerkingen
Aspose.3D FOSS for TypeScript heeft precies één runtime‑afhankelijkheid:
| Pakket | Doel | Automatisch geïnstalleerd |
|---|---|---|
xmldom | XML-parsing voor COLLADA (DAE) en 3MF-formaatondersteuning | Ja, via npm install @aspose/3d |
U hoeft niet te installeren xmldom handmatig. Het zal verschijnen in uw node_modules na het hoofdinstallatiecommando. Er zijn geen native add-ons (.node bestanden) en er zijn geen systeembibliotheken vereist.
Volgende stappen
Nu de bibliotheek is geïnstalleerd en geverifieerd:
- Lees de Developer Guide voor een volledige walkthrough van alle functiegebieden.
- Zie Features and Functionalities voor details over formatondersteuning, scene-graph patronen, materiaal- en animatie-API’s, en volledige TypeScript-codevoorbeelden.