📄 raycastingcommonagent.h
字号:
// IsoAgent.h: interface for the RxRayCastingCommonAgent class.////////////////////////////////////////////////////////////////////////#ifndef __RAYCASTINGCOMMONAGENT_H__#define __RAYCASTINGCOMMONAGENT_H__class RxVect4D;//#include "Vect4D.h"#include "Fusion3DConst.h"class RxRayCastingCommonInfo;class RxMaskVolume;class RxRayCastingCommonAgent {public:// virtual BOOL Get3DCoordWithPixel(CPoint ipt, RxPoint3D <double>& p3D) { return TRUE; }; unsigned char* Render(RxRayCastingCommonInfo* pIsoEndoInfo); RxRayCastingCommonAgent() {} RxRayCastingCommonAgent(int iLSN); virtual ~RxRayCastingCommonAgent(); virtual float DistanceFromCOP(RxRayCastingCommonInfo* pIsoEndoInfo, RxVect4D &vtNormal) { return 0.0; }; void UpdateBrightnessByDiff(int diff) { m_iBrightness += diff; } void UpdateContrastByDiff(int diff) { m_iContrast += diff; } virtual BOOL PartialRender(int iPart) { return TRUE; }; virtual BOOL InitRendering(RxRayCastingCommonInfo* pIsoEndoInfo) { return TRUE; }; static RxMaskVolume* m_pVisitMask[2], *m_pVisitMask2See[2]; protected: //multiple series甫 贸府窍扁 困秦 int m_iLoadedSeriesNum; DWORD m_dwNumberOfCPU; RxRayCastingCommonInfo* m_pIsoEndoInfo; BOOL m_bCreated; int m_iLevel; float GetTLSample(float x, float y, float z); BOOL m_bSmallMinMaxDen; BOOL m_bUseBlocking; BOOL GetRaySampleBound(float* afRayDirection, float *min_t, float* max_t); void GetNormal(float x, float y, float z, float *nx, float *ny, float *nz); float m_fZoomFactor; void GetRayImageBound(int* min_x, int* min_y, int* max_x, int* max_y); unsigned short* m_pnVolume; int *m_piSliceTable; int m_iMinX, m_iMinY, m_iMaxX, m_iMaxY; int m_iVolX, m_iVolY, m_iVolZ; int m_iBlock, m_iMacroBlock, m_iBlockSize, m_iMacroBlockSize; float m_afMaxVol[3]; // m_iMaxVol[0] = m_iVolX-1 float m_afRayOrigin[4], m_afXDirection[4], m_afYDirection[4]; int m_iImgX, m_iImgY; int m_iBrightness, m_iContrast; stMinMax *m_pmmDen, *m_pmmBlock; float m_fRatio; float m_afViewingM[4][4], m_afInvViewingM[4][4]; unsigned char *m_pImage, *m_pImageOnce, *m_pImageTwice; float m_fAmbient, m_fDiffuse; int *m_piIdx[3]; // x, y, z density buffer index table int *m_piSkipIdx[3]; // x, y, z minmaxden buffer index table int *m_piBlockIdx[3]; // x, y, z minmaxblk buffer index table BYTE m_fRGBLocalizer[3]; HANDLE m_hThreadKillEvent; CWinThread* m_pEndoThread; HANDLE m_hEndoThread; static UINT __cdecl EndoThreadFunc(LPVOID pParam);};#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -