Aspose.3D FOSS for TypeScript
مرجع API برای @aspose/3d نسخه 24.12.0. نصب از طریق:
npm install @aspose/3dمحیط اجرا: Node.js 18, 20, 22+ · زبان: TypeScript 5.0+ / JavaScript (CommonJS) · مجوز: MIT
گراف صحنه اصلی
ImageRenderOptions
کانتینر ریشه برای یک صحنه 3D. فراخوانی scene.open() یا scene.openFromBuffer() برای بارگذاری یک فایل، و scene.save() برای نوشتن خروجی. در دسترس میگذارد scene.rootNode به عنوان نقطه ورودی به سلسلهمراتب گرهها.
ImageRenderOptions
یک گره نامدار در درخت صحنه. یک … را نگه میدارد Transform,، یک اختیاری entity (mesh، دوربین، نور، یا دیگر SceneObject)، و صفر یا بیشتر گرههای فرزند قابل دسترسی از طریق childNodes.
ImageRenderOptions
کلاس پایه برای تمام اشیائی که میتوانند به یک Node به عنوان موجودیت اصلی آن. زیرکلاس شده توسط Mesh, Camera, Light, و دیگران.
SceneObject
پایهٔ انتزاعی برای اشیای نامدار که به یک صحنه تعلق دارند. فراهم میکند name دنبالکردن ویژگی و عضویت در صحنه که بین گرهها، موجودیتها و اشیای سطح دارایی به اشتراک گذاشته شده است.
A3DObject
کلاس پایهٔ ریشه برای تمام اشیای Aspose.3D. فراهم میکند سیستم ویژگی (getProperty, setProperty) و name فیلد به ارثبرده شده توسط هر کلاس عمومی.
هندسه و مش
ImageRenderOptions
نمایش یک مش چندضلعی. شامل یک controlPoints آرایهای از Vector4 رئوس و تعاریف چندضلعی ایجاد شده از طریق createPolygon(). فراخوانی triangulate() برای تبدیل تمام چندضلعیها به مثلثها قبل از خروجیگیری.
ImageRenderOptions
کلاس پایه برای تمام انواع هندسه. نگهداری میکند controlPoints و مجموعهای از عناصر راس (نرمالها، UVها، رنگها) که به هندسه متصل هستند.
VertexElement
کلاس پایه برای کانالهای ویژگی به ازای هر راس که به یک Geometry.زیرکلاسها آرایههای دادهای با نوع مشخص را حمل میکنند و mappingMode / referenceMode متادیتا.
VertexElementNormal
یک VertexElement زیرکلاسی که نرمالهای سطح را ذخیره میکند. دادهها بهصورت داخلی بهعنوان FVector4[] (ارثبرده از VertexElementFVector). مورد نیاز اکثر رندرها برای نورپردازی صحیح.
VertexElementUV
یک VertexElement زیرکلاسی که مختصات بافت دو‑بعدی را ذخیره میکند. یک مش واحد میتواند مجموعههای UV متعددی برای لایههای بافت مختلف داشته باشد.
VertexElementVertexColor
A VertexElement زیرکلاسی که مقادیر رنگ RGBA را به ازای هر راس ذخیره میکند.
VertexElementType
فهرست انواع کانالهای ویژگی که یک VertexElement میتواند نمایان کند (مثلاً،)., NORMAL, UV, VERTEX_COLOR, TANGENT, BINORMAL).
MappingMode
شمارشی که کنترل میکند دادههای عنصر چگونه بر روی هندسه نگاشت میشوند: CONTROL_POINT, POLYGON_VERTEX, POLYGON, EDGE, یا ALL_SAME.
ReferenceMode
شمارشی که کنترل میکند ایندکسهای عنصر چگونه به دادهها ارجاع میدهند: DIRECT (یک به یک) یا INDEX_TO_DIRECT (از طریق یک آرایه ایندکس).
TextureMapping
فهرستبرداری از معانی کانال بافت: DIFFUSE, SPECULAR, NORMAL, EMISSIVE, BUMP, و موارد دیگر.
تبدیل و فضایی
ImageRenderOptions
موقعیت محلی را نگه میدارد (translation), چرخش (rotation به عنوان Quaternion), و مقیاس (scaling) از یک Node. تغییرات اینجا بر گره و تمام فرزندان آن تأثیر میگذارد.
GlobalTransform
نمایش فقط-خواندنی از تبدیل فضای جهانی یک گره، که با جمعآوری تمام اجداد محاسبه میشود Transform مقادیر. دسترسی از طریق node.globalTransform.
BoundingBox
یک جعبه محدودکننده هممحور به محور تعریفشده توسط یک minimum و maximum Vector3 گوشه. برای توصیف گستره فضایی یک مش یا صحنه استفاده میشود.
ImageRenderOptions
ماتریال، LambertMaterial، PhongMaterial، PbrMaterial
Material کلاس پایهٔ انتزاعی برای تمام انواع مواد است. سه پیادهسازی ملموس در دسترس هستند:
- LambertMaterial — فقط پخشکننده با کانالهای رنگ محیطی، پخشکننده و تابشی. مناسب برای سطوح غیر براق.
- PhongMaterial — گسترش میدهد
LambertMaterialبا ویژگیهای رنگ specular و درخشندگی برای سایهزنی Phong. - PbrMaterial — ماده رندرینگ مبتنی بر فیزیک با کانالهای metallic، roughness، base-color، و normal‑map. بهصورت مستقیم به مدل ماده glTF 2.0 PBR نگاشت میشود.
دوربین و نورپردازی
ImageRenderOptions
یک موجودیت گره نقطهنظر با نوع پروجکشن، زاویه دید، فواصل برش نزدیک/دور، و ویژگیهای نسبت عرض به ارتفاع.
ImageRenderOptions
یک موجودیت گره منبع نور. نوع توسط LightType شمارش.
LightType
فهرست انواع نورهای پشتیبانیشده: POINT, DIRECTIONAL, SPOT, AREA, VOLUME.
ProjectionType
فهرست حالتهای پروجکشن دوربین: PERSPECTIVE و ORTHOGRAPHIC.
ابزارهای ریاضی
ImageRenderOptions
یک بردار نقطه شناور سهجزئیه با x, y, z فیلدها و متدهای ریاضی عمومی (dot, cross, normalize, minus, times). صادر شده از @aspose/3d/utilities.
ImageRenderOptions
یک بردار نقطه شناور چهار مؤلفهای با x, y, z, w فیلدها. به عنوان نوع ورودیها در Mesh.controlPoints.
ImageRenderOptions
یک بردار دو مؤلفهای با دقت دوگانه x و y فیلدها. برای مختصات بافت UV استفاده میشود.
FVector3
یک بردار فلوته تکدقت سهجزئیه فشرده که در آرایههای داده عنصر رأس برای نرمالها و تانژنتها استفاده میشود.
ImageRenderOptions
یک ماتریس تبدیل 4×4. از ترکیب، وارونسازی، ترانسپوز و تجزیه به مؤلفههای انتقال، چرخش و مقیاس پشتیبانی میکند. صادر شده از @aspose/3d/utilities.
ImageRenderOptions
یک کواترنیون واحد برای نمایش چرخشها بدون قفل گیمبال. فراهم میکند slerp() برای درونیابی صاف و تبدیل به/از زاویههای اویلر و Matrix4. صادر شده از @aspose/3d/utilities.
ImageRenderOptions
AnimationClip
یک مجموعهٔ نامگذاریشده و محدود به زمان از AnimationNode ردیفها. محفظهٔ اصلی برای دادههای انیمیشن کلید‑فریم که از فایلهای FBX یا COLLADA بارگذاری میشوند.
AnimationNode
یک ردیف انیمیشن نامگذاریشده که مسیر خاصی از ویژگی را روی یک شیء صحنه هدف میگیرد. شامل یک یا چند AnimationChannel شیءها.
AnimationChannel
یک کانال ویژگی انیمیشندار تک درون یک AnimationNode. یک … را نگه میدارد KeyframeSequence از جفتهای زمان/مقدار.
KeyFrame
یک نمونهٔ زمان/مقدار تک در یک KeyframeSequence. برچسب زمانی (بر حسب ثانیه)، مقدار، و اطلاعات تانژانت برای درونیابی را حمل میکند.
KeyframeSequence
یک فهرست مرتب از KeyFrame نمونهها برای یک کانال ویژگی، همراه با Interpolation و Extrapolation تنظیماتی که پخش را کنترل میکنند.
ImageRenderOptions
فهرست حالتهای درونیابی فریم کلیدی. اعضای شناختهشده شامل LINEAR و CONSTANT. اعضای اضافی مانند BEZIER ممکن است در دسترس باشد.
ImageRenderOptions
رفتار خارج از بازهٔ فریم کلیدی (قبل از اولین کلید و پس از آخرین کلید) را تعریف میکند. کنترلشده توسط ExtrapolationType.
StepMode
شمارشی که کنترل میکند درونیابی گامدار (ثابت) چگونه در مرزها اعمال میشود.
WeightedMode
شمارش برای مدیریت وزن تانژانت بزیه: NONE, OUT_WEIGHT, NEXT_IN_WEIGHT, یا BOTH.
ExtrapolationType
شمارش رفتارهای خارج از محدوده: CONSTANT, GRADIENT, CYCLE, CYCLE_RELATIVE, و OSCILLATE.
ورودی/خروجی فرمت
FileFormat
توصیفگر پایه برای یک فرمت فایل 3D. هر فرمت پشتیبانیشده یک تکنمونهٔ مشخص را از طریق getInstance().
ImageRenderOptions
کلاس پایه برای پیادهسازیهای import مخصوص فرمت. بهصورت مستقیم نمونهسازی نمیشود؛ بهصورت داخلی توسط scene.open().
ImageRenderOptions
کلاس پایه برای پیادهسازیهای export مخصوص فرمت. بهصورت مستقیم نمونهسازی نمیشود؛ بهصورت داخلی توسط scene.save().
LoadOptions
کلاس پایه برای اشیای گزینههای بارگذاری مخصوص فرمت. یک نمونه از کلاس فرعی را به scene.open() یا scene.openFromBuffer().
SaveOptions
کلاس پایه برای اشیای گزینههای ذخیرهسازی مخصوص فرمت. یک نمونه از کلاس فرعی را به scene.save().
IOService
رابط سرویس داخلی که ورودی/خروجی فایلسیستم و بافر را برای واردکنندهها و صادرکنندهها انتزاع میکند.
قالب OBJ
OBJ از هر دو عملیات واردات و صادرات پشتیبانی میکند. هنگام ذخیره به صورت OBJ، کتابخانه مواد (.mtl) بهصورت خودکار در کنار the .obj فایل.
ObjImporter
واردکننده داخلی که فایلهای Wavefront OBJ را میخواند، حل میکند .mtl کتابخانههای متریال، و یک را پر میکند Scene. بهصورت خودکار فراخوانی میشود وقتی ObjLoadOptions به scene.open().
ObjExporter
صادرکننده داخلی که فایلهای Wavefront OBJ را مینویسد. یک همراه .mtl کتابخانه مواد بهصورت خودکار نوشته میشود. زمانی که scene.save() به هدف یک .obj مسیر.
ObjLoadOptions
گزینههای بارگذاری برای فایلهای OBJ. ویژگیهای کلیدی: enableMaterials (بولی, پیشفرض true), flipCoordinateSystem (بولی), normalizeNormal (بولی, پیشفرض true), scale (عدد). ببینید گزینههای بارگذاری و ذخیرهسازی فرمت برای جزئیات کامل.
ObjSaveOptions
گزینههای ذخیره برای خروجی OBJ. به scene.save() برای کنترل رفتار خروجی OBJ. ببینید گزینههای بارگذاری و ذخیرهسازی فرمت برای جزئیات کامل.
ObjFormat
توصیفگر فرمت تکنمونه برای OBJ. هر دو canImport و canExport هستند true.
فرمت glTF
GltfImporter
خواندن glTF 2.0 JSON (.gltf) و باینری GLB (.glb) فایلها. ارجاعات بافر توکار و خارجی، مواد PBR، اسکینها و کلیپهای انیمیشن را مدیریت میکند.
GltfExporter
نوشتن خروجی glTF 2.0. وقتی GltfSaveOptions.binaryMode است true, یک GLB خود-مستقل تولید میکند؛ در غیر این صورت یک JSON مینویسد .gltf با یک همراه .bin بافر.
GltfLoadOptions
گزینههای بارگذاری برای فایلهای glTF/GLB. حلوفصل بافر و رفتار بارگذاری بافتها را کنترل میکند.
GltfSaveOptions
گزینههای ذخیره برای خروجی glTF/GLB. ویژگیهای قابل توجه: binaryMode (boolean،, true → GLB، پیشفرض false), flipTexCoordV (boolean، محور عمودی UV را وارونه میکند، پیشفرض true). ببینید گزینههای بارگذاری و ذخیرهسازی فرمت برای جزئیات کامل.
GltfFormat
توصیفگر فرمت singleton. دریافت کنید از GltfFormat.getInstance() و به آن پاس دهید scene.save() به عنوان آرگومان دوم.
فرمت STL
StlImporter
هر دو فایل ASCII و باینری STL را میخواند به یک Scene که شامل یک Mesh موجودیت.
StlExporter
فایل STL باینری را مینویسد. خروجی شامل مش مثلثی شده از صحنه است؛ چندضلعیهای غیرمثلث بهصورت خودکار مثلثی میشوند.
StlLoadOptions
گزینههای بارگذاری برای STL. کنترل میکند که آیا واردکننده در طول وارد کردن نرمالها را معکوس میکند یا نه.
StlSaveOptions
گزینههای ذخیرهسازی برای خروجی STL. ویژگی کلیدی: binaryMode (بولی، پیشفرض false). کنترل میکند که خروجی به صورت STL ASCII یا باینری باشد. ببینید گزینههای بارگذاری و ذخیرهسازی فرمت برای جزئیات کامل.
StlFormat
توصیفگر فرمت بهصورت تکنمونه. دریافت از StlFormat.getInstance().
3MF Format
ThreeMfImporter
آرشیوهای Open Packaging Convention 3MF را میخواند و یک Scene با اشیای مش، رنگها و ویژگیهای مواد.
ThreeMfExporter
یک آرشیو 3MF معتبر را از صحنهٔ فعلی مینویسد. برای جریانهای کاری چاپ سهبعدی مناسب است.
ThreeMfLoadOptions
گزینههای بارگذاری برای فایلهای 3MF.
ThreeMfSaveOptions
گزینههای ذخیره برای خروجی 3MF.
ThreeMfFormat
توصیفگر فرمت بهصورت تکنمونه. دریافت از ThreeMfFormat.getInstance().
فرمت FBX
FbxImporter
فایلهای باینری و ASCII FBX را میخواند، شامل هندسه، مواد، اسکلتها، شکلهای ترکیبی و کلیپهای انیمیشن.
FbxExporter
فایلهای FBX را از صحنه فعلی مینویسد. خروجی باینری و ASCII FBX هر دو بسته به گزینهها پشتیبانی میشوند.
FbxLoadOptions
گزینههای بارگذاری برای FBX. کنترل میکند که آیا انیمیشن، پوستها و شکلهای ترکیبی وارد شوند یا نه.
FbxSaveOptions
گزینههای ذخیره برای خروجی FBX. ویژگی کلیدی: embedTextures (بولی، پیشفرض false). ببینید گزینههای بارگذاری و ذخیرهسازی فرمت برای جزئیات کامل.
FbxFormat
توصیفگر فرمت singleton. دریافت کنید از FbxFormat.getInstance().
فرمت COLLADA
واردات و صادرات COLLADA نیاز دارند به xmldom peer dependency، که بهصورت خودکار همراه با نصب میشود @aspose/3d.
ColladaImporter
COLLADA را میخواند (.dae) فایلهای XML را با استفاده از xmldom. هندسه، مواد، دوربینها، نورها و انیمیشن را مدیریت میکند.
ColladaExporter
خروجی XML COLLADA را از صحنهٔ فعلی مینویسد. برای تبادل با ابزارهای DCC (Blender، Maya و غیره) مناسب است.
ColladaFormat
توصیفگر فرمت singleton. دریافت کنید از ColladaFormat.getInstance().
سیستم ویژگیها
ImageRenderOptions
یک جفت نام/مقدار تایپشده که میتواند به هر A3DObject. انواع مقدار اسکالر و برداری را پشتیبانی میکند.
PropertyCollection
یک محفظهٔ مرتب از Property اشیاء. قابل دسترسی بر روی هر A3DObject از طریق properties دسترسگیر.
CustomObject
یک بستهٔ ویژگی آزاد که گسترش مییابد A3DObject. برای ذخیرهٔ فرادادهٔ دلخواه که به کلاس استانداردی نگاشته نمیشود استفاده میشود.
اطلاعات دارایی
AssetInfo
حاوی فرادادههای سطح صحنهای است که از فایل منبع بارگذاری میشود: نویسنده، نام برنامه، تاریخ ایجاد، مقیاس واحد، و اطلاعات محورهای مختصات.
ImageRenderOptions
گزینههایی که نحوهٔ حل و کدگذاری بافتها و تصاویر را هنگام ذخیرهسازی به فرمتهایی که دادهٔ تصویر را درونریزی میکنند، کنترل میکنند (مثلاً GLB با binaryMode: true).
همچنین ببینید
- پایگاه دانش: راهنماییهای گامبهگام
- بررسی دقیق API
- کلاس Scene
- کلاس Node
- کلاس Mesh
- کلاس Transform
- کلاس GlobalTransform
- کلاس Camera
- کلاس Light
- کلاس Vector3
- کلاس Quaternion
- کلاس Matrix4
- کلاس BoundingBox
- ماتریال، LambertMaterial، PhongMaterial، PbrMaterial
- گزینههای بارگذاری و ذخیرهسازی فرمت
- مرجع Vector2، Vector4
- مرجع Property، PropertyCollection، AssetInfo
- مرجع A3DObject، SceneObject، Entity
- مرجع VertexElement، VertexElementNormal، VertexElementUV
- مرجع Enumerations
- npm: @aspose/3d
- GitHub: aspose-3d-node