Guest User

Untitled

a guest
Mar 12th, 2021
76
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /// @param x
  2. /// @param y
  3. /// @param rad
  4. /// @param thick
  5. /// @param angle1
  6. /// @param angle2
  7. function draw_arc(argument0, argument1, argument2, argument3, argument4, argument5) {
  8.  
  9. var xx = argument0,
  10. yy=argument1,
  11. rad=argument2,
  12. th=argument3,
  13. a1=argument4*pi/180,
  14. a2=argument5*pi/180,
  15. qual = ceil(abs(a2-a1)*global.arc_quality/(2*pi));
  16.  
  17. draw_primitive_begin(pr_trianglestrip);
  18. for(var i=0;i<=qual;i+=1){
  19. var a = lerp(a1,a2,i/qual),
  20. lx = cos(a),//lengthdir_x(1,a),
  21. ly = -sin(a);//lengthdir_y(1,a);
  22. draw_vertex(xx+lx*rad,yy+ly*rad);
  23. draw_vertex(xx+lx*(rad-th),yy+ly*(rad-th));
  24. }
  25. draw_primitive_end();
  26.  
  27.  
  28. }
  29.  
  30. /// @param x
  31. /// @param y
  32. /// @param rad
  33. /// @param thick
  34. /// @param a1
  35. /// @param a2
  36. /// @param alpha_out
  37. /// @param alpha_in
  38. function draw_arc_alpha(argument0, argument1, argument2, argument3, argument4, argument5, argument6, argument7) {
  39.  
  40. var xx = argument0,
  41. yy=argument1,
  42. rad=argument2,
  43. th=argument3,
  44. a1=argument4,
  45. a2=argument5,
  46. alpha_out = argument6,
  47. alpha_in = argument7,
  48. qual = ceil(abs(a2-a1)*global.arc_quality/360);
  49.  
  50. draw_primitive_begin(pr_trianglestrip);
  51. for(var i=0;i<=qual;i+=1){
  52. var a = lerp(a1,a2,i/qual),
  53. lx = lengthdir_x(1,a),
  54. ly = lengthdir_y(1,a);
  55. draw_vertex_colour(xx+lx*rad,yy+ly*rad,draw_get_colour(),alpha_out);
  56. draw_vertex_colour(xx+lx*(rad-th),yy+ly*(rad-th),draw_get_colour(),alpha_in);
  57. }
  58. draw_primitive_end();
  59.  
  60.  
  61. }
  62.  
  63. /// @param x
  64. /// @param y
  65. /// @param xrad
  66. /// @param yrad
  67. /// @param a1
  68. /// @param a2
  69. function draw_arc_ellipse(argument0, argument1, argument2, argument3, argument4, argument5) {
  70.  
  71. var xx = argument0,
  72. yy=argument1,
  73. xrad=argument2,
  74. yrad=argument3,
  75. a1=argument4*pi/180,
  76. a2=argument5*pi/180,
  77. qual = ceil(abs(a2-a1)*global.arc_quality/(2*pi));
  78.  
  79. draw_primitive_begin(pr_trianglestrip);
  80. for(var i=0;i<=qual;i+=1){
  81. var a = lerp(a1,a2,i/qual),
  82. lx = cos(a),//lengthdir_x(1,a),
  83. ly = -sin(a);//lengthdir_y(1,a);
  84. draw_vertex(xx+lx*xrad,yy+ly*yrad);
  85. draw_vertex(xx,yy);
  86. }
  87. draw_primitive_end();
  88.  
  89.  
  90. }
  91.  
  92.  
  93. /// @param x
  94. /// @param y
  95. /// @param xrad
  96. /// @param yrad
  97. /// @param ang1
  98. /// @param ang2
  99. /// @param thick
  100. /// @param alphaIN
  101. /// @param alphaOUT
  102. function draw_arc_ellipse_alpha(argument0, argument1, argument2, argument3, argument4, argument5, argument6, argument7, argument8) {
  103.  
  104. var xx = argument0,
  105. yy=argument1,
  106. xrad=argument2,
  107. yrad=argument3,
  108. a1=argument4*pi/180,
  109. a2=argument5*pi/180,
  110. thick = argument6,
  111. alphai=argument7,
  112. alphao=argument8,
  113. xrad2 = xrad-thick,
  114. yrad2 = yrad-thick,
  115. qual = ceil(abs(a2-a1)*global.arc_quality/(2*pi)),
  116. col = draw_get_color();
  117.  
  118. draw_primitive_begin(pr_trianglestrip);
  119. for(var i=0;i<=qual;i+=1){
  120. var a = lerp(a1,a2,i/qual),
  121. lx = cos(a),//lengthdir_x(1,a),
  122. ly = -sin(a);//lengthdir_y(1,a);
  123. draw_vertex_color(xx+lx*xrad,yy+ly*yrad,col,alphao);
  124. draw_vertex_color(xx+lx*xrad2,yy+ly*yrad2,col,alphai);
  125. }
  126. draw_primitive_end();
  127.  
  128.  
  129. }
  130.  
  131.  
RAW Paste Data