FLImaging 6.5.8.1
ProjectionUtilities3D.h
1#pragma once
8#include "DefinitionsFigure.h"
9#include "Definitions3D.h"
10
12namespace FLImaging
13{
15 namespace Foundation
16 {
17 class CInternalProjectionUtilities3D;
18 class CFL3DObject;
19 class CFL3DCamera;
20
26 class FL_EXPORT CProjectionUtilities3D : public Base::CFLBase
27 {
28 public:
37
48
59
68
76 virtual void Clear();
77
90
91 public:
105 virtual const CResult Assign(const CProjectionUtilities3D& rhs);
106
120 virtual const CResult Assign(const CProjectionUtilities3D* pRhs);
121
134
148 virtual const FLImaging::Foundation::CFL3DObject* Get3DObject(int32_t i32Index) const;
149
159 virtual int32_t Get3DObjectCount() const;
160
174 virtual const CResult Remove3DObjectAt(int32_t i32Index);
175
187 virtual const CResult Clear3DObject();
188
200 virtual const CResult Execute();
201
217 virtual const CResult GetResult(Base::CFLImage* pFliResultImage) const;
218
234 virtual const CResult GetResult(Base::CFLImage& fliResultImage) const;
235
247 virtual const CResult ClearResult();
248
264 virtual const CResult SetResultImageSize(int32_t i32Width = 680, int32_t i32Height = 680);
265
281 virtual const CResult SetCamera(const CFL3DCamera* pCamera);
282
298 virtual const CResult SetCamera(const CFL3DCamera& camera);
299
311 virtual const CResult ZoomFitCamera();
312
326 virtual void SetBackgroundColorOfResultImage(uint8_t u8R, uint8_t u8G, uint8_t u8B);
327
341 virtual void GetBackgroundColorOfResultImage(uint8_t& u8R, uint8_t& u8G, uint8_t& u8B) const;
342
358 virtual const CResult SetTopologyType(ETopologyType3D eTopologyType = ETopologyType3D_Solid);
359
375 virtual const CResult SetTopologyTypeAt(int32_t i32Index, ETopologyType3D eTopologyType = ETopologyType3D_Solid);
376
389
403 virtual ETopologyType3D GetTopologyTypeAt(int32_t i32Index) const;
404
420 virtual const CResult SetShadingType(EShadingType3D eObjectShadingType = EShadingType3D_Phong);
421
437 virtual const CResult SetShadingTypeAt(int32_t i32Index, EShadingType3D eShadingType = EShadingType3D_Phong);
438
451
465 virtual EShadingType3D GetShadingTypeAt(int32_t i32Index) const;
466
480 virtual const CResult SetPointSize(float f32PointSize = 1.f);
481
497 virtual const CResult SetPointSizeAt(int32_t i32Index, float f32PointSize = 1.f) const;
498
508 virtual float GetPointSize() const;
509
521 virtual float GetPointSizeAt(int32_t i32Index) const;
522
523 SupportToDuplicateObject(CProjectionUtilities3D, *this);
524 DeclareGetClassType();
525
526 protected:
527 friend class CInternalProjectionUtilities3D;
528 CInternalProjectionUtilities3D* m_pInternalProjectionUtilities3D;
529 };
530
531 }
532}
FLImaging의 최상위 기저 클래스
Definition FLBase.h:36
FLImaging의 이미지 클래스
Definition FLImage.h:35
FLImaging 모듈의 수행 결과 객체
Definition ResultsDef.h:1514
3D 카메라 클래스
Definition FL3DCamera.h:32
3D 객체의 데이터를 표현하는 클래스
Definition FL3DObject.h:37
3D Projection 관련 유틸리티 클래스
Definition ProjectionUtilities3D.h:27
virtual const CResult SetCamera(const CFL3DCamera *pCamera)
카메라 파라미터를 설정합니다.
virtual const CResult GetResult(Base::CFLImage &fliResultImage) const
투영 연산 결과 이미지를 얻습니다.
virtual const FLImaging::Foundation::CFL3DObject * Get3DObject(int32_t i32Index) const
object 를 얻어 옵니다.
const CProjectionUtilities3D & operator=(const CProjectionUtilities3D &rhs)
대입 연산자
virtual const CResult Remove3DObjectAt(int32_t i32Index)
3DObject 객체를 제거합니다.
virtual const CResult SetPointSizeAt(int32_t i32Index, float f32PointSize=1.f) const
3DObject 객체의 포인트 클라우드 그리기에 적용되는 포인트 크기를 설정합니다.
CProjectionUtilities3D(const CProjectionUtilities3D *pRhs)
복사 생성자
virtual const CResult Assign(const CProjectionUtilities3D *pRhs)
ProjectionUtilities3D를 복사하여 객체에 할당합니다.
virtual const CResult Execute()
투영 연산을 수행합니다. 이 함수를 호출하기 전 PushBackObject() 를 호출하여 대상 객체를 설정해야 합니다. 이 함수를 호출 후 GetResult() 함수로 투영 연산 ...
virtual void PushBack3DObject(const FLImaging::Foundation::CFL3DObject *pObject3D)
object 를 추가합니다.
virtual void GetBackgroundColorOfResultImage(uint8_t &u8R, uint8_t &u8G, uint8_t &u8B) const
결과 이미지의 배경 색상을 가져옵니다.
virtual EShadingType3D GetShadingTypeAt(int32_t i32Index) const
3DObject 객체의 쉐이딩 방식을 리턴합니다.
virtual float GetPointSizeAt(int32_t i32Index) const
3DObject 객체의 포인트 클라우드 그리기에 적용되는 포인트 크기를 리턴합니다.
CProjectionUtilities3D(const CProjectionUtilities3D &rhs)
복사 생성자
virtual ETopologyType3D GetTopologyType() const
이 객체의 표현 방식을 리턴합니다.
virtual void Clear()
현재 객체를 초기화 합니다.
virtual const CResult ZoomFitCamera()
SetResultImageSize() 로 설정한 이미지 사이즈에 PushBack3DObject() 로 추가한 객체가 맞춤되어 들어가도록 카메라 시점을 수정합니다.
virtual int32_t Get3DObjectCount() const
object 개수를 얻어 옵니다.
virtual const CResult ClearResult()
투영 연산 결과를 초기화합니다.
virtual float GetPointSize() const
포인트 클라우드 그리기에 적용되는 포인트 크기를 리턴합니다.
virtual EShadingType3D GetShadingType() const
이 객체의 쉐이딩 방식을 리턴합니다.
virtual const CResult SetResultImageSize(int32_t i32Width=680, int32_t i32Height=680)
결과 이미지 크기를 설정합니다.
virtual const CResult GetResult(Base::CFLImage *pFliResultImage) const
투영 연산 결과 이미지를 얻습니다.
virtual ETopologyType3D GetTopologyTypeAt(int32_t i32Index) const
3DObject 객체의 표현 방식을 리턴합니다.
virtual const CResult SetTopologyTypeAt(int32_t i32Index, ETopologyType3D eTopologyType=ETopologyType3D_Solid)
3DObject 객체의 표현 방식을 설정합니다. 기본값 ETopologyType3D_Solid 입니다.
virtual void SetBackgroundColorOfResultImage(uint8_t u8R, uint8_t u8G, uint8_t u8B)
결과 이미지의 배경 색상을 설정합니다.
virtual const CResult Assign(const CProjectionUtilities3D &rhs)
ProjectionUtilities3D를 복사하여 객체에 할당합니다.
virtual const CResult SetPointSize(float f32PointSize=1.f)
포인트 클라우드 그리기에 적용되는 포인트 크기를 설정합니다.
virtual ~CProjectionUtilities3D()
기본 소멸자
virtual const CResult SetTopologyType(ETopologyType3D eTopologyType=ETopologyType3D_Solid)
객체의 표현 방식을 설정합니다. 기본값 ETopologyType3D_Solid 입니다.
virtual const CResult SetShadingTypeAt(int32_t i32Index, EShadingType3D eShadingType=EShadingType3D_Phong)
3DObject 객체의 쉐이딩 방식을 설정합니다. 기본값 EShadingType3D_Phong 입니다.
virtual const CResult Clear3DObject()
object 객체들을 모두 제거합니다.
virtual const CResult SetCamera(const CFL3DCamera &camera)
카메라 파라미터를 설정합니다.
virtual const CResult SetShadingType(EShadingType3D eObjectShadingType=EShadingType3D_Phong)
객체의 쉐이딩 방식을 설정합니다. 기본값 EShadingType3D_Phong 입니다.
ETopologyType3D
3D 객체의 표현 방식
Definition Definitions3D.h:125
EShadingType3D
3D 객체 타입
Definition Definitions3D.h:75