Advertisement
Guest User

Untitled

a guest
Oct 27th, 2016
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.66 KB | None | 0 0
  1. if RUBY_PLATFORM == 'java'
  2. require 'toxiclibs.jar'
  3.  
  4. def import_class_list(list, string)
  5. list.each { |klass| java_import format(string, klass) }
  6. end
  7.  
  8. module Simulation
  9. include_package 'toxi.sim.automata'
  10. include_package 'toxi.sim.dla'
  11. erosion = %w(ErosionFunction TalusAngleErosion ThermalErosion)
  12. erosion_format = 'toxi.sim.erosion.%s'
  13. import_class_list(erosion, erosion_format)
  14. fluids = %w(FluidSolver2D FluidSolver3D)
  15. fluids_format = 'toxi.sim.fluids.%s'
  16. import_class_list(fluids, fluids_format)
  17. java_import 'toxi.sim.grayscott.GrayScott'
  18. end
  19.  
  20. module Physics
  21. behavior2d = %w(AttractionBehavior2D ConstantForceBehavior2D GravityBehavior2D ParticleBehavior2D)
  22. behavior2d_format = 'toxi.physics2d.behaviors.%s'
  23. import_class_list(behavior2d, behavior2d_format)
  24. include_package 'toxi.physics2d.constraints'
  25. include_package 'toxi.physics2d'
  26. behavior3d = %w(AttractionBehavior3D ConstantForceBehavior3D GravityBehavior3D ParticleBehavior3D)
  27. behavior3d_format = 'toxi.physics3d.behaviors.%s'
  28. import_class_list(behavior3d, behavior3d_format)
  29. include_package 'toxi.physics3d.constraints'
  30. include_package 'toxi.physics3d'
  31. end
  32.  
  33. module Volume
  34. include_package 'toxi.volume'
  35. end
  36.  
  37. module Toxi
  38. include_package 'toxi.color'
  39. include_package 'toxi.color.theory'
  40. include_package 'toxi.util.datatypes'
  41. java_import 'toxi.util.events.EventDispatcher'
  42. utils = %w{DateUtils FileSequenceDescriptor FileUtils}
  43. utils_format = 'toxi.util.%s'
  44. import_class_list(utils, utils_format)
  45. subdiv = %w(CentroidSubdiv DisplacementSubdivision DualDisplacementSubdivision
  46. DualSubdivision EdgeLengthComparator FaceCountComparator
  47. MidpointDisplacementSubdivision MidpointSubdiv MidpointSubdivision
  48. NewSubdivStrategy NormalDisplacementSubdivision SubdivisionStrategy
  49. TriSubdivision)
  50. subdiv_format = 'toxi.geom.mesh.subdiv.%s'
  51. import_class_list(subdiv, subdiv_format)
  52. nurbs = %w(BasicNurbsCurve BasicNurbsSurface ControlNet CurveCreator CurveUtils
  53. InterpolationException KnotVector NurbsCreator NurbsCurve NurbsMeshCreator
  54. NurbsSurface)
  55. nurbs_format = 'toxi.geom.nurbs.%s'
  56. import_class_list(nurbs, nurbs_format)
  57. include_package 'toxi.math'
  58. noise = %w(SimplexNoise PerlinNoise)
  59. noise_format = 'toxi.math.noise.%s'
  60. import_class_list(noise, noise_format)
  61. geom = %w(AABB Axis3D AxisAlignedCylinder BernsteinPolynomial BezierCurve2D
  62. BezierCurve3D BooleanShapeBuilder BoxIntersector Circle CircleIntersector
  63. Cone ConvexPolygonClipper CoordinateExtractor Ellipse GMatrix GVector
  64. GlobalGridTesselator GridTesselator Intersector2D Intersector3D IsectData2D
  65. IsectData3D Line2D Line3D LineStrip2D LineStrip3D LocalGridTesselator Matrix3d
  66. Matrix4f Matrix4x4 MatrixSizeException OctreeVisitor Origin3D Plane
  67. PlaneIntersector PointCloud3D PointOctree PointQuadtree Polygon2D
  68. PolygonClipper2D PolygonTesselator QuadtreeVisitor Quaternion Ray2D Ray3D
  69. Ray3DIntersector ReadonlyVec2D ReadonlyVec3D ReadonlyVec4D Rect Reflector3D
  70. Shape2D Shape3D SingularMatrixException SpatialBins SpatialIndex Sphere
  71. SphereIntersectorReflector Spline2D Spline3D SutherlandHodgemanClipper
  72. Triangle2D Triangle3D TriangleIntersector Vec2D Vec3D Vec4D VecMathUtil
  73. XAxisCylinder YAxisCylinder ZAxisCylinder)
  74. geom_format = 'toxi.geom.%s'
  75. import_class_list(geom, geom_format)
  76. end
  77.  
  78. module Gfx
  79. include_package 'toxi.processing'
  80. end
  81.  
  82. # to disambiguate our own Vec2D and Vec3D we give new name to toxi versions
  83. TVec2D = Toxi::Vec2D
  84. TVec3D = Toxi::Vec3D
  85. AABB = Toxi::AABB
  86. volume = %w(AdditiveBrush ArrayIsoSurface BoxBrush BrushMode HashIsoSurface
  87. IsoSurface MarchingCubesIndex MeshLatticeBuilder MeshVoxelizer
  88. MultiplyBrush PeakBrush ReplaceBrush RoundBrush VolumetricBrush
  89. VolumetricHashMap VolumetricSpace VolumetricSpaceArray)
  90. volume_format = 'toxi.volume.%s'
  91. import_class_list(volume, volume_format)
  92. mesh = %w(BezierPatch BoxSelector DefaultSTLColorModel DefaultSelector Face
  93. LaplacianSmooth MaterialiseSTLColorModel Mesh3D MeshIntersector OBJWriter
  94. PLYWriter PlaneSelector STLColorModel STLReader STLWriter SphereFunction
  95. SphericalHarmonics SuperEllipsoid SurfaceFunction SurfaceMeshBuilder
  96. Terrain TriangleMesh Vertex VertexSelector WEFace WEMeshFilterStrategy
  97. WETriangleMesh WEVertex WingedEdge)
  98. mesh_format = 'toxi.geom.mesh.%s'
  99. import_class_list(mesh, mesh_format)
  100. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement