-/*=========================================================================
+/*========================================================================
Program: vv http://www.creatis.insa-lyon.fr/rio/vv
Authors belong to:
#include "itkRayCastInterpolateImageFunctionWithOrigin.h"
#include "vnl/vnl_math.h"
-
+#include "clitkCommon.h"
// Put the helper class in an anonymous namespace so that it is not
// exposed to the user
typename InputImageType::SpacingType spacing=this->m_Image->GetSpacing();
if (m_ValidRay)
- return vcl_sqrt(m_VoxelIncrement[0]*spacing[0]*m_VoxelIncrement[0]*spacing[0]
+ return std::sqrt(m_VoxelIncrement[0]*spacing[0]*m_VoxelIncrement[0]*spacing[0]
+ m_VoxelIncrement[1]*spacing[1]*m_VoxelIncrement[1]*spacing[1]
+ m_VoxelIncrement[2]*spacing[2]*m_VoxelIncrement[2]*spacing[2] );
else
+ C*m_BoundingCorner[c1][2] );
// initialise plane value and normalise
- m_BoundingPlane[j][0] = A/vcl_sqrt(A*A + B*B + C*C);
- m_BoundingPlane[j][1] = B/vcl_sqrt(A*A + B*B + C*C);
- m_BoundingPlane[j][2] = C/vcl_sqrt(A*A + B*B + C*C);
- m_BoundingPlane[j][3] = D/vcl_sqrt(A*A + B*B + C*C);
+ m_BoundingPlane[j][0] = A/std::sqrt(A*A + B*B + C*C);
+ m_BoundingPlane[j][1] = B/std::sqrt(A*A + B*B + C*C);
+ m_BoundingPlane[j][2] = C/std::sqrt(A*A + B*B + C*C);
+ m_BoundingPlane[j][3] = D/std::sqrt(A*A + B*B + C*C);
if ( (A*A + B*B + C*C) == 0 ) {
itk::ExceptionObject err(__FILE__, __LINE__);
{
double maxInterDist, interDist;
double cornerVect[4][3];
+ for(clitk::uint i=0; i<4; i++)
+ for(clitk::uint j=0; j<3; j++)
+ cornerVect[i][j] = 0.0; // to avoid warning
int cross[4][3], noInterFlag[6];
int nSidesCrossed, crossFlag, c[4];
double ax, ay, az, bx, by, bz;
// Calculate the number of voxels in each direction
- xNum = vcl_fabs(m_RayVoxelStartPosition[0] - m_RayVoxelEndPosition[0]);
- yNum = vcl_fabs(m_RayVoxelStartPosition[1] - m_RayVoxelEndPosition[1]);
- zNum = vcl_fabs(m_RayVoxelStartPosition[2] - m_RayVoxelEndPosition[2]);
+ xNum = std::fabs(m_RayVoxelStartPosition[0] - m_RayVoxelEndPosition[0]);
+ yNum = std::fabs(m_RayVoxelStartPosition[1] - m_RayVoxelEndPosition[1]);
+ zNum = std::fabs(m_RayVoxelStartPosition[2] - m_RayVoxelEndPosition[2]);
// The direction iterated in is that with the greatest number of voxels
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
startOK = false;
endOK = false;
- Istart[0] = (int) vcl_floor(m_RayVoxelStartPosition[0]);
- Istart[1] = (int) vcl_floor(m_RayVoxelStartPosition[1]);
- Istart[2] = (int) vcl_floor(m_RayVoxelStartPosition[2]);
+ Istart[0] = (int) std::floor(m_RayVoxelStartPosition[0]);
+ Istart[1] = (int) std::floor(m_RayVoxelStartPosition[1]);
+ Istart[2] = (int) std::floor(m_RayVoxelStartPosition[2]);
if( (Istart[0] >= 0) && (Istart[0] + Idirn[0] < m_NumberOfVoxelsInX) &&
(Istart[1] >= 0) && (Istart[1] + Idirn[1] < m_NumberOfVoxelsInY) &&
m_TotalRayVoxelPlanes--;
}
- Istart[0] = (int) vcl_floor(m_RayVoxelStartPosition[0]
+ Istart[0] = (int) std::floor(m_RayVoxelStartPosition[0]
+ m_TotalRayVoxelPlanes*m_VoxelIncrement[0]);
- Istart[1] = (int) vcl_floor(m_RayVoxelStartPosition[1]
+ Istart[1] = (int) std::floor(m_RayVoxelStartPosition[1]
+ m_TotalRayVoxelPlanes*m_VoxelIncrement[1]);
- Istart[2] = (int) vcl_floor(m_RayVoxelStartPosition[2]
+ Istart[2] = (int) std::floor(m_RayVoxelStartPosition[2]
+ m_TotalRayVoxelPlanes*m_VoxelIncrement[2]);
if( (Istart[0] >= 0) && (Istart[0] + Idirn[0] < m_NumberOfVoxelsInX) &&
switch( m_TraversalDirection ) {
case TRANSVERSE_IN_X: {
- y = m_Position3Dvox[1] - vcl_floor(m_Position3Dvox[1]);
- z = m_Position3Dvox[2] - vcl_floor(m_Position3Dvox[2]);
+ y = m_Position3Dvox[1] - std::floor(m_Position3Dvox[1]);
+ z = m_Position3Dvox[2] - std::floor(m_Position3Dvox[2]);
break;
}
case TRANSVERSE_IN_Y: {
- y = m_Position3Dvox[0] - vcl_floor(m_Position3Dvox[0]);
- z = m_Position3Dvox[2] - vcl_floor(m_Position3Dvox[2]);
+ y = m_Position3Dvox[0] - std::floor(m_Position3Dvox[0]);
+ z = m_Position3Dvox[2] - std::floor(m_Position3Dvox[2]);
break;
}
case TRANSVERSE_IN_Z: {
- y = m_Position3Dvox[0] - vcl_floor(m_Position3Dvox[0]);
- z = m_Position3Dvox[1] - vcl_floor(m_Position3Dvox[1]);
+ y = m_Position3Dvox[0] - std::floor(m_Position3Dvox[0]);
+ z = m_Position3Dvox[1] - std::floor(m_Position3Dvox[1]);
break;
}
default: {
RayCastHelper<TInputImage, TCoordRep>
::IncrementIntensities(double increment)
{
- short inc = (short) vcl_floor(increment + 0.5);
+ short inc = (short) std::floor(increment + 0.5);
if (! m_ValidRay) {
return;