Advertisement
Guest User

Untitled

a guest
Jun 24th, 2019
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.82 KB | None | 0 0
  1. double * data = new double[3*points.size()];
  2. for (std::uint64_t n = 0; n <points.size(); n++) {
  3. pData[3*n ]=points[n].GetX();
  4. pData[3*n+1]=points[n].GetY();
  5. pData[3*n+2]=points[n].GetZ();
  6. }
  7. size_t nodes;
  8. unsigned char* tree = c_function(points.size(), data, &nodes);
  9. delete[] data;
  10.  
  11. unsigned char * c_function(size_t nPoints, double const * const dData, size_t * const dSiz)
  12. {
  13. double *tempCoord1;
  14. unsigned char *retval, *retvalIt;
  15.  
  16. retval = malloc(335 + UINT64_C(2) + UINT64_C(6) * sizeof(double)); retvalIt = retval+177;
  17. tempCoord1 = malloc(3*67*sizeof(double)); // << this mallocs over dData
  18. *tempCoord1=32.9;
  19. free(tempCoord1);
  20. if (dSiz) *dSiz = (size_t)(retvalIt-retval);
  21. retvalIt = realloc(retval,(size_t)(retvalIt-retval));
  22. return (retvalIt) ? retvalIt : retval;
  23. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement