Dancing Cubes on Torus Knots
Loading the math board and drawing, please wait…
This example demonstrates the dynamic transformation of cubes on torus knots. It involves key mathematical concepts such as cubes, coordinate geometry, and transformations. Using GeoGebra commands like Point, Cube, CurveCartesian, and Rotate, the dynamic trajectory of cubes on torus knots can be constructed. Suitable for high school or university geometry and transformation courses.
GeoGebra Commands & Parameters
Point(Circle[B, Distance[A, B], Segment[A, B]]) → CCube(A, B, C) → a, D, faceCDHG, faceEFGH, edgeAD, edgeAB, edgeBC, edgeCD, edgeAE, edgeDH, edgeEH, edgeEF, E, edgeBF, edgeFG, edgeCG, edgeGH, F, G, H, faceABCD, faceADHE, faceABFE, faceBCGFCurveCartesian(((2 + cos((((q * i) * 2) * π))) * cos((((p * i) * 2) * π))), ((2 + cos((((q * i) * 2) * π))) * sin((((p * i) * 2) * π))), sin((((q * i) * 2) * π)), i, 0, 1) → knotRotate(Translate[a, Vector[(0, 0, 0), knot(0 / n)]], t + 0, knot(0 / n)) → A0Rotate(Translate[a, Vector[(0, 0, 0), knot(1 / n)]], t + 1, knot(1 / n)) → A1Rotate(Translate[a, Vector[(0, 0, 0), knot(2 / n)]], t + 2, knot(2 / n)) → A2Rotate(Translate[a, Vector[(0, 0, 0), knot(3 / n)]], t + 3, knot(3 / n)) → A3Rotate(Translate[a, Vector[(0, 0, 0), knot(4 / n)]], t + 4, knot(4 / n)) → A4Rotate(Translate[a, Vector[(0, 0, 0), knot(5 / n)]], t + 5, knot(5 / n)) → A5Rotate(Translate[a, Vector[(0, 0, 0), knot(6 / n)]], t + 6, knot(6 / n)) → A6Rotate(Translate[a, Vector[(0, 0, 0), knot(7 / n)]], t + 7, knot(7 / n)) → A7Rotate(Translate[a, Vector[(0, 0, 0), knot(8 / n)]], t + 8, knot(8 / n)) → A8Rotate(Translate[a, Vector[(0, 0, 0), knot(9 / n)]], t + 9, knot(9 / n)) → A9Rotate(Translate[a, Vector[(0, 0, 0), knot(10 / n)]], t + 10, knot(10 / n)) → A10Rotate(Translate[a, Vector[(0, 0, 0), knot(11 / n)]], t + 11, knot(11 / n)) → A11Rotate(Translate[a, Vector[(0, 0, 0), knot(12 / n)]], t + 12, knot(12 / n)) → A12Rotate(Translate[a, Vector[(0, 0, 0), knot(13 / n)]], t + 13, knot(13 / n)) → A13Rotate(Translate[a, Vector[(0, 0, 0), knot(14 / n)]], t + 14, knot(14 / n)) → A14Rotate(Translate[a, Vector[(0, 0, 0), knot(15 / n)]], t + 15, knot(15 / n)) → A15Rotate(Translate[a, Vector[(0, 0, 0), knot(16 / n)]], t + 16, knot(16 / n)) → A16Rotate(Translate[a, Vector[(0, 0, 0), knot(17 / n)]], t + 17, knot(17 / n)) → A17Rotate(Translate[a, Vector[(0, 0, 0), knot(18 / n)]], t + 18, knot(18 / n)) → A18Rotate(Translate[a, Vector[(0, 0, 0), knot(19 / n)]], t + 19, knot(19 / n)) → A19Rotate(Translate[a, Vector[(0, 0, 0), knot(20 / n)]], t + 20, knot(20 / n)) → A20Rotate(Translate[a, Vector[(0, 0, 0), knot(21 / n)]], t + 21, knot(21 / n)) → A21Rotate(Translate[a, Vector[(0, 0, 0), knot(22 / n)]], t + 22, knot(22 / n)) → A22Rotate(Translate[a, Vector[(0, 0, 0), knot(23 / n)]], t + 23, knot(23 / n)) → A23Rotate(Translate[a, Vector[(0, 0, 0), knot(24 / n)]], t + 24, knot(24 / n)) → A24Rotate(Translate[a, Vector[(0, 0, 0), knot(25 / n)]], t + 25, knot(25 / n)) → A25Rotate(Translate[a, Vector[(0, 0, 0), knot(26 / n)]], t + 26, knot(26 / n)) → A26Rotate(Translate[a, Vector[(0, 0, 0), knot(27 / n)]], t + 27, knot(27 / n)) → A27Rotate(Translate[a, Vector[(0, 0, 0), knot(28 / n)]], t + 28, knot(28 / n)) → A28Rotate(Translate[a, Vector[(0, 0, 0), knot(29 / n)]], t + 29, knot(29 / n)) → A29Rotate(Translate[a, Vector[(0, 0, 0), knot(30 / n)]], t + 30, knot(30 / n)) → A30Rotate(Translate[a, Vector[(0, 0, 0), knot(31 / n)]], t + 31, knot(31 / n)) → A31Rotate(Translate[a, Vector[(0, 0, 0), knot(32 / n)]], t + 32, knot(32 / n)) → A32Rotate(Translate[a, Vector[(0, 0, 0), knot(33 / n)]], t + 33, knot(33 / n)) → A33Rotate(Translate[a, Vector[(0, 0, 0), knot(34 / n)]], t + 34, knot(34 / n)) → A34Rotate(Translate[a, Vector[(0, 0, 0), knot(35 / n)]], t + 35, knot(35 / n)) → A35Rotate(Translate[a, Vector[(0, 0, 0), knot(36 / n)]], t + 36, knot(36 / n)) → A36Rotate(Translate[a, Vector[(0, 0, 0), knot(37 / n)]], t + 37, knot(37 / n)) → A37Rotate(Translate[a, Vector[(0, 0, 0), knot(38 / n)]], t + 38, knot(38 / n)) → A38Rotate(Translate[a, Vector[(0, 0, 0), knot(39 / n)]], t + 39, knot(39 / n)) → A39Rotate(Translate[a, Vector[(0, 0, 0), knot(40 / n)]], t + 40, knot(40 / n)) → A40Rotate(Translate[a, Vector[(0, 0, 0), knot(41 / n)]], t + 41, knot(41 / n)) → A41Rotate(Translate[a, Vector[(0, 0, 0), knot(42 / n)]], t + 42, knot(42 / n)) → A42Rotate(Translate[a, Vector[(0, 0, 0), knot(43 / n)]], t + 43, knot(43 / n)) → A43Rotate(Translate[a, Vector[(0, 0, 0), knot(44 / n)]], t + 44, knot(44 / n)) → A44Rotate(Translate[a, Vector[(0, 0, 0), knot(45 / n)]], t + 45, knot(45 / n)) → A45Rotate(Translate[a, Vector[(0, 0, 0), knot(46 / n)]], t + 46, knot(46 / n)) → A46Rotate(Translate[a, Vector[(0, 0, 0), knot(47 / n)]], t + 47, knot(47 / n)) → A47Rotate(Translate[a, Vector[(0, 0, 0), knot(48 / n)]], t + 48, knot(48 / n)) → A48Rotate(Translate[a, Vector[(0, 0, 0), knot(49 / n)]], t + 49, knot(49 / n)) → A49Rotate(Translate[a, Vector[(0, 0, 0), knot(50 / n)]], t + 50, knot(50 / n)) → A50Rotate(Translate[a, Vector[(0, 0, 0), knot(51 / n)]], t + 51, knot(51 / n)) → A51Rotate(Translate[a, Vector[(0, 0, 0), knot(52 / n)]], t + 52, knot(52 / n)) → A52Rotate(Translate[a, Vector[(0, 0, 0), knot(53 / n)]], t + 53, knot(53 / n)) → A53Rotate(Translate[a, Vector[(0, 0, 0), knot(54 / n)]], t + 54, knot(54 / n)) → A54Rotate(Translate[a, Vector[(0, 0, 0), knot(55 / n)]], t + 55, knot(55 / n)) → A55Rotate(Translate[a, Vector[(0, 0, 0), knot(56 / n)]], t + 56, knot(56 / n)) → A56Rotate(Translate[a, Vector[(0, 0, 0), knot(57 / n)]], t + 57, knot(57 / n)) → A57Rotate(Translate[a, Vector[(0, 0, 0), knot(58 / n)]], t + 58, knot(58 / n)) → A58Rotate(Translate[a, Vector[(0, 0, 0), knot(59 / n)]], t + 59, knot(59 / n)) → A59Rotate(Translate[a, Vector[(0, 0, 0), knot(60 / n)]], t + 60, knot(60 / n)) → A60Rotate(Translate[a, Vector[(0, 0, 0), knot(61 / n)]], t + 61, knot(61 / n)) → A61Rotate(Translate[a, Vector[(0, 0, 0), knot(62 / n)]], t + 62, knot(62 / n)) → A62Rotate(Translate[a, Vector[(0, 0, 0), knot(63 / n)]], t + 63, knot(63 / n)) → A63Rotate(Translate[a, Vector[(0, 0, 0), knot(64 / n)]], t + 64, knot(64 / n)) → A64Rotate(Translate[a, Vector[(0, 0, 0), knot(65 / n)]], t + 65, knot(65 / n)) → A65Rotate(Translate[a, Vector[(0, 0, 0), knot(66 / n)]], t + 66, knot(66 / n)) → A66Rotate(Translate[a, Vector[(0, 0, 0), knot(67 / n)]], t + 67, knot(67 / n)) → A67Rotate(Translate[a, Vector[(0, 0, 0), knot(68 / n)]], t + 68, knot(68 / n)) → A68Rotate(Translate[a, Vector[(0, 0, 0), knot(69 / n)]], t + 69, knot(69 / n)) → A69Rotate(Translate[a, Vector[(0, 0, 0), knot(70 / n)]], t + 70, knot(70 / n)) → A70Rotate(Translate[a, Vector[(0, 0, 0), knot(71 / n)]], t + 71, knot(71 / n)) → A71Rotate(Translate[a, Vector[(0, 0, 0), knot(72 / n)]], t + 72, knot(72 / n)) → A72Rotate(Translate[a, Vector[(0, 0, 0), knot(73 / n)]], t + 73, knot(73 / n)) → A73Rotate(Translate[a, Vector[(0, 0, 0), knot(74 / n)]], t + 74, knot(74 / n)) → A74Rotate(Translate[a, Vector[(0, 0, 0), knot(75 / n)]], t + 75, knot(75 / n)) → A75Rotate(Translate[a, Vector[(0, 0, 0), knot(76 / n)]], t + 76, knot(76 / n)) → A76Rotate(Translate[a, Vector[(0, 0, 0), knot(77 / n)]], t + 77, knot(77 / n)) → A77Rotate(Translate[a, Vector[(0, 0, 0), knot(78 / n)]], t + 78, knot(78 / n)) → A78Rotate(Translate[a, Vector[(0, 0, 0), knot(79 / n)]], t + 79, knot(79 / n)) → A79
AI Drawing Prompt Reference
Create a 3D torus knot curve in space, then animate a cube traveling along this knot while continuously rotating, producing a sequence of cubes arranged along the curved path. Place rotated copies of the cube at evenly spaced points along the torus knot, demonstrating dynamic geometric transformation where cubes appear to dance along the complex looping curve.
The prompt above was compiled from the original drawing commands and is for reference only.