Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- S[q_] := Module[{x, y, e = Sqrt[Plus @@ Map[#^2 &, q]]},
- x = Sqrt[(q[[1]] + e)/2];
- y = (e - q[[1]]) x/(q[[2]]^2 + q[[3]]^2 + q[[4]]^2);
- {x, y q[[2]], y q[[3]], y q[[4]]}
- ];
- Q[qc_, qlist_] :=
- Flatten[
- Map[
- Module[{q = S[# - (qc~Join~{0, 0})]}, {q, -q}] &,
- qlist
- ], 1];
- MakeFractal[qc_] := Module[{qlist = {{1.0, 1.0, 1.0, 1.0}}},
- Do[qlist = Q[qc, qlist], {6}];
- Graphics3D[
- {Specularity[White, 6],
- {Hue[#[[4]]], Cuboid[Delete[#, 4], Delete[#, 4] + 0.06]} & /@
- qlist
- },
- Lighting -> "Neutral",
- Boxed -> False,
- Background -> RGBColor[0, 0, 0],
- ImageSize -> {800, 800}
- ]
- ];
- DynamicModule[{pt = {0, 0}},
- LocatorPane[Dynamic[pt], Dynamic@MakeFractal[pt], {{-1, -1}, {1, 1}}
- , AutoAction -> True, ImageSize -> {800, 800}]
- ]
Advertisement
Add Comment
Please, Sign In to add comment