อ้างอิง API สำหรับ aspose-3d-foss 26.1.0 (Java 21+, ใบอนุญาต MIT).
คลาสทั้งหมดอยู่ใน com.aspose.threed แพ็กเกจราก. การนำเข้ารากคือ:
โครงสร้างแพ็กเกจ: คลาสสาธารณะเกือบทั้งหมดอยู่ใน com.aspose.threed. ซับแพ็กเกจเดียวที่มักใช้คือ com.aspose.threed.shading (สำหรับ PbrMaterial). ส่วน com.aspose.threed.formats ซับแพ็กเกจนี้มีตัวนำเข้า/ส่งออกภายในและโดยปกติจะไม่ถูกนำเข้าโดยตรง.
Java รูปแบบการตั้งชื่อ: คุณสมบัติทั้งหมดใช้เมธอด getter/setter ตัวอย่างเช่น ใช้ node.getTransform() แทนที่ node.transform, และ transform.setTranslation(...) แทนที่ transform.translation = .... โปรดทราบว่า Vector3, Vector4, Quaternion, Matrix4, และ FVector ประเภทใช้ ฟิลด์สาธารณะ (v.x, v.y, v.z) แทนการใช้ getter สำหรับการเข้าถึงคอมโพเนนต์.
กราฟฉากหลัก
| Example | Example |
|---|
Scene | คอนเทนเนอร์ระดับบนสุดสำหรับข้อมูลฉาก 3D ทั้งหมด. เก็บโหนดราก, เมตาดาต้าแอสเซ็ต, และคลิปแอนิเมชัน. เปิดเผย fromFile(), open(), และ save() เป็นจุดเข้าหลักของ I/O. |
Node | โหนดที่มีชื่อในลำดับชั้นของฉาก มีรายการโหนดลูกและรายการของอ็อบเจกต์ที่แนบ Entity อ็อบเจกต์เช่นเมช, กล้อง, และไฟส่องสว่าง บรรทุกข้อมูลท้องถิ่น Transform. |
Entity | คลาสฐานเชิงนามธรรมสำหรับอ็อบเจกต์ทั้งหมดที่สามารถแนบเข้ากับ Node. ให้ชื่อและเอกลักษณ์ แต่ไม่มีรูปทรงเรขาคณิตของตนเอง. |
SceneObject | คลาสฐานที่ใช้ร่วมกันโดย Node และ Entity. ให้ส่วนต่อประสานการรวบรวมคุณสมบัติที่ใช้สำหรับเมตาดาต้ากำหนดโดยผู้ใช้. |
A3DObject | คลาสฐานรากสำหรับอ็อบเจกต์ที่จัดการโดย Aspose.3D ทั้งหมด เปิดเผยคุณสมบัติชื่อและ Properties คอลเลกชัน. |
INamedObject | ส่วนต่อประสานที่รับประกันว่า getName() เมธอด จะถูกนำไปใช้โดย Node, Entity, และประเภทตัวบรรยายที่เฉพาะเจาะจงต่อรูปแบบหลายประเภท. |
เรขาคณิตและเมช
| Example | Example |
|---|
Mesh | เอนทิตีเมชหลายเหลี่ยม. เก็บจุดควบคุม (ตำแหน่งเวอร์เท็กซ์เป็น Vector4), รายการหน้าตัวหลายเหลี่ยม (รายการของดัชนีจุดควบคุม), และชั้นองค์ประกอบเวอร์เท็กซ์ (นอร์มัล, UV, สีของเวอร์เท็กซ์). |
Geometry | ฐานเชิงนามธรรมสำหรับประเภทเรขาคณิตแบบเมช. กำหนดอาเรย์จุดควบคุมและคอลเลกชันของ VertexElement ชั้น. Mesh สืบทอดจาก Geometry. |
VertexElement | ฐานเชิงนามธรรมสำหรับชั้นข้อมูลที่แนบกับเรขาคณิต (นอร์มัล, UV, สี ฯลฯ). มี getMappingMode(), getReferenceMode(), และรายการข้อมูล. |
VertexElementNormal | เก็บเวกเตอร์นอร์มัลหนึ่งตัวต่อเวอร์เท็กซ์หรือต่อมุมของหลายเหลี่ยม, ขึ้นอยู่กับโหมดการแมป. ค่าข้อมูลคือ Vector4 อินสแตนซ์ที่มี w ไม่ได้ใช้. |
VertexElementUV | เก็บคู่พิกัดเทกซ์เจอร์ (Vector2) ต่อเวอร์เท็กซ์หรือต่อมุมของหลายเหลี่ยม. เมชอาจมีหลายชั้น UV สำหรับช่องเทกซ์เจอร์ที่แตกต่างกัน. |
VertexElementVertexColor | จัดเก็บข้อมูลสี RGBA ต่อเวอร์เท็กซ์หรือต่อมุมเป็น Vector4 (r, g, b, a ในช่วง 0–1). |
VertexElementType | Enumeration ระบุบทบาทเชิงความหมายของชั้นองค์ประกอบเวอร์เท็กซ์: NORMAL, UV, VERTEX_COLOR, และอื่น ๆ. ส่งค่าต่าง ๆ ไปยัง Mesh.getElement(). |
MappingMode | Enumeration ควบคุมว่า primitive ใดที่ค่าขององค์ประกอบเวอร์เท็กซ์จะถูกแมปไปยัง: CONTROL_POINT, POLYGON_VERTEX, หรือ POLYGON. |
ReferenceMode | Enumeration ควบคุมวิธีการทำดัชนีของค่า: DIRECT (หนึ่งค่าต่อ primitive การแมป) หรือ INDEX_TO_DIRECT (อาเรย์ค่าพร้อมอาเรย์ดัชนีแยกต่างหาก). |
การแปลงและเชิงพื้นที่
| Example | Example |
|---|
Transform | การแปลงเชิงพื้นที่ท้องถิ่นที่แนบกับ Node. ให้ translation, rotation (เป็น Quaternion), และส่วนประกอบ scale, พร้อมเมธอดสะดวกสำหรับมุม Euler. |
GlobalTransform | มุมมองแบบอ่านอย่างเดียวของการแปลงตำแหน่งในอวกาศของโหนดหลังจากรวมการแปลงของโหนดบรรพบุรุษทั้งหมด เข้าถึงได้ผ่าน node.getGlobalTransform(). |
AssetInfo | บล็อกเมตาดาต้าที่แนบกับ Scene. เก็บชื่อแอปพลิเคชันที่ใช้สร้าง, ชื่อหน่วย, ตัวคูณสเกลของหน่วย, คำจำกัดความของแกนระบบพิกัด, และเวลาสร้าง/แก้ไข. |
วัสดุและการแรเงา
| Example | Example |
|---|
Material | คลาสฐานแบบนามธรรมสำหรับประเภทวัสดุทั้งหมด ให้ชื่อและคอลเลกชันของคุณสมบัติสำหรับพารามิเตอร์เชิงตัวเลขและสี. |
PbrMaterial | วัสดุ Physically Based Rendering (PBR) เก็บค่า albedo, ตัวคูณโลหะ, ตัวคูณความหยาบ, สีเรืองแสง, ความโปร่งใส, และเทกเจอร์ที่เกี่ยวข้อง ใช้โดย glTF 2.0 และรูปแบบอื่นที่รองรับ PBR การนำเข้า: com.aspose.threed.shading.PbrMaterial. |
Example
| Example | Example |
|---|
Camera | เอนทิตีกล้อง สืบทอดจาก Entity. ไม่มีคุณสมบัติเฉพาะรูปแบบที่เปิดเผยในรุ่น Java FOSS นอกเหนือจากชื่อและคอลเลกชันคุณสมบัติที่สืบทอดมา แนบกับ Node เพื่อกำหนดการแปลงมุมมอง. |
หมายเหตุ: Example Light คลาสนี้ไม่พร้อมใช้งานในรุ่น Java ของ Aspose.3D FOSS ข้อมูลแสงของฉากจากไฟล์ที่นำเข้าเก็บเป็นแบบทั่วไป Entity อ็อบเจกต์.
ยูทิลิตี้คณิตศาสตร์
| Example | Example |
|---|
Vector2 | เวกเตอร์ 2 ส่วนแบบ double-precision (x, y). ใช้สำหรับพิกัดเทกเจอร์ UV. |
Vector3 | เวกเตอร์ 3 ส่วนประกอบแบบ Double-precision (x, y, z). ใช้สำหรับตำแหน่ง, ทิศทาง, และสเกล. |
Vector4 | เวกเตอร์ 4 ส่วนประกอบแบบ Double-precision (x, y, z, w). ใช้สำหรับจุดควบคุม (ตำแหน่งเชิงเนื้อเดียว) และข้อมูลปกติ. |
FVector3 | เวกเตอร์ float 3 ส่วนประกอบแบบ Single-precision. ปรากฏในอาเรย์ข้อมูลองค์ประกอบเวอร์เท็กซ์สำหรับนอร์มอลและแทนเจนท์. |
FVector4 | เวกเตอร์ float 4 ส่วนประกอบแบบ Single-precision. ประเภทการจัดเก็บของ VertexElementFVector ข้อมูล. |
Quaternion | ควอเทอร์เนียนหน่วยสำหรับแสดงการหมุน (w, x, y, z). ใช้โดย Transform.getRotation(). |
Matrix4 | 4x4 double-precision transformation matrix. Used for world/local transform computations and can be constructed from TRS decompositions. |
BoundingBox | กล่องขอบเขตที่จัดแนวแกนที่กำหนดโดย getMinimum() และ getMaximum() Vector3 มุม. ใช้สำหรับการสืบค้นเชิงพื้นที่และตัวช่วยการตัดเฟรสตัม. |
Example
| Example | Example |
|---|
AnimationClip | คอนเทนเนอร์ที่ตั้งชื่อสำหรับช่วงแอนิเมชัน A Scene อาจบรรจุคลิปหลายคลิป (เช่น “Walk”, “Run”). โครงสร้างการประกาศ — ข้อมูลคีย์เฟรมและการเล่นยังไม่ได้ทำการ implement. |
การอ่าน/เขียนรูปแบบ
| Example | Example |
|---|
Scene.fromFile(path) | เมธอดแบบสแตติก เปิดไฟล์ที่ path, ตรวจจับรูปแบบจากส่วนขยาย และคืนค่าอ็อบเจกต์ที่เติมข้อมูลแล้ว Scene. จะโยนข้อผิดพลาดเมื่อไม่พบไฟล์หรือรูปแบบไม่รองรับ. |
Scene.open(path, options) | เมธอดอินสแตนซ์ เปิดไฟล์เข้าสู่ Scene อินสแตนซ์, โดยอาจใช้รูปแบบเฉพาะ LoadOptions ซับคลาส. |
Scene.save(path, options) | เมธอดอินสแตนซ์. ทำการซีเรียลไลซ์ฉากเป็น path โดยใช้รูปแบบที่สรุปจากส่วนขยาย, โดยอาจใช้รูปแบบที่เฉพาะเจาะจงสำหรับรูปแบบนั้น SaveOptions คลาสย่อย. |
FileFormat | ทะเบียนของรูปแบบไฟล์ที่รองรับ. มีรายการเช่น FileFormat.WAVEFRONT_OBJ(), FileFormat.GLTF2(), FileFormat.FBX7400ASCII(). |
IOService | การแยกนามธรรม I/O ภายในที่ใช้โดยตัวนำเข้าและส่งออกรูปแบบ. โดยทั่วไปไม่ได้ใช้โดยโค้ดแอปพลิเคชันโดยตรง. |
LoadOptions | คลาสฐานสำหรับอ็อบเจ็กต์ตัวเลือกการโหลดที่เฉพาะเจาะจงต่อรูปแบบทั้งหมด. ถูกสืบทอดโดย ObjLoadOptions, StlLoadOptions, GltfLoadOptions, FbxLoadOptions. |
SaveOptions | คลาสฐานสำหรับอ็อบเจ็กต์ตัวเลือกการบันทึกที่เฉพาะเจาะจงต่อรูปแบบทั้งหมด. ถูกสืบทอดโดย ObjSaveOptions, StlSaveOptions, GltfSaveOptions. |
รูปแบบ OBJ
| Example | Example |
|---|
ObjImporter | คลาสนำเข้าภายในที่ทำการพาร์สไฟล์ Wavefront OBJ และ MTL. ถูกเรียกโดยอัตโนมัติโดย Scene.fromFile() สำหรับ .obj ส่วนขยาย. |
ObjLoadOptions | ตัวเลือกการโหลดสำหรับไฟล์ Wavefront OBJ. คุณสมบัติหลัก: setFlipCoordinateSystem(), setScale(), setEnableMaterials(), setNormalizeNormal(). |
ObjSaveOptions | ตัวเลือกการบันทึกสำหรับผลลัพธ์ Wavefront OBJ. ควบคุมนอร์มัล, UV, การอ้างอิงวัสดุ, และโหมด point‑cloud. |
ObjFormat | ตัวอธิบายรูปแบบสำหรับ Wavefront OBJ. เข้าถึงได้เป็น FileFormat.WAVEFRONT_OBJ(). |
รูปแบบ STL
| Example | Example |
|---|
StlImporter | ตัวนำเข้าภายในที่อ่านไฟล์ STL ทั้งแบบไบนารีและ ASCII. ถูกเลือกโดยอัตโนมัติตามส่วนขยายไฟล์. |
StlExporter | ตัวส่งออกภายในที่เขียนไฟล์ STL. |
StlLoadOptions | ตัวเลือกการโหลดสำหรับไฟล์ STL. รองรับ setFlipCoordinateSystem(), setRecalculateNormal(), และ setContentType(). |
StlSaveOptions | ตัวเลือกการบันทึกสำหรับผลลัพธ์ STL. ควบคุม setFlipCoordinateSystem(), setAxisSystem(), และ setContentType(). |
StlFormat | ตัวอธิบายรูปแบบสำหรับ STL. |
รูปแบบ glTF
| Example | Example |
|---|
GltfLoadOptions | ตัวเลือกการโหลดสำหรับไฟล์ glTF 2.0 และ GLB. คุณสมบัติหลัก: setFlipCoordinateSystem(), setPrettyPrint(). |
GltfSaveOptions | ตัวเลือกการบันทึกสำหรับผลลัพธ์ glTF 2.0 และ GLB. ใช้ setContentType(FileContentType.BINARY) เพื่อสร้างที่เป็นอิสระ .glb แพ็กเกจ. |
GltfFormat | คำอธิบายรูปแบบสำหรับ glTF 2.0 / GLB. เข้าถึงได้เป็น FileFormat.GLTF2(). |
รูปแบบ FBX
FBX รองรับสำหรับ นำเข้าเท่านั้น. การส่งออกเป็น FBX ไม่พร้อมใช้งานในรุ่น Java FOSS edition.
| Example | Example |
|---|
FbxLoadOptions | ตัวเลือกการโหลดสำหรับไฟล์ FBX. คุณสมบัติหลัก: setFlipCoordinateSystem(). |
FbxFormat | คำอธิบายรูปแบบสำหรับ FBX. เข้าถึงได้เป็น FileFormat.FBX7400ASCII(). |
Example
| Example | Example |
|---|
Axis | ระบุดัชนีแกนพิกัด: X_AXIS, Y_AXIS, Z_AXIS. ใช้ในตัวเลือกการแมประบบพิกัดใหม่. |
CoordinateSystem | ระบุแนวทางการกำหนด handedness: RIGHT_HANDED หรือ LEFT_HANDED. |
TextureMapping | ระบุวิธีการแมปพื้นผิวไปยังเรขาคณิต: DIFFUSE, SPECULAR, EMISSIVE, NORMAL, AMBIENT, เป็นต้น. |
BooleanOperation | ประเภทการดำเนินการบูลีน CSG: UNION, DIFFERENCE, INTERSECTION. |
ระบบคุณสมบัติ
| Example | Example |
|---|
Property | คุณสมบัติที่มีชื่อและกำหนดประเภทเดียวบน A3DObject. เก็บชื่อคุณสมบัติ, ตัวบ่งชี้ประเภท, และค่าปัจจุบัน. |
PropertyCollection | คอลเลกชันที่สามารถวนซ้ำของ Property อ็อบเจกต์ที่แนบกับ A3DObject. รองรับการค้นหาตามชื่อและการวนซ้ำผ่านคุณสมบัติที่กำหนดทั้งหมด. |
CustomObject | อ็อบเจกต์ที่มีน้ำหนักเบา A3DObject คลาสย่อยที่มีเพียงชื่อและค่าใดค่าหนึ่งที่กำหนดเอง PropertyCollection. ใช้สำหรับเก็บเมตาดาต้าที่ผู้ใช้กำหนดบนอ็อบเจกต์ของฉาก. |
ภาพและการเรนเดอร์
| Example | Example |
|---|
ImageRenderOptions | ตัวเลือกสำหรับการเรสเตอร์ไลเซชันด้วยซอฟต์แวร์เมื่อเรนเดอร์ฉากไปยังบัฟเฟอร์ภาพ. เก็บสีพื้นหลัง, ขนาดภาพ, และการอ้างอิงกล้อง. ฟีเจอร์นี้พร้อมใช้งานในการกำหนดค่าที่รองรับ. |
ดูเพิ่มเติม