FLImaging 6.6.27.1
ProjectionUtilities3D.h
1#pragma once
7
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
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:1596
3D 카메라 클래스
Definition FL3DCamera.h:32
3D 객체의 데이터를 표현하는 클래스
Definition FL3DObject.h:37
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
CFL3DObject 객체를 얻어 옵니다.
const CProjectionUtilities3D & operator=(const CProjectionUtilities3D &rhs)
대입 연산자
virtual const CResult Remove3DObjectAt(int32_t i32Index)
CFL3DObject 객체를 제거합니다.
virtual const CResult SetPointSizeAt(int32_t i32Index, float f32PointSize=1.f) const
CFL3DObject 객체의 포인트 클라우드 그리기에 적용되는 포인트 크기를 설정합니다.
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)
CFL3DObject 객체를 추가합니다.
virtual void GetBackgroundColorOfResultImage(uint8_t &u8R, uint8_t &u8G, uint8_t &u8B) const
결과 이미지의 배경 색상을 가져옵니다.
virtual EShadingType3D GetShadingTypeAt(int32_t i32Index) const
CFL3DObject 객체의 쉐이딩 방식을 리턴합니다.
virtual float GetPointSizeAt(int32_t i32Index) const
CFL3DObject 객체의 포인트 클라우드 그리기에 적용되는 포인트 크기를 리턴합니다.
CProjectionUtilities3D(const CProjectionUtilities3D &rhs)
복사 생성자
virtual ETopologyType3D GetTopologyType() const
이 객체의 표현 방식을 리턴합니다.
virtual void Clear()
현재 객체를 초기화 합니다.
virtual const CResult ZoomFitCamera()
SetResultImageSize() 로 설정한 이미지 사이즈에 PushBack3DObject() 로 추가한 객체가 맞춤되어 들어가도록 카메라 시점을 수정합니다.
virtual int32_t Get3DObjectCount() const
CFL3DObject 객체 개수를 얻어 옵니다.
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
CFL3DObject 객체의 표현 방식을 리턴합니다.
virtual const CResult SetTopologyTypeAt(int32_t i32Index, ETopologyType3D eTopologyType=ETopologyType3D_Solid)
CFL3DObject 객체의 표현 방식을 설정합니다. 기본값 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)
CFL3DObject 객체의 쉐이딩 방식을 설정합니다. 기본값 EShadingType3D_Phong 입니다.
virtual const CResult Clear3DObject()
CFL3DObject 객체들을 모두 제거합니다.
virtual const CResult SetCamera(const CFL3DCamera &camera)
카메라 파라미터를 설정합니다.
virtual const CResult SetShadingType(EShadingType3D eObjectShadingType=EShadingType3D_Phong)
객체의 쉐이딩 방식을 설정합니다. 기본값 EShadingType3D_Phong 입니다.
Definition AlgorithmBase.h:16
ETopologyType3D
3D 객체의 표현 방식
Definition Definitions3D.h:125
@ ETopologyType3D_Solid
Solid 모델링(객체의 외부와 내부를 구분하고, 볼륨을 가지며, 면이 표시됩니다.)
Definition Definitions3D.h:159
EShadingType3D
3D 객체 타입
Definition Definitions3D.h:75
@ EShadingType3D_Phong
Phong 쉐이딩
Definition Definitions3D.h:106