파이썬의 3D

3D 모델링 및 시각화는 게임, 건축 및 가상 현실과 같은 다양한 산업에서 필수적인 부분이 되었습니다. 이 기사에서는 3D 모델 장면을 만들고 읽는 데 중점을 두고 Python에서 3D 모델로 작업하는 방법을 살펴봅니다. 3D 모델을 생성, 조작 및 읽기 위한 강력하고 사용하기 쉬운 도구인 Python의 Aspose.3D 라이브러리를 탐색합니다. 파이썬으로 3D 모델링에 빠져보자!

이 문서에서는 다음 항목을 다룹니다.

  1. Python 3D 라이브러리 – Python의 3D
  2. Python에서 간단한 3D 장면 만들기
  3. 3D 장면에서 재료 만들기
  4. 3D 장면에 조명 추가
  5. Python에서 기본 3D 모델 만들기
  6. Python에서 3D 장면 읽기

Python 3D 라이브러리 – Python의 3D

Python용 Aspose.3D는 Python 개발자를 위한 다재다능하고 기능이 풍부하며 매우 효율적인 3D 모델링 솔루션입니다. 사용자가 3D 모델을 쉽게 만들고 읽고 수정할 수 있는 포괄적인 기능 세트를 제공합니다. 이 Python 3D 라이브러리의 몇 가지 주요 기능은 다음과 같습니다.

  • FBX, OBJ, STL 등과 같은 널리 사용되는 3D 파일 형식 지원
  • 고성능 3D 렌더링 및 시각화 기능
  • 고급 장면 관리 및 조작 도구
  • 개발자가 빠르게 시작하는 데 도움이 되는 광범위한 문서 및 코드 샘플

콘솔에서 다음 pip 명령을 사용하여 패키지 다운로드 또는 PyPI에서 API 설치를 수행하십시오.

pip install aspose-3d

Python에서 기본 3D 장면 만들기

아래 단계에 따라 간단한 3D 장면을 만들 수 있습니다.

  1. Scene 클래스의 인스턴스를 만듭니다.
  2. 그런 다음 createchildnode() 메서드를 호출하여 일부 기하학, 예를 들어 구와 같이 화면에 표시할 모양을 추가합니다.
  3. 마지막으로 save() 메서드를 사용하여 장면을 FBX로 저장합니다.

다음 코드 샘플은 Python에서 간단한 3D 장면을 만드는 방법을 보여줍니다.

# 이 코드 예제는 기본 3D 장면을 만드는 방법을 보여줍니다.
from aspose.threed import Scene
from aspose.threed.entities import Sphere

# Scene 클래스의 객체 생성
scene = Scene()

# 구 모델 만들기
scene.root_node.create_child_node("Sphere", Sphere())

# 3D 장면 문서 저장
scene.save("C:\\Files\\my_scene.fbx")
Python의 3D 장면

Python의 3D 장면.

Python을 사용하여 3D 장면에서 재료 만들기

아래 단계에 따라 3D 장면에서 확산 색상으로 재료를 만들 수 있습니다.

  1. Scene 클래스의 인스턴스를 만듭니다.
  2. createchildnode() 메서드를 호출하여 구체를 추가합니다.
  3. LambertMaterial 클래스 개체를 초기화합니다.
  4. 확산 색상 및 이름 속성을 지정합니다.
  5. 그런 다음 재료 개체를 Sphere 모델에 할당합니다.
  6. 마지막으로 save() 메서드를 사용하여 장면을 FBX로 저장합니다.

다음 코드 샘플은 Python을 사용하여 3D 장면에서 확산 색상으로 재료를 만드는 방법을 보여줍니다.

# 이 코드 예제는 3D 장면에서 자료를 만드는 방법을 보여줍니다.
from aspose.threed import Scene
from aspose.threed.entities import Sphere
from aspose.threed.utilities import MathUtils, Vector3
from aspose.threed.shading import LambertMaterial
from aspose.pydrawing import Color

# Scene 클래스의 객체 생성
scene = Scene()

# 구 모델 만들기
node = scene.root_node.create_child_node("Sphere", Sphere())

# LambertMaterial 설정
material = LambertMaterial()
material.diffuse_color = Vector3(Color.red)
material.name = "Lambert"

# 구형 모델에 할당
node.material = material

# 3D 장면 문서 저장
scene.save("C:\\Files\\material_scene.fbx")
3D 장면의 재질

3D 장면에서 재료 만들기.

Python을 사용하여 3D 장면에 조명 추가

