Advertisement
pani_c

Untitled

Jan 17th, 2017
97
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.73 KB | None | 0 0
  1. IJ.log("Tangentes: ");
  2. double [] tangents = new double[n];
  3.  
  4.  
  5. for(int k =0; k < n; k++) {
  6. double tangent = .0;
  7. double sum = .0;
  8. double sumEccentr = .0;
  9.  
  10.  
  11. for(int j = 0; j < segments.size(); j++){
  12. double theta = .0;
  13. Integer [] seg = segments.get(j);
  14. int f = seg[0];
  15. int l = seg[1];
  16. int segmentLen = 0;
  17. int pointPosition = 0;
  18. //IJ.log("Point " + k);
  19. //IJ.log("Firts " + f);
  20. //IJ.log("Last " + l);
  21. boolean ok = false; //le point appartient pas à un segment
  22.  
  23. if(f > l) {
  24. if (k >= f ) {
  25. segmentLen = (n - f) + l;
  26. pointPosition = k - f +1 ;
  27. ok = true;
  28. }
  29. else {
  30. if (k <= l) {
  31. segmentLen = (n - f) + l + 1;
  32. pointPosition = segmentLen - (l - k);//todo
  33. ok = true;
  34. }
  35. }
  36. }
  37. else {
  38. if (k >= f && k <= l){
  39. pointPosition = k - f + 1;
  40. segmentLen = l - f + 1;
  41. ok = true;
  42. }
  43. }
  44.  
  45. if(ok){
  46. theta = Math.atan2((double)p.getContourTPY(k),(double) p.getContourTPX(k));
  47. //excentricité
  48. //IJ.log("PointPos " + pointPosition);
  49. //IJ.log("segmenLen " + segmentLen);
  50. double eccentr = (double) pointPosition / (double) segmentLen;
  51. //IJ.log("Eccentr " + eccentr);
  52. double alpha = .0;
  53.  
  54. if(eccentr < 0.5){
  55. alpha = 2*eccentr;
  56. }
  57. else if (eccentr == 0.5){
  58. alpha = 1;
  59. }
  60. else {
  61. alpha = 2*(1-eccentr);
  62. }
  63. //IJ.log("Alpha " + alpha);
  64. //IJ.log("Theta " + theta);
  65. sum += theta*alpha;
  66. sumEccentr += alpha;
  67. }
  68. }
  69. //IJ.log("Point: " + k + ": sum -->" + sum);
  70. //IJ.log("Point: " + k + ": sumEcc -->" + sumEccentr);
  71. tangent = sum/sumEccentr;
  72. tangents[k] = tangent;
  73. IJ.log("Point: " + k + ": theta -->" + tangent);
  74. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement