Light — Aspose.3D FOSS for .NET
النطاق: Aspose.ThreeD.Entities
Methods
Methods Light الفئة تمثل مصدر ضوء مرتبط بعقدة المشهد. إنها تمتد Entity وتدعم أربعة أنواع من الضوء: directional, point, spot, و ambient. يتم وضع الضوء في المشهد بإنشاء عقدة فرعية وإرفاق الـ Light entity إلى ذلك.
using Aspose.ThreeD;
using Aspose.ThreeD.Entities;
using Aspose.ThreeD.Utilities;
var scene = new Scene();
// Add a point light to the scene
var light = new Light(LightType.POINT, "SunLight");
light.Color = new Vector3(1.0f, 0.95f, 0.8f);
light.Intensity = 2.0f;
light.Range = 10.0f;
scene.RootNode.CreateChildNode("sun", light);Methods
| Methods | Methods |
|---|---|
Light() | ينشئ point light بالاسم الافتراضي "Light", لون أبيض، intensity 1.0, range 1.0 |
Light(LightType type) | ينشئ light من النوع المحدد بالاسم الافتراضي "Light" |
Light(LightType type, string name) | ينشئ ضوءًا مسمىً من النوع المعطى |
Methods
| Methods | Methods | Methods | Methods |
|---|---|---|---|
Type | LightType | احصل | نوع الضوء (POINT, SPOT, DIRECTIONAL, أو AMBIENT). يتم تعيينه عند الإنشاء؛ للقراءة فقط بعد ذلك. |
Color | Vector3 | احصل/عيّن | لون RGB للضوء. الافتراضي: Vector3.One (أبيض) |
Intensity | float | احصل/عيّن | مضاعف السطوع. الافتراضي: 1.0 |
Range | float | get/set | الحد الأقصى للمسافة التي يؤثر فيها الضوء النقطي والضوء الكشاف. الافتراضي: 1.0 |
Methods
| Methods | نوع الإرجاع | Methods |
|---|---|---|
GetBoundingBox() | BoundingBox | يرجع صندوق حدود فارغ (الأضواء ليس لها امتداد هندسي) |
LightType
LightType هي فئة value-type مع أربع حالات ثابتة عامة:
| Methods | Methods |
|---|---|
LightType.POINT | يبث الضوء بالتساوي في جميع الاتجاهات من نقطة في الفضاء |
LightType.SPOT | يبث مخروطًا من الضوء في الاتجاه الذي يواجهه العقدة |
LightType.DIRECTIONAL | يبث أشعة ضوء موازية كما لو كانت من مصدر بعيد إلى ما لا نهاية |
LightType.AMBIENT | يضيف إضاءة محيطة موحدة؛ لا يتم استخدام المدى والاتجاه |
LightType له خاصية واحدة:
| Methods | Methods | Methods | Methods |
|---|---|---|---|
Name | string | احصل | اسم العرض لنوع الضوء ("Point", "Spot", "Directional", "Ambient") |
Methods
أضف إضاءة اتجاهية وإضاءة نقطية إلى المشهد واحفظه كملف FBX:
using Aspose.ThreeD;
using Aspose.ThreeD.Entities;
using Aspose.ThreeD.Utilities;
var scene = new Scene();
// Directional light — positioned and oriented via the node Transform
var dirLight = new Light(LightType.DIRECTIONAL, "Sun");
dirLight.Color = new Vector3(1.0f, 1.0f, 0.9f);
dirLight.Intensity = 1.5f;
scene.RootNode.CreateChildNode("dirLight", dirLight);
// Point light with limited range
var pointLight = new Light(LightType.POINT, "Lamp");
pointLight.Color = new Vector3(1.0f, 0.6f, 0.3f);
pointLight.Intensity = 3.0f;
pointLight.Range = 5.0f;
scene.RootNode.CreateChildNode("lamp", pointLight);
scene.Save("lit_scene.fbx");