Advertisement
Guest User

Untitled

a guest
Mar 27th, 2017
51
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.88 KB | None | 0 0
  1. float VascularSystemData::GetVesselDiameterAroundPos(D3DXVECTOR3 position, int *usedVertex) {
  2.  
  3.     const int RAY_COUNT = 6;
  4.     D3DXVECTOR3 rayMovement[RAY_COUNT];
  5.     int nr[RAY_COUNT], actualNr;
  6.     float nrDiam[RAY_COUNT];
  7.     float actualDiam = FLT_MAX;
  8.  
  9.     rayMovement[0] = D3DXVECTOR3(0, 0, (float)INT_MAX);
  10.     rayMovement[1] = D3DXVECTOR3(0, 0, (float)(-INT_MAX));
  11.     rayMovement[2] = D3DXVECTOR3((float)INT_MAX, 0, 0);
  12.     rayMovement[3] = D3DXVECTOR3((float)(-INT_MAX), 0, 0);
  13.     rayMovement[4] = D3DXVECTOR3(0, (float)INT_MAX, 0);
  14.     rayMovement[5] = D3DXVECTOR3(0, (float)(-INT_MAX), 0);
  15.  
  16.     for (int i = 0; i < RAY_COUNT; i++)
  17.     {
  18.         nr[i] = GetVertexIndexByRay(position, rayMovement[i]);
  19.         nrDiam[i] = GetDiameterByVertex(nr[i]);
  20.         if (nrDiam[i] < actualDiam)
  21.         {
  22.             actualDiam = nrDiam[i];
  23.             actualNr = i;
  24.         }
  25.     }
  26.  
  27.     if (usedVertex != NULL)
  28.         *usedVertex = actualNr;
  29.            
  30.     return  actualDiam;
  31. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement