Aspose.3D FOSS for Python

API 레퍼런스 aspose-3d-foss 26.1.0 (Python 3.7 – 3.12, MIT 라이선스).

모든 클래스는 다음에서 가져옵니다 aspose.threed 패키지 또는 그 하위 패키지에서 가져옵니다. 루트 임포트는:

import aspose.threed
##or selectively:
from aspose.threed import Scene, Node
from aspose.threed.entities import Mesh, Camera, Light
from aspose.threed.formats import ObjLoadOptions, StlSaveOptions, GltfSaveOptions
from aspose.threed.utilities import Vector3, Matrix4, BoundingBox
from aspose.threed.animation import AnimationClip, KeyFrame

핵심 씬 그래프

MethodsMethods
Scene모든 3D 씬 데이터의 최상위 컨테이너입니다. 루트 노드, 에셋 메타데이터 및 애니메이션 클립을 보유합니다. 다음을 노출합니다 from_file(), open(), 및 save() 을 기본 I/O 진입점으로 사용합니다.
Node씬 계층 구조에서 이름이 지정된 노드입니다. 자식 노드 목록과 연결된 목록을 소유합니다. Entity 메시, 카메라 및 조명과 같은 객체들입니다. 로컬을 보유합니다. Transform.
Entity첨부될 수 있는 모든 객체의 추상 기본 클래스입니다. Node.이름과 식별자를 제공하지만 자체적인 기하학은 없습니다.
SceneObject다음에 의해 공유되는 기본 클래스 NodeEntity.사용자 정의 메타데이터에 사용되는 속성 컬렉션 인터페이스를 제공합니다.
A3DObjectAspose.3D 관리 객체 전체의 루트 기본 클래스입니다. name property를 노출하고 Properties 컬렉션.
INamedObject보장을 제공하는 인터페이스 name 속성. 구현체는 Node, Entity, 및 여러 형식별 디스크립터 유형.

기하학 및 메시

MethodsMethods
Mesh폴리곤 메시 엔터티. 제어점(정점 위치를 Vector4), 폴리곤 면 리스트(제어점 인덱스 목록), 그리고 정점 요소 레이어(노멀, UV, 정점 색상).
Geometry메시와 유사한 기하학 유형을 위한 추상 기반. 제어점 배열과 컬렉션을 VertexElement 레이어. Mesh 다음으로부터 상속받음 Geometry.
VertexElement기하학에 부착된 데이터 레이어(노멀, UV, 색상 등)를 위한 추상 기반. 다음을 포함합니다 mapping_mode, reference_mode, 및 data 목록.
VertexElementNormal정점당 또는 폴리곤 코너당 하나의 노멀 벡터를 저장합니다, 다음에 따라 mapping_mode. 데이터 값은 FVector4 인스턴스(단정밀)와 w 사용되지 않음.
VertexElementUV텍스처 좌표 데이터를 다음과 같이 저장합니다 FVector4 정점당 또는 폴리곤 코너당 (only xy 구성 요소는 UV에 사용됩니다). 메시는 다양한 텍스처 채널을 위해 여러 UV 레이어를 가질 수 있습니다.
VertexElementVertexColor정점당 또는 코너당 RGBA 색상 데이터를 다음과 같이 저장합니다 FVector4 (r, g, b, a는 0–1 범위입니다).
VertexElementSmoothingGroup폴리곤당 스무딩 그룹 정수 ID를 저장합니다. 이는 OBJ 임포터가 원본 파일에서 스무딩 그룹 할당을 재현하는 데 사용됩니다.
VertexElementType정점 요소 레이어의 의미적 역할을 식별하는 열거형: NORMAL, UV, VERTEX_COLOR, SMOOTHING_GROUP, 및 기타. 값을 다음에 전달합니다 Mesh.get_element().
MappingMode정점 요소 값이 매핑되는 프리미티브를 제어하는 열거형: CONTROL_POINT, POLYGON_VERTEX, POLYGON, EDGE, 또는 ALL_SAME.
ReferenceMode값이 인덱싱되는 방식을 제어하는 열거형: DIRECT (매핑 프리미티브당 하나의 값) 또는 INDEX_TO_DIRECT (값 배열과 별도의 인덱스 배열).
PolygonModifier삼각형화 메서드를 제공하는 정적 유틸리티 클래스 Mesh 객체와 전체 Scene 그래프.

변환 및 공간

MethodsMethods
Transform로컬 변환이 부착된 Node. 변환, 회전( as Quaternion), 및 스케일 구성 요소와 Euler 각도에 대한 편리한 속성을 제공합니다.
GlobalTransform모든 상위 변환을 합성한 후 노드의 월드 공간 변환에 대한 읽기 전용 뷰. 다음을 통해 액세스합니다 Node.global_transform.
AssetInfo메타데이터 블록이 부착된 Scene. 작성 애플리케이션 이름, 단위 이름, 단위 스케일 팩터, 좌표계 축 정의 및 생성/수정 타임스탬프를 저장합니다.

재료 및 셰이딩

MethodsMethods
Material모든 재질 유형에 대한 추상 기본 클래스. 이름과 숫자 및 색상 매개변수를 위한 속성 컬렉션을 제공합니다.
LambertMaterial디퓨즈 전용 재질 모델. 주변 색, 디퓨즈 색, 방출 색 및 투명도를 저장합니다. 기본을 사용하는 OBJ 파일에서 로드됩니다 Ka/Kd/Ke 선언들.
PhongMaterialMethods LambertMaterial 반사 색과 광택(반사 지수)을 포함합니다. 해당을 사용하는 OBJ 파일에서 로드됩니다 Ks/Ns 선언들.
PbrMaterial물리 기반 렌더링 재질. 알베도, 금속성 팩터, 거칠기 팩터 및 관련 텍스처를 저장합니다. glTF 2.0 및 기타 PBR 지원 포맷에서 사용됩니다.

카메라 및 조명

MethodsMethods
Camera카메라 엔티티. Only projection_typename 이 버전에서 기능합니다; 다른 모든 숫자 속성은 (near_plane, far_plane, field_of_view, aspect_ratio)는 기본값을 반환하는 스텁입니다. a에 부착됩니다. Node 시점 변환을 정의하기 위해.
Light광원 엔티티. 로부터 상속받음. Camera 스텁 클래스로; 해당 Light 클래스 자체는 이번 릴리스에서 추가 속성을 노출하지 않습니다.
LightType지원되는 조명 카테고리 열거: POINT, DIRECTIONAL, SPOT, AREA, VOLUME.
ProjectionType카메라 투영 모드 열거: PERSPECTIVEORTHOGRAPHIC.

수학 유틸리티

MethodsMethods
Vector2두 배 정밀도 2-컴포넌트 벡터 (x, y). UV 텍스처 좌표에 사용됩니다.
Vector3두 배 정밀도 3-컴포넌트 벡터 (x, y, z). 위치, 방향 및 스케일에 사용됩니다.
Vector4두 배 정밀도 4-컴포넌트 벡터 (x, y, z, w). 제어점(동차 위치) 및 노멀 데이터에 사용됩니다.
FVector2단일 정밀도 2-컴포넌트 부동소수점 벡터. 정점 요소 데이터 배열에서 압축 저장을 위해 내부적으로 사용됩니다.
FVector3단일 정밀도 3-컴포넌트 부동소수점 벡터. 정점 요소 데이터 배열에서 노멀 및 탄젠트에 나타납니다.
FVector4단정밀도 4요소 부동소수점 벡터. 저장 유형은 VertexElementFVector.data.
Quaternion회전을 나타내는 단위 사원수 (w, x, y, z). 사용되는 Transform.rotation.
Matrix44×4 double-precision transformation matrix. Used for world/local transform computations and can be constructed from TRS decompositions.
BoundingBox축에 정렬된 경계 상자 정의 minimummaximum Vector3 코너. 공간 질의 및 프러스텀 컬링 도우미에 사용됩니다.

Methods

MethodsMethods
AnimationClip하나의 재생 구간을 포괄하는 애니메이션 채널 집합을 위한 명명된 컨테이너. A Scene 여러 클립(예: “Walk”, “Run”)을 보유할 수 있습니다.
AnimationNode바인드합니다 AnimationClip 특정 씬 노드 또는 속성에. 클립 데이터와 씬 그래프 객체 사이의 다리 역할을 합니다.
AnimationChannel클립 내의 단일 애니메이션 속성 스트림으로, 객체의 명명된 속성을 대상으로 합니다 (예:., Transform.translation.x).
KeyFrame하나의 시간‑값 샘플이 포함된 KeyframeSequence. 해당 시간(초)과 그 시점의 값을 저장합니다.
KeyframeSequence정렬된 목록 KeyFrame 하나의 스칼라 채널에 대한 객체들, 보간 및 외삽 설정과 함께.
Interpolation키프레임 간 보간 모드 열거: CONSTANT, LINEAR, BEZIER, B_SPLINE, CARDINAL_SPLINE, TCB_SPLINE.
ExtrapolationType첫 번째 및 마지막 키프레임을 벗어나는 동작 열거: CONSTANT, GRADIENT, CYCLE, CYCLE_RELATIVE, OSCILLATE.

포맷 I/O

MethodsMethods
Scene.from_file(path)정적 메서드. 파일을 다음 위치에서 엽니다: path, 확장자를 통해 형식을 감지하고, 채워진 Scene. 파일을 찾을 수 없거나 지원되지 않는 형식인 경우 예외를 발생시킵니다.
Scene.open(path, options=None)인스턴스 메서드. 기존 에 파일을 엽니다 Scene 인스턴스에, 선택적으로 형식별 LoadOptions 서브클래스.
Scene.save(path, options=None)인스턴스 메서드. 씬을 다음으로 직렬화합니다: path 확장자에서 추론된 형식을 사용하고, 선택적으로 형식별 SaveOptions 서브클래스.
FileFormat지원되는 파일 형식 레지스트리. 다음과 같은 항목을 포함합니다: FileFormat.WAVEFRONT_OBJ, FileFormat.GLTF, FileFormat.FBX7400ASCII, FileFormat.MICROSOFT_3MF. 형식별 변형은 옵션 클래스(예:., ColladaSaveOptions, GltfSaveOptions).
IOService형식 임포터와 익스포터가 사용하는 내부 I/O 추상화. 일반적으로 애플리케이션 코드에서 직접 사용되지 않습니다.
LoadOptions모든 형식별 로드 옵션 객체의 기본 클래스. 다음에 의해 서브클래스화됨: ObjLoadOptions, StlLoadOptions, GltfLoadOptions, FbxLoadOptions, ColladaLoadOptions, ThreeMfLoadOptions.
SaveOptions모든 형식별 저장 옵션 객체의 기본 클래스. 다음에 의해 서브클래스화됨: ObjSaveOptions, StlSaveOptions, GltfSaveOptions, FbxSaveOptions, ColladaSaveOptions, ThreeMfSaveOptions.

OBJ 포맷

MethodsMethods
ObjImporterWavefront OBJ 및 MTL 파일을 파싱하는 내부 임포터 클래스입니다. 자동으로 호출됩니다. Scene.from_file().obj 확장자.
ObjLoadOptionsWavefront OBJ 파일에 대한 로드 옵션입니다. 주요 속성: flip_coordinate_system, scale, enable_materials, normalize_normal.
ObjSaveOptionsWavefront OBJ 출력에 대한 저장 옵션입니다. 노멀, UV, 재질 참조 및 포인트 클라우드 모드를 제어합니다.
ObjFormatWavefront OBJ에 대한 포맷 디스크립터입니다. 다음과 같이 접근할 수 있습니다: FileFormat.WAVEFRONT_OBJ().

STL 포맷

MethodsMethods
StlImporter바이너리와 ASCII STL 파일을 모두 읽는 내부 임포터입니다. 확장자에 따라 자동으로 선택됩니다.
StlExporterSTL을 쓰는 내부 익스포터입니다.
StlLoadOptionsSTL 파일에 대한 로드 옵션입니다. 지원: flip_coordinate_systemscale.
StlSaveOptionsSTL 출력에 대한 저장 옵션입니다. 제어: binary_mode, scale, 및 flip_coordinate_system.
StlFormatSTL에 대한 포맷 디스크립터입니다.

glTF 포맷

MethodsMethods
GltfLoadOptionsglTF 2.0 및 GLB 파일에 대한 로드 옵션입니다. 주요 속성: flip_tex_coord_v.
GltfSaveOptionsglTF 2.0 출력에 대한 저장 옵션입니다. 사용: binary_mode=True 자체 포함된 GLB 패키지를 위해.
GltfFormatglTF 2.0 / GLB에 대한 포맷 설명자. 다음과 같이 접근 가능: FileFormat.GLTF2().

FBX 포맷

MethodsMethods
FbxLoadOptionsFBX 파일에 대한 로드 옵션. 주요 속성: keep_builtin_global_settings, compatible_mode.
FbxSaveOptionsFBX 출력에 대한 저장 옵션. FBX 내보내기가 발생시킵니다 NotImplementedError 조건 없이; FbxSaveOptions 존재하지만 내보내기가 구현되지 않았습니다.
FbxFormatFBX에 대한 포맷 설명자. 다음과 같이 접근 가능: FileFormat.FBX7400ASCII().

COLLADA 포맷

MethodsMethods
ColladaLoadOptionsCOLLADA에 대한 로드 옵션 (.dae) 파일. 가져오기 시 축 재매핑 및 단위 스케일을 제어합니다.
ColladaSaveOptionsCOLLADA 출력에 대한 저장 옵션. 제어합니다 indented, flip_coordinate_system, 및 재질 내보내기.
ColladaFormatCOLLADA에 대한 포맷 설명자. 자동으로 다음에서 해석됩니다 .dae 파일 확장자.

3MF Format

MethodsMethods
ThreeMfLoadOptions3MF에 대한 로드 옵션 (.3mf) 파일.
ThreeMfSaveOptions3MF 출력에 대한 저장 옵션. 3MF는 3D 프린팅 워크플로우에 선호되는 포맷입니다.
ThreeMfFormat3MF에 대한 포맷 설명자. 다음과 같이 접근 가능: FileFormat.MICROSOFT_3MF_FORMAT().

Methods

MethodsMethods
TextureMapping텍스처가 기하학에 매핑되는 방식을 식별합니다: DIFFUSE, SPECULAR, EMISSIVE, NORMAL, AMBIENT, 등.
BooleanOperationCSG Boolean 연산 유형: UNION, DIFFERENCE, INTERSECTION.

속성 시스템

MethodsMethods
Property단일 명명된 형식 속성 A3DObject. 속성 이름, 형식 설명자 및 현재 값을 저장합니다.
PropertyCollection반복 가능한 컬렉션 Property 객체가 연결된 A3DObject. 이름으로 조회하고 정의된 모든 속성을 반복할 수 있습니다.
CustomObject경량 A3DObject 이름과 임의의 PropertyCollection. 씬 객체에 사용자 정의 메타데이터를 저장하는 데 사용됩니다.

이미지 및 렌더링

MethodsMethods
ImageRenderOptions씬을 이미지 버퍼에 렌더링할 때 소프트웨어 래스터화 옵션. 배경 색상, 이미지 크기 및 카메라 참조를 저장합니다. Scene.render() 발생시킵니다 NotImplementedError; 이 릴리스에서는 렌더링이 구현되지 않았습니다.

또 보기

 한국어