
Aspose.3D for Python via .NET
Python API के द्वारा 3D मॉडल बनाना, संपादित करना और परिवर्तित करना
FBX, STL, Discreet3DS, Universal3D, Collada और अधिक में 3D फ़ाइल फ़ॉर्मैट और 3D दृश्यों के निर्माण, संपादन, प्रोसेसिंग और रूपांतरण के लिए एक उपयोगी Python लाइब्रेरी।
Aspose.3D for Python via .NET क्या है?
Aspose.3D for Python via .NET एक व्यापक और स्थिर लाइब्रेरी है जो सॉफ्टवेयर डेवलपर्स को 3D फ़ाइलों और मॉडलों के साथ Python एप्लिकेशन के भीतर काम करने में सक्षम बनाती है, बिना 3D मॉडलिंग और रेंडरिंग सॉफ़्टवेयर स्थापित किए। यह लाइब्रेरी सॉफ्टवेयर डेवलपर्स को ऐसे एप्लिकेशन बनाने में मदद करती है जो आसानी से 3D मॉडलों को विभिन्न फ़ाइल फ़ॉर्मेट में बनाना, पढ़ना, रेंडर करना, संशोधित करना और परिवर्तित करना सक्षम बनाते हैं, जिसमें FBX, 3DS, U3D, DAE, glTF, OBJ, STL, DRC, PDF, AMF, PLY और कई अन्य शामिल हैं। यह लाइब्रेरी विभिन्न तकनीकों का उपयोग करती है ताकि 3D ऑपरेशन्स को बड़े और जटिल 3D मॉडलों पर भी कुशलता और तेज़ी से किया जा सके।
Aspose.3D for Python via .NET ने 3D एनीमेशन के साथ काम करने के लिए कई महत्वपूर्ण सुविधाएँ शामिल की हैं, जैसे 3D बनाना और 3D एनीमेशन को नियंत्रित करना, जैसे कि की-फ़्रेम एनीमेशन, स्केलेटल एनीमेशन, और मोर्फ एनीमेशन। यह आकर्षक और इंटरैक्टिव 3D अनुप्रयोग और गेम बनाने को आसान बनाता है। लाइब्रेरी 3D मॉडल को नियंत्रित करने के लिए उपकरणों और सुविधाओं की विस्तृत श्रृंखला भी प्रदान करती है। इसमें 3D मॉडल को आयात और निर्यात करने, 3D मॉडल बनाने और संपादित करने, तथा स्केलिंग, रोटेशन और ट्रांसलेशन जैसी विभिन्न ऑपरेशनों को करने की क्षमता शामिल है।
Aspose.3D for Python via .NET .NET फ्रेमवर्क के ऊपर निर्मित है और इसे Python के साथ IronPython का उपयोग करके इस्तेमाल किया जा सकता है, जो Python प्रोग्रामिंग भाषा का .NET कार्यान्वयन है। 3D फ़ाइल स्वरूपों की विस्तृत श्रृंखला के समर्थन और 3D मॉडलों को नियंत्रित और एनीमेट करने की समृद्ध सुविधाओं के साथ, यह उन डेवलपर्स के लिए एक उत्कृष्ट विकल्प है जिन्हें अपने अनुप्रयोगों में 3D सामग्री के साथ काम करने की आवश्यकता होती है।
Aspose.3D for Python via .NET के साथ शुरुआत
Aspose.3D for Python via .NET के स्थिर रिलीज़ को स्थापित करने का सबसे आसान तरीका pip का उपयोग करना है। सुगम स्थापना के लिए कृपया निम्नलिखित कमांड का उपयोग करें।
pip के माध्यम से Aspose.3D for Python via .NET स्थापित करें
pip install aspose-3d आप इसे सीधे Aspose उत्पाद पृष्ठ से भी डाउनलोड कर सकते हैं।Python API के माध्यम से 3D सीन उत्पन्न करें और लोड करें
Aspose.3D for Python via .NET ने शून्य से नई 3D सीन बनाने और फिर इसे किसी भी समर्थित फ़ाइल फ़ॉर्मेट में Python कमांड्स का उपयोग करके सहेजने के लिए पूर्ण समर्थन शामिल किया है। लाइब्रेरी मौजूदा 3D सीन को पढ़ने, मौजूदा 3D में परिवर्तन करने, 3D सीन को PDF में सहेजने, पासवर्ड-संरक्षित PDF से मौजूदा सीन खोलने, फ़ाइल फ़ॉर्मेट का पता लगाने, PDF फ़ाइल से 3D सामग्री निकालने, 3D Obj फ़ाइल लोड करने से पहले लोड विकल्प सेट करने और कई अन्य सुविधाएँ प्रदान करती है।
Python API के माध्यम से 3D सीन दस्तावेज़ कैसे बनाएं?
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 के माध्यम से 3D सीन रेंडरिंग
Aspose.3D for Python via .NET सॉफ़्टवेयर डेवलपर्स को अपने स्वयं के Python एप्लिकेशन में 3D सीन लोड और रेंडर करने में सक्षम बनाता है। यह लाइब्रेरी 3D सीन की उच्च-गुणवत्ता वाली रेंडरिंग का समर्थन करती है, जिसमें एंटी-एलियासिंग, डेप्थ ऑफ फील्ड, मोशन ब्लर और अधिक शामिल हैं। यह विभिन्न 3D फ़ाइल फ़ॉर्मैट्स जैसे FBX, OBJ, STL, और 3DS को इम्पोर्ट और एक्सपोर्ट करने का भी समर्थन करती है। इसका मतलब है कि आप आसानी से मौजूदा 3D मॉडल को अपने सीन में इम्पोर्ट कर सकते हैं या अपने 3D सीन को संगत फ़ॉर्मैट में एक्सपोर्ट कर सकते हैं। यह 3D ज्योमेट्री पर कास्ट और रिसीविंग शैडोज़, हार्डवेयर-आधारित 3D ज्योमेट्री रेंडरिंग, कैमरा से इमेज फ़ॉर्मैट में 3D व्यू रेंडरिंग, 3D सीन का पैनोरामा व्यू रेंडरिंग आदि जैसी सुविधाओं का समर्थन करता है। निम्नलिखित कोड उदाहरण दिखाता है कि सॉफ़्टवेयर डेवलपर्स कैसे 3D सीन का पैनोरामा व्यू रेंडर कर सकते हैं और उसे इमेज फ़ॉर्मैट में सहेज सकते हैं।
Python के माध्यम से 3D सीन का पैनोरमा दृश्य कैसे रेंडर करें और इसे इमेज फ़ॉर्मेट में सहेजें?
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 दस्तावेज़ में एनीमेशन के साथ काम करें
Aspose.3D for Python via .NET सॉफ़्टवेयर डेवलपर्स को Python लाइब्रेरी का उपयोग करके 3D दस्तावेज़ों के भीतर एनीमेशन बनाने और काम करने की सुविधा प्रदान करता है। लाइब्रेरी में एनीमेशन के साथ काम करने के लिए कई सुविधाएँ शामिल हैं, जैसे एनीमेटेड सीन को रेंडर करना, 3D फ़ाइल में लक्ष्य कैमरा सेट करना, कंकाल एनीमेशन बनाना, मोर्फ़ टार्गेट्स के साथ काम करना, और कई एनीमेशन को ब्लेंड करना। निम्नलिखित उदाहरण दिखाता है कि Python कमांड्स का उपयोग करके सरल एनीमेशन कैसे बनाया जाए।
Python API का उपयोग करके सरल एनीमेशन कैसे बनाएं?
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 का उपयोग करके पॉलीगॉन के साथ काम करें
Aspose.3D for Python via .NET सॉफ़्टवेयर डेवलपर्स को Python एप्लिकेशन के भीतर अपने 3D मॉडलों में पॉलीगॉन मेष जोड़ने और प्रबंधित करने में सक्षम बनाता है। लाइब्रेरी में पॉलीगॉन मेष प्रबंधन से संबंधित विभिन्न सुविधाओं के लिए समर्थन शामिल है, जैसे फ़ाइल से पॉलीगॉन मेष लोड करना, पॉलीगॉन मेष बनाना, 3D मॉडल में सभी पॉलीगॉन को त्रिभुजों में बदलना, पॉलीगॉन मेष को फ़ाइल में निर्यात करना, और कई अन्य। निम्नलिखित उदाहरण दिखाता है कि उपयोगकर्ता कैसे एक Mesh ऑब्जेक्ट बनाकर और उसमें वर्टिसेज़ और फ़ेसेज़ जोड़कर पॉलीगॉन मेष बना सकते हैं।
Python API का उपयोग करके पॉलीगॉन मेष कैसे बनाएं?
# 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)
