PasteRack.org
Paste # 11590
2021-03-02 21:41:56

Forked from paste # 14538.

Fork as a new paste.

Paste viewed 112 times.


Embed:

  1. #lang htdp/bsl
  2. (require 2htdp/image)
  3.  
  4. (define pt (right-triangle 100 50 "solid" "purple"))
  5. pt
  6. (define pti (right-triangle 100 50 "solid" "pink"))
  7. pti
  8. (define step1 (rotate 27 pt))
  9. step1
  10. (define step2 (flip-vertical step1))
  11. step2
  12. (define gap (square 5 "solid" "pink"))
  13.  
  14. (define triangle-assembly (rotate -90 (above step2 gap step1)))
  15. triangle-assembly
  16.  
  17. (define base-1 (circle 90 "solid" "lightgreen"))
  18. base-1
  19. (define words (rectangle 50 20 "solid" "lightblue")); (text "base" 48 "gray"))
  20. words
  21. (define base-2 (overlay words base-1))
  22. base-2
  23.  
  24. (define base-3
  25.   (crop-top base-2 15))
  26. (define base-4
  27.   (rotate 120 (crop-top (rotate -120 base-3)
  28.                         15)))
  29. (define base-5
  30.   (rotate -120 (crop-top (rotate 120 base-4)
  31.                          15)))
  32.  
  33. (define step3
  34.   (above triangle-assembly
  35.          gap gap gap
  36.          base-5))
  37.  
  38. (define step4a (rotate 120 step3))
  39. (define step4b (above triangle-assembly
  40.                       gap gap gap
  41.                       step4a))
  42. (define step5a (rotate 120 step4b))
  43. (define step5b (above triangle-assembly
  44.                       gap gap gap
  45.                       step5a))
  46.  
  47. "This is a picture of what you could reasonably do."
  48. "Notice the triangle placements are not perfect."
  49. (rotate 120 step5b)
  50.  
  51. ;; BOSS method
  52. ;; Put the first triangle assembly the way we did in class.
  53. ;; but put another invisible shape the same size on the other size of the circle to keep it balanced.
  54. ;; Measure the height of that to make an invisible circle to guide the placement of the other parts.

=>