📄 vrraycastingagent.h
字号:
// IsoAgent.h: interface for the RxEndoIsoAgent class.////////////////////////////////////////////////////////////////////////#include "Vect4D.h"//#include "isoutil.h"#include "RayCastingCommonAgent.h"class RxVoxelShader;class RxRayCastingCommonInfo;class RxVRRayCastingAgent : public RxRayCastingCommonAgent{public: void DestroyMemory(); RxVRRayCastingAgent() {} RxVRRayCastingAgent(int iLSN); virtual ~RxVRRayCastingAgent(); BOOL PartialRender(int iPart); BOOL InitRendering(RxRayCastingCommonInfo* pIsoEndoInfo); BOOL Get3DPoint(int i,int j, int &x, int &y, int &z); int Growing3D(int x,int y,int z); BOOL IsInsideInCrop(int x, int y, int z);protected: BOOL GetRaySample(int iPart, float *afRayOrigin, float tl, float tu, float *intensity, float* afVoxel, float& r, float& g, float& b, float& cur_opacity, int& iLocalizer, int &iPrevSampleDensity); BOOL GetRaySampleObject(int iPart, float *afRayOrigin, float tl, float tu, float *intensity, float* afVoxel, float& r, float& g, float& b, float& cur_opacity, int& iLocalizer); int GetRaySampleBound(int iPart, float *afRayOrigin, float* min_t, float* max_t, float* r, float* g, float* b, float* opacity); BOOL RenderNormal(int iPart); BOOL RenderObject(int iPart); inline unsigned char GetMask(unsigned char* pbyMask, int iOffset); BOOL GetRayDirectionInRef(float afRefInvViewing[4][4]); BOOL GetRayBoundInReference(float *afRefRayOrigin, float &min_t, float &max_t); float m_fWMin, m_fWMax; float m_afLight[4], m_afRayDirection[4], m_afInvRayDirection[4]; float m_afRefRayDirection[4], m_afRefInvRayDirection[4]; float m_fInvGradFactor; float m_fGradFactor; RxVoxelShader* m_pShader; float m_fLocalizerPos[4][3]; int m_iLocalizerPlane[4]; int m_iPlaneOrder[4][3]; float m_afCropMin[3], m_afCropMax[3]; float m_afByteTable[256];// float m_afRayTable[3][100][2000]; float m_afRayTable[1000]; float m_fA, m_fB, m_fC, m_fD1, m_fD2, m_fDenom; int m_aiCropMin[3], m_aiCropMax[3]; int m_iMin, m_iMax; LPBYTE m_pObject2x2, m_pObject8x8; float m_fBrightnessFactor; float m_fSampleDistance;};inline unsigned char RxVRRayCastingAgent::GetMask(unsigned char* pbyMask, int iOffset){ int iQuotient, iRemainder; iQuotient = iOffset >> 3; iRemainder = iOffset & 0x07; return (pbyMask[iQuotient] >> (7 - iRemainder)) & 0x01;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -