Guest User

Untitled

a guest
May 26th, 2018
108
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.08 KB | None | 0 0
  1. (ns test3d.core
  2. (:import java.applet.Applet
  3. java.awt.BorderLayout
  4. [javax.media.j3d BranchGroup TransformGroup
  5. Transform3D]
  6. javax.vecmath.AxisAngle4d
  7. [com.sun.j3d.utils
  8. applet.MainFrame universe.SimpleUniverse
  9. geometry.ColorCube]))
  10.  
  11. (defn config []
  12. (SimpleUniverse/getPreferredConfiguration))
  13.  
  14. (defn root-scene []
  15. (let [scene (BranchGroup.)
  16. t3d (Transform3D.)
  17. rotY (Transform3D.)]
  18. (.setRotation t3d (AxisAngle4d. 0.57 0.57 -0.57 (/ (Math/PI) 4.0)))
  19. (let [trans (TransformGroup. t3d)]
  20. (.addChild scene trans)
  21. (.addChild trans (ColorCube. 0.4))
  22. scene)))
  23.  
  24. (defn universe [c]
  25. (let [univ (SimpleUniverse. c)]
  26. (.. univ
  27. getViewingPlatform
  28. setNominalViewingTransform)
  29. (.addBranchGraph univ (root-scene))
  30. univ))
  31.  
  32. (defn canvas []
  33. (let [c (Canvas3D. (config))]
  34. (universe c)
  35. c))
  36.  
  37. (defn applet []
  38. (let [ap (proxy [Applet] []
  39. (paint [g]
  40. (.drawLine g 100 100 300 400)))]
  41. (prn ap)
  42. (.setLayout ap (BorderLayout.))
  43. (.add ap (canvas) BorderLayout/CENTER)
  44. ap))
  45.  
  46. ; (applet)
  47.  
  48. (MainFrame. (applet) 500, 500)
Add Comment
Please, Sign In to add comment