
Aspose.3D for Python via .NET
Python API 3D Modelləri Yaratmaq, Redaktə Etmək və Çevirmək üçün
FBX, STL, Discreet3DS, Universal3D, Collada və daha çoxuna Çevirmə, Yaradılma, Redaktə və Emal üçün 3D Fayl Formatları və 3D Səhnələrin Yaradılması üçün Faydalı Python Kitabxanası.
Aspose.3D for Python via .NET nədir?
Aspose.3D for Python via .NET geniş və sabit bir kitabxanadır ki, proqramçılara 3D faylları və modelləri Python tətbiqləri daxilində 3D modelləşdirmə və render proqramları quraşdırılmadan işləməyə imkan verir. Bu kitabxana proqramçılara müxtəlif fayl formatlarında, o cümlədən FBX, 3DS, U3D, DAE, glTF, OBJ, STL, DRC, PDF, AMF, PLY və digərlərində 3D modelləri asanlıqla yaratmaq, oxumaq, render etmək, manipulyasiya etmək və çevirmək üçün tətbiqlər yaratmağa kömək edir. Kitabxana böyük və mürəkkəb 3D modellərdə belə 3D əməliyyatların səmərəli və sürətli yerinə yetirilməsini təmin etmək üçün müxtəlif texnikalardan istifadə edir.
Aspose.3D for Python via .NET bir neçə vacib xüsusiyyəti özündə birləşdirir ki, 3D animasiyalarla işləmək üçün, məsələn, 3D yaratmaq və 3D animasiyaları idarə etmək, əsas kadr (key‑frame) animasiyaları, skelet animasiyaları və morf animasiyaları kimi. Bu, cəlbedici və interaktiv 3D tətbiqləri və oyunları yaratmağı asanlaşdırır. Kitabxana həmçinin 3D modelləri idarə etmək üçün geniş alətlər və xüsusiyyətlər təklif edir. Bu, 3D modelləri idxal və ixrac etmək, 3D modelləri yaratmaq və redaktə etmək, və müxtəlif əməliyyatları həyata keçirmək, məsələn, ölçüləndirmə, fırlatma və tərcümə kimi imkanları əhatə edir.
Aspose.3D for Python via .NET .NET çərçivəsi üzərində qurulmuşdur və Python ilə IronPython vasitəsilə istifadə edilə bilər, bu da Python proqramlaşdırma dilinin .NET tətbiqidir. Geniş 3D fayl formatları dəstəyi və 3D modelləri idarə etmək və animasiya etmək üçün zəngin xüsusiyyətləri ilə, tətbiqlərində 3D məzmunla işləmək məcburiyyətində olan inkişafçılar üçün əla seçimdir.
Aspose.3D for Python via .NET ilə Başlamaq
Aspose.3D for Python via .NET sabit buraxılışını quraşdırmağın ən asan yolu pip istifadə etməkdir. Sorunsuz quraşdırma üçün aşağıdakı əmri istifadə edin.
Aspose.3D for Python via .NET-i pip vasitəsilə quraşdırın
pip install aspose-3d Siz həmçinin onu birbaşa Aspose məhsul səhifəsindən yükləyə bilərsiniz.Python API vasitəsilə 3D Səhnə Yaratmaq və Yükləmək
Aspose.3D for Python via .NET tam dəstəyi ilə sıfırdan yeni 3D səhnələr yaratmaq və onları Python əmrləri ilə dəstəklənən istənilən fayl formatında saxlamaq imkanı verir. Kitabxana həmçinin mövcud 3D səhnələri oxumaq, mövcud 3D-də dəyişikliklər etmək, 3D səhnəni PDF-də saxlamaq, şifrə ilə qorunan PDF-dən mövcud səhnələri açmaq, fayl formatını müəyyən etmək, PDF faylından 3D məzmunu çıxarmaq, 3D Obj faylını yükləmədən əvvəl yükləmə seçimlərini təyin etmək və daha bir çox funksiyanı təmin edir.
Python API vasitəsilə 3D Səhnə Sənədini Necə Yaratmaq Olar?
import aspose.threed as a3d
# For complete examples and data files, please go to https://github.com/aspose-3d/Aspose.3D-for-.NET
# The path to the documents directory.
# Create an object of the Scene class
scene = a3d.Scene()
# Save 3D scene document
scene.Save("document.fbx", a3d.FileFormat.FBX7500ASCII)
Python API vasitəsilə 3D Səhnə Renderlənməsi
Aspose.3D for Python via .NET proqramçılara öz Python tətbiqlərində 3D səhnələri yükləmək və renderləmək imkanı verir. Kitabxana anti-aliasing, dərinlik sahəsi, hərəkət bulanıqlığı və daha çoxu daxil olmaqla yüksək keyfiyyətli 3D səhnə renderləməsini dəstəkləyir. Həmçinin FBX, OBJ, STL və 3DS daxil olmaqla müxtəlif 3D fayl formatlarının idxalı və ixracını dəstəkləyir. Bu, mövcud 3D modelləri asanlıqla səhnənizə idxal etməyə və ya 3D səhnənizi uyğun formata ixrac etməyə imkan verir. 3D geometriyalarında kölgə atma və kölgə alma, hardware‑əsaslı 3D geometriya renderləməsi, kameradan 3D görüntünü şəkil formatında renderləmək, 3D səhnənin Panorama görünüşünü renderləmək kimi xüsusiyyətləri dəstəkləyir və s. Aşağıdakı kod nümunəsi proqramçılara 3D səhnənin Panorama görünüşünü renderləmək və şəkil formatında saxlamaq yollarını göstərir.
Python vasitəsilə 3D Səhnənin Panorama Görünüşünü Necə Render Etmək və Şəkil Formatında Saxlamaq Olar?
from aspose.pydrawing.imaging import ImageFormat
from aspose.pydrawing import Color
import aspose.threed as a3d
# load the scene
scene = Scene.from_file("vc.glb")
# create a camera for capturing the cube map
cam = a3d.entities.Camera(a3d.entities.ProjectionType.PERSPECTIVE)
cam.near_plane = 0.1
cam.far_plane = 200
cam.rotation_mode = a3d.entities.RotationMode.FIXED_DIRECTION
scene.root_node.create_child_node(cam).transform.set_translation(5, 6, 0);
# create two lights to illuminate the scene
scene.root_node.create_child_node(a3d.entities.Light("", a3d.entities.LightType.POINT).transform.set_translation(-10, 7, -10)
light = a3d.entities.Light()
light.color = Color.cadet_blue
scene.root_node.create_child_node(light).transform.set_translation(49, 0, 49)
# create a renderer
# Create a cube map render target with depth texture, depth is required when rendering a scene.
rt = renderer.render_factory.create_cube_render_texture(a3d.render.RenderParameters(False), 512, 512)
# create a 2D texture render target with no depth texture used for image processing
final = renderer.render_factory.CreateRenderTexture(a3d.render.RenderParameters(False, 32, 0, 0), 1024 * 3 , 1024)
# a viewport is required on the render target
rt.create_viewport(cam, a3d.utilities.RelativeRectangle.from_scale(0, 0, 1, 1))
renderer.render(rt)
# execute the equirectangular projection post-processing with the previous rendered cube map as input
equirectangular = renderer.get_post_processing("equirectangular")
# Specify the cube map rendered from the scene as this post processing's input
equirectangular.input = rt.targets[0]
# Execute the post processing effect and save the result to render target final
renderer.execute(equirectangular, final)
# save the texture into disk
final.targets[0].save("panorama.png", ImageFormat.PNG)
3D Sənəddə Animasiya ilə İşləmək
Aspose.3D for Python via .NET proqram təminatı inkişaf etdiricilərinə Python kitabxanasından istifadə edərək 3D sənədlərdə animasiyalar yaratmağa və onlarla işləməyə imkan verir. Kitabxana animasiyalarla işləmək üçün bir çox xüsusiyyətləri özündə birləşdirir, məsələn, animasiyalı səhnəni renderləmək, 3D faylda hədəf kameranı qurmaq, skelet animasiyaları yaratmaq, morf hədəfləri ilə işləmək və bir neçə animasiyanı qarışdırmaq. Aşağıdakı nümunə Python əmrləri ilə sadə animasiya yaratmağı göstərir.
Python API ilə Sadə Animasiya Necə Yaratmaq Olar?
import clr
clr.AddReference("Aspose.3D")
from Aspose.ThreeD import *
# create a new scene
scene = Scene()
# create a new camera
camera = Camera()
camera.Name = "Camera"
scene.RootNode.CreateChildNode(camera)
# create a new mesh
mesh = Mesh()
mesh.Name = "Mesh"
vertices = Vector3[]
vertices.append(Vector3(0, 0, 0))
vertices.append(Vector3(0, 1, 0))
vertices.append(Vector3(1, 1, 0))
vertices.append(Vector3(1, 0, 0))
mesh.Vertices = vertices
mesh.Triangles = [0, 1, 2, 0, 2, 3]
# create a new node for the mesh
meshNode = Node()
meshNode.Name = "MeshNode"
meshNode.Translation = Vector3(0, 0, 0)
meshNode.CreateChildNode(mesh)
# add the mesh node to the scene
scene.RootNode.CreateChildNode(meshNode)
# create a new animation track for the mesh node
track = AnimationTrack(meshNode, AnimationTargetType.Translation)
# create a new keyframe at time 0
keyframe1 = Keyframe()
keyframe1.Time = 0
keyframe1.Value = Vector3(0, 0, 0)
track.Keyframes.Add(keyframe1)
# create a new keyframe at time 1
keyframe2 = Keyframe()
keyframe2.Time = 1
keyframe2.Value = Vector3(0, 0, 5)
track.Keyframes.Add(keyframe2)
# create a new animation clip
clip = AnimationClip("Clip")
clip.Duration = 1
clip.Tracks.Add(track)
# add the animation clip to the scene
scene.Animations.Add(clip)
# save the scene to a file
scene.Save("animation.fbx", FileFormat.FBX7400ASCII)
Python API istifadə edərək Poliqonlarla İşləmək
Aspose.3D for Python via .NET proqram təminatı inkişaf etdiricilərinə Python tətbiqlərində 3D modellərinə çoxbucaqlı şəbəkələr əlavə etməyə və idarə etməyə imkan verir. Kitabxana çoxbucaqlı şəbəkə idarəetməsi ilə əlaqəli müxtəlif xüsusiyyətləri dəstəkləyir, məsələn, fayldan çoxbucaqlı şəbəkəni yükləmək, çoxbucaqlı şəbəkə yaratmaq, 3D modeldə bütün çoxbucaqlıların üçbucaqlara çevrilməsi, çoxbucaqlı şəbəkəni fayla ixrac etmək və daha bir çox. Aşağıdakı nümunə istifadəçilərin Mesh obyektini yaradaraq və ona vertex və üzləri əlavə edərək çoxbucaqlı şəbəkə yaratmağı göstərir.
Python API ilə Poliqon Toru Necə Yaratmaq Olar?
# Create a mesh
mesh = Mesh()
# Add vertices
mesh.Vertices.Add(Vector3(0, 0, 0))
mesh.Vertices.Add(Vector3(0, 0, 1))
mesh.Vertices.Add(Vector3(0, 1, 0))
mesh.Vertices.Add(Vector3(1, 0, 0))
# Add faces
mesh.Faces.AddPolygonFace(0, 1, 2)
mesh.Faces.AddPolygonFace(0, 1, 3)
mesh.Faces.AddPolygonFace(0, 2, 3)
mesh.Faces.AddPolygonFace(1, 2, 3)
# Export the polygon mesh to a file
# Create a scene and add the mesh to it
scene = Scene()
scene.RootNode.CreateChildNode(mesh)
# Save the scene to a file
scene.Save("mesh.obj", FileFormat.WavefrontOBJ)