아래 단계에 따라 3D 장면에 조명을 추가할 수도 있습니다.

  1. Scene 클래스의 인스턴스를 만듭니다.
  2. createchildnode() 메서드를 호출하여 구체를 추가합니다.
  3. Light 클래스 개체를 초기화합니다.
  4. lighttype 및 name 속성을 지정합니다.
  5. 그런 다음 createchildnode() 메서드를 호출하여 조명 개체를 추가합니다.
  6. 마지막으로 save() 메서드를 사용하여 장면을 FBX로 저장합니다.

다음 코드 샘플은 Python을 사용하여 3D 장면에서 조명을 만드는 방법을 보여줍니다.

# 이 코드 예제는 3D 장면에서 조명을 만드는 방법을 보여줍니다.
from aspose.threed import Scene
from aspose.threed.entities import Sphere, Light, LightType
from aspose.threed.utilities import MathUtils, Vector3
from aspose.threed.shading import LambertMaterial
from aspose.pydrawing import Color

# Scene 클래스의 객체 생성
scene = Scene()

# 구 모델 만들기
scene.root_node.create_child_node("Sphere", Sphere())

# 조명 엔터티 추가
light = Light() 

# 포인트 라이트
light.light_type = 0

# 이름
light.name = "Light";

# 장면에 추가
scene.root_node.create_child_node(light).transform.translation = Vector3(10, 0, 10);

# 3D 장면 문서 저장
scene.save("C:\\Files\\light_scene.fbx")

기본 3D 모델 Python

프리미티브는 복잡한 기하학적 형태를 만들기 위한 기초가 되는 3차원 기하학적 모양입니다. 앞에서 언급한 단계에 따라 기본 3D 모델을 만들 수 있습니다. 그러나 아래 코드 샘플과 같이 여러 기하학적 모양이나 개체를 추가해야 합니다.

# 이 코드 예제는 기본 3D 모델을 만드는 방법을 보여줍니다.
from aspose.threed import Scene
from aspose.threed.entities import Box, Cylinder
from aspose.threed.utilities import MathUtils, Vector3

# 장면 개체 초기화
scene = Scene()

# 박스 모델 생성
box = Box();
box.name = "Box";
scene.root_node.create_child_node(box)

# 실린더 모델 생성
cylinder = Cylinder();
cylinder.name = "Cylinder";
scene.root_node.create_child_node(cylinder)

# 3D 장면 문서 저장
scene.save("C:\\Files\\primitive_scene.fbx")

Python에서 3D 장면 읽기

아래 단계에 따라 FBX 문서에서 3D 장면을 읽을 수 있습니다.

  1. Scene 클래스의 인스턴스를 만듭니다.
  2. open() 메서드를 사용하여 기존 3D 문서를 로드합니다.
  3. 하위 노드를 통해 반복합니다.
  4. 마지막으로 속성 값을 표시합니다.

다음 코드 샘플은 Python에서 3D 장면을 로드하고 읽는 방법을 보여줍니다.

# 이 코드 예제는 3D 장면을 읽는 방법을 보여줍니다.
from aspose.threed import Scene

# Scene 클래스 객체 초기화
scene = Scene()

# 기존 3D 문서 로드
scene.open("C:\\Files\\primitive_scene.fbx")

for node in scene.root_node.child_nodes:
    entity = node.entity;
    print("{0}", entity.name); 
{0} Box
{0} Cylinder

무료 라이선스 받기

무료 임시 라이선스를 받아 평가 제한 없이 Python용 Aspose.3D를 사용해 볼 수 있습니다.

Python의 3D – Python 3D 라이브러리 학습 리소스

Python에서 3D 모델 및 장면을 만들고 조작하는 방법에 대해 자세히 알아보고 아래 제공된 리소스를 사용하여 라이브러리의 다른 기능을 탐색할 수 있습니다.

결론

이 기사에서는 Aspose.3D 라이브러리를 소개하고 Python에서 3D 모델을 만들고 읽고 조작하는 기능을 시연합니다. 다양한 3D 파일 형식, 고급 장면 관리 및 고성능 렌더링을 지원하는 Aspose.3D 라이브러리는 3D 콘텐츠로 작업하는 Python 개발자에게 매우 유용한 도구입니다. Aspose.3D 라이브러리를 사용하면 3D 모델링 프로젝트를 간소화하고 놀라운 3D 장면을 쉽게 만들 수 있습니다. 모호한 점이 있는 경우 무료 지원 포럼에서 문의하십시오.

또한보십시오