My self-made 3D-printable designs, mainly in OpenSCAD
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

Spool Holder.scad 2.8KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. /*
  2. * Based on the "Fabrikator mini Esun Spool holder" by "Rlw":
  3. * http://www.thingiverse.com/thing:1324831
  4. *
  5. * Recreated and parameterized by:
  6. * Thomas Buck <xythobuz@xythobuz.de> in March 2016
  7. *
  8. * Licensed under the Creative Commons - Attribution license.
  9. *
  10. * Settings suggested by the original author:
  11. * Rafts: No
  12. * Supports: No
  13. * Resolution: 0.2mm
  14. * Infill: 15%
  15. */
  16. // Modify the overall length (moving the top part)
  17. size_modifier = -25;
  18. // Spool width
  19. spool_width = 35;
  20. // Distance of spool rollers from border
  21. balls_distance = 7.5;
  22. // width of outer spool border
  23. outer_border_width = 6;
  24. // set if the inner spool border should be rounded
  25. // to save some more material
  26. round_top = true;
  27. // -----------------------------------------------------------
  28. inner_border_width = round_top ? 10 : 5;
  29. body_height_modifier = round_top ? -19 : 0;
  30. // -----------------------------------------------------------
  31. // a cylinder cut in half in the middle
  32. module half_cylinder(h, r) {
  33. difference() {
  34. cylinder(h, r, r);
  35. translate([0, -r, 0]) cube([r, 2 * r, h]);
  36. }
  37. }
  38. // -----------------------------------------------------------
  39. //import("fabrikator_mini_gsun_5kg_175mm__spool_holder.stl");
  40. // upper body
  41. translate([5, -19, 0])
  42. cube([5, 51 + size_modifier + body_height_modifier, 40]);
  43. // lower body
  44. translate([5, -43, 0])
  45. cube([4, 24, 40]);
  46. // upper border
  47. translate([10, -19, 0])
  48. cube([9, 5, 40]);
  49. // upper lip
  50. translate([14, -24, 0])
  51. cube([5, 5, 40]);
  52. // lower border
  53. translate([9, -43, 0])
  54. cube([3, 3, 40]);
  55. // stabilization
  56. translate([0, size_modifier, 0]) difference() {
  57. rotate([0, 0, 45]) translate([2.5, -5, 0]) cube([4, 21, 40]);
  58. translate([5, -5, 0]) cube([10, 10, 40]);
  59. translate([-10, 13, 0]) cube([10, 10, 40]);
  60. }
  61. // inner border
  62. translate([0, size_modifier, 0])
  63. scale([1, 0.85, 1])
  64. translate([0, 15.5, 20])
  65. rotate([-90, 0, 0])
  66. rotate([0, 90, 0])
  67. half_cylinder(inner_border_width, 20);
  68. // outer border
  69. translate([0, size_modifier, 0])
  70. scale([1, 0.85, 1])
  71. translate([-(spool_width + outer_border_width), 15.5, 20])
  72. rotate([-90, 0, 0])
  73. rotate([0, 90, 0])
  74. half_cylinder(outer_border_width, 20);
  75. // roll plane
  76. translate([0, size_modifier, 0])
  77. translate([-(spool_width + outer_border_width), 13, 0])
  78. cube([spool_width + outer_border_width + inner_border_width, 1, 40]);
  79. // roll
  80. translate([0, size_modifier, 0])
  81. scale([1, 0.4, 1])
  82. translate([-spool_width, 33, 20])
  83. rotate([-90, 0, 0])
  84. rotate([0, 90, 0])
  85. half_cylinder(spool_width, 20);
  86. // rolling balls
  87. translate([0, size_modifier, 0])
  88. translate([-(spool_width - balls_distance), 19, 20])
  89. sphere(r = 3);
  90. translate([0, size_modifier, 0])
  91. translate([-balls_distance, 19, 20])
  92. sphere(r = 3);