HTML JPG PDF XML U3D
Aspose.3D  for .NET
U3D

C#를 통해 U3D에 Point Cloud 생성

서버 측 API를 사용하여 U3D 파일에 대한 포인트 클라우드를 생성하는 고유한 .NET 앱을 빌드합니다.

C#을 사용하여 U3D 파일에 포인트 클라우드를 생성하는 방법

U3D 파일에 포인트 클라우드를 생성하기 위해 다음을 사용합니다.

Aspose.3D for .NET

기능이 풍부하고 강력하며 사용하기 쉬운 C# 플랫폼인 API은 포인트 클라우드 생성과 함께 사용할 수 있습니다. 열려있는

누겟

패키지 관리자, 검색 Aspose.3D 설치합니다. 패키지 관리자 콘솔에서 다음 명령을 사용할 수도 있습니다.

패키지 관리자 콘솔 명령


PM> Install-Package Aspose.3D

C#을(를) 통해 U3D에 Point Cloud를 생성하는 단계

Aspose.3D를 사용하면 개발자가 몇 줄의 코드로 U3D 파일에 대한 포인트 클라우드를 쉽게 생성할 수 있습니다.

  • Scene 클래스의 생성자를 통해 U3D 파일 로드- Aspose.3D의 pointcloud 객체 가져오기- EvaluateGlobalTransform 메서드를 통해 변환 개체 만들기- 병합 방법을 사용하여 포인트 클라우드 생성- 개체와 함께 Scene.Save 메서드를 호출합니다.

시스템 요구 사항

Aspose.3D for .NET은(는) 모든 주요 운영 체제에서 지원됩니다. 다음 전제 조건이 있는지 확인하십시오.

  • Microsoft Windows 또는 .NET Framework, .NET Core, Mono 호환 OS- Microsoft Visual Studio와 같은 개발 환경- 프로젝트에서 참조된 Aspose.3D for .NET
 

U3D에 포인트 클라우드를 생성하는 C# 코드


//포인트 클라우드 생성에 필요한 소스 파일
string file = "template.u3d";

// Scene의 인스턴스 생성
Scene scene = new Scene(file);

//Aspose.3D의 pointcloud 객체를 가져오고 point cloud를 생성합니다.
var pc = new PointCloud();
scene.RootNode.Accept((Node n) =>
{
    if (n.Entities.Count > 0)
    {
        var transform = n.EvaluateGlobalTransform(true);
        foreach (var entity in n.Entities)
        {
            if (entity is Geometry g)
            {
                Merge(pc, g, transform);
            }
            else if (entity is IMeshConvertible mc)
            {
                var mesh = mc.ToMesh();
                Merge(pc, mesh, transform);
            }

        }
    }
    return true;
});

//포인트 클라우드 생성을 위한 병합 방법
private void Merge(PointCloud pc, Geometry g, Matrix4 transform)
{
    var tmp = PointCloud.FromGeometry(g, 10);
    for (int i = 0; i < tmp.ControlPoints.Count; i++)
    {
        var pt = transform * tmp.ControlPoints[i];
        pc.ControlPoints.Add(pt);
    }
}

// newScene의 인스턴스 생성
var newScene = new Scene(pc);

//저장할 때 저장 형식의 SaveOptions 개체를 만들어야 합니다.
string output=System.IO.Path.GetTempPath() + Guid.NewGuid().ToString() + ".ply";
PlySaveOptions ply = new PlySaveOptions();
ply.PointCloud = true;
newScene.Save(output,ply);
 
  • Aspose.3D for .NET API 정보

    Aspose.3D은(는) 3D 파일을 로드, 수정 및 변환하는 CAD 및 Gameware API입니다. API는 독립 실행형이며 3D 모델링 또는 렌더링 소프트웨어가 필요하지 않습니다. Discreet3DS, WavefrontOBJ, STL(ASCII, 바이너리), Universal3D, FBX(ASCII, 바이너리), Collada, glTF, PLY, GLB, DirectX 및 기타 형식.

    U3D에 포인트 클라우드를 생성하는 무료 앱

    라이브 데모를 확인하려면 포인트 클라우드 3DS 다음과 같은 혜택이 있습니다.

      아무것도 다운로드하거나 설정할 필요가 없습니다
      코드를 작성하거나 컴파일할 필요가 없습니다.
      U3D 파일을 업로드하고 "생성" 버튼을 누르기만 하면 됩니다.
      필요한 경우 링크에서 U3D 파일 다운로드

    U3D U3D 파일 형식이란 무엇입니까?

    U3D(Universal 3D)은 3D 컴퓨터 그래픽용 압축 파일 형식 및 데이터 구조입니다. 여기에는 삼각형 메쉬, 조명, 음영, 모션 데이터, 색상 및 구조가 있는 선 및 점과 같은 3D 모델 정보가 포함됩니다. 형식은 2005년 8월에 ECMA-363 표준으로 승인되었습니다. 3D PDF 문서는 U3D 개체 임베딩을 지원하며 Adobe Reader(버전 7 이상)에서 볼 수 있습니다.

    더 읽기

    포인트 클라우드를 형식으로 생성하기 위해 지원되는 기타 앱

    C#을(를) 사용하면 다음을 포함한 많은 다른 파일 형식으로 포인트 클라우드를 생성할 수도 있습니다.

    3MF (3D 제조 형식)
    AMF (적층 제조 형식)
    ASE (2D 애니메이션 파일)
    DAE (디지털 자산 교환)
    DXF (도면 교환 형식)
    DRC (Google Draco)
    FBX (3D 형식)
    GLB (3D 파일 이진 표현)
    GLTF (GL 전송 형식)
    JT (목성 테셀레이션 파일)
    OBJ (3D 파일 형식)
    PLY (다각형 파일 형식)
    PDF (3D PDF)
    RVM (AVEVA 플랜트 설계 모델)
    STL (교체 가능한 3D 표면 기하학)
    3DS (3D Studio 메시 파일 형식)
    VRML (가상 현실 모델링 언어)
    엑스 (DirectX 모델 이미지)
    USD (보편적인 장면 설명)
    USDZ (유니버설 장면 설명 Zip 아카이브)