summaryrefslogtreecommitdiffstats
path: root/cuda/3d/par3d_bp.cu
diff options
context:
space:
mode:
authorWillem Jan Palenstijn <WillemJan.Palenstijn@uantwerpen.be>2014-04-16 11:13:01 +0000
committerwpalenst <WillemJan.Palenstijn@uantwerpen.be>2014-04-16 11:13:01 +0000
commit7ce0b7cca179e903e8011cd96c9910cbdf62ae00 (patch)
tree2ebfa5687c8126d1d2b345a1bfc8c374a62a227b /cuda/3d/par3d_bp.cu
parent3a6769465bee7d56d0ddff36613b886446421e07 (diff)
downloadastra-7ce0b7cca179e903e8011cd96c9910cbdf62ae00.tar.gz
astra-7ce0b7cca179e903e8011cd96c9910cbdf62ae00.tar.bz2
astra-7ce0b7cca179e903e8011cd96c9910cbdf62ae00.tar.xz
astra-7ce0b7cca179e903e8011cd96c9910cbdf62ae00.zip
Remove padding in 3D cuda in favour of Border mode
Diffstat (limited to 'cuda/3d/par3d_bp.cu')
-rw-r--r--cuda/3d/par3d_bp.cu14
1 files changed, 7 insertions, 7 deletions
diff --git a/cuda/3d/par3d_bp.cu b/cuda/3d/par3d_bp.cu
index 872b1eb..9bf9a9f 100644
--- a/cuda/3d/par3d_bp.cu
+++ b/cuda/3d/par3d_bp.cu
@@ -69,9 +69,9 @@ static bool bindProjDataTexture(const cudaArray* array)
{
cudaChannelFormatDesc channelDesc = cudaCreateChannelDesc<float>();
- gT_par3DProjTexture.addressMode[0] = cudaAddressModeClamp;
- gT_par3DProjTexture.addressMode[1] = cudaAddressModeClamp;
- gT_par3DProjTexture.addressMode[2] = cudaAddressModeClamp;
+ gT_par3DProjTexture.addressMode[0] = cudaAddressModeBorder;
+ gT_par3DProjTexture.addressMode[1] = cudaAddressModeBorder;
+ gT_par3DProjTexture.addressMode[2] = cudaAddressModeBorder;
gT_par3DProjTexture.filterMode = cudaFilterModeLinear;
gT_par3DProjTexture.normalized = false;
@@ -139,8 +139,8 @@ __global__ void dev_par3D_BP(void* D_volData, unsigned int volPitch, int startAn
const float fUNum = fCuc + fX * fCux + fY * fCuy + fZ * fCuz;
const float fVNum = fCvc + fX * fCvx + fY * fCvy + fZ * fCvz;
- const float fU = fUNum + 1.0f;
- const float fV = fVNum + 1.0f;
+ const float fU = fUNum;
+ const float fV = fVNum;
fVal += tex3D(gT_par3DProjTexture, fU, fAngle, fV); // TODO: check order
@@ -216,8 +216,8 @@ __global__ void dev_par3D_BP_SS(void* D_volData, unsigned int volPitch, int star
const float fUNum = fCuc + fXs * fCux + fYs * fCuy + fZs * fCuz;
const float fVNum = fCvc + fXs * fCvx + fYs * fCvy + fZs * fCvz;
- const float fU = fUNum + 1.0f;
- const float fV = fVNum + 1.0f;
+ const float fU = fUNum;
+ const float fV = fVNum;
fVal += tex3D(gT_par3DProjTexture, fU, fAngle, fV); // TODO: check order
fZs += fSubStep;