# No. 219 (Brown 1868): "Variable circular motion by crown-wheel and pinion. The crown-wheel is placed eccentrically to the shaft, therefore the relative radius changes."
#
# Model (cm): the crown-wheel (48 teeth standing up on its rim, pitch radius 12, module 0.5) is fixed on its upright shaft 2.5 off its centre. The pinion (10 teeth, pitch radius 2.5)
# lies over a radius of the upright on a horizontal shaft, its teeth long enough (7.10) to reach the rim wherever it crosses the pinion's line: from 9.5 to 14.5 from the shaft.
# So the pinion is driven by the rim at a radius that changes through the turn, and it turns 3.80 to 5.80 times as fast as the wheel (kinematics: the wheel-frame angle of the
# rim point on the pinion's line), 48/10 = 4.8 on the mean. Straight-flanked teeth as No. 34's; the crown's are tapered pins (octagonal), the pinion's long bars,
# so a pin slides along a pinion tooth as the crossing moves. Only the upright shaft is driven (10 rpm). Generator: opencode-runs/batch11/gen219.py.
number: 219
slug: eccentric-crown-wheel-pinion
name: Variable circular motion by crown-wheel and pinion
brown: "Variable circular motion by crown-wheel and pinion. The crown-wheel is placed eccentrically to the shaft, therefore the relative radius changes."
units: cm
sim:
  timestep: 0.0002
  integrator: implicitfast
  iterations: 100
  solver: PGS
  multiccd: true
  duration_s: 13.0
  floor: false
bodies:
  - id: crown
    shape: part
    pos: [0, 0, 0]
    density: 7800
    friction: 0.1
    color: "#d9cfb6"
    pieces:
      - {kind: loft, a: [[14.9584, 0.1899, -0.55], [14.6899, 0.4584, -0.55], [14.3101, 0.4584, -0.55], [14.0416, 0.1899, -0.55], [14.0416, -0.1899, -0.55], [14.3101, -0.4584, -0.55], [14.6899, -0.4584, -0.55], [14.9584, -0.1899, -0.55]], b: [[14.6726, 0.0715, 0.35], [14.5715, 0.1726, 0.35], [14.4285, 0.1726, 0.35], [14.3274, 0.0715, 0.35], [14.3274, -0.0715, 0.35], [14.4285, -0.1726, 0.35], [14.5715, -0.1726, 0.35], [14.6726, -0.0715, 0.35]], collide: 1}
      - {kind: loft, a: [[14.8557, 1.7562, -0.55], [14.5872, 2.0247, -0.55], [14.2075, 2.0247, -0.55], [13.939, 1.7562, -0.55], [13.939, 1.3764, -0.55], [14.2075, 1.1079, -0.55], [14.5872, 1.1079, -0.55], [14.8557, 1.3764, -0.55]], b: [[14.5699, 1.6378, 0.35], [14.4688, 1.7389, 0.35], [14.3259, 1.7389, 0.35], [14.2248, 1.6378, 0.35], [14.2248, 1.4948, 0.35], [14.3259, 1.3938, 0.35], [14.4688, 1.3938, 0.35], [14.5699, 1.4948, 0.35]], collide: 1}
      - {kind: loft, a: [[14.5495, 3.2957, -0.55], [14.281, 3.5642, -0.55], [13.9012, 3.5642, -0.55], [13.6327, 3.2957, -0.55], [13.6327, 2.916, -0.55], [13.9012, 2.6475, -0.55], [14.281, 2.6475, -0.55], [14.5495, 2.916, -0.55]], b: [[14.2637, 3.1773, 0.35], [14.1626, 3.2784, 0.35], [14.0196, 3.2784, 0.35], [13.9186, 3.1773, 0.35], [13.9186, 3.0344, 0.35], [14.0196, 2.9333, 0.35], [14.1626, 2.9333, 0.35], [14.2637, 3.0344, 0.35]], collide: 1}
      - {kind: loft, a: [[14.0449, 4.7821, -0.55], [13.7764, 5.0506, -0.55], [13.3967, 5.0506, -0.55], [13.1282, 4.7821, -0.55], [13.1282, 4.4023, -0.55], [13.3967, 4.1338, -0.55], [13.7764, 4.1338, -0.55], [14.0449, 4.4023, -0.55]], b: [[13.7591, 4.6637, 0.35], [13.658, 4.7648, 0.35], [13.5151, 4.7648, 0.35], [13.414, 4.6637, 0.35], [13.414, 4.5207, 0.35], [13.5151, 4.4196, 0.35], [13.658, 4.4196, 0.35], [13.7591, 4.5207, 0.35]], collide: 1}
      - {kind: loft, a: [[13.3507, 6.1899, -0.55], [13.0822, 6.4584, -0.55], [12.7024, 6.4584, -0.55], [12.4339, 6.1899, -0.55], [12.4339, 5.8101, -0.55], [12.7024, 5.5416, -0.55], [13.0822, 5.5416, -0.55], [13.3507, 5.8101, -0.55]], b: [[13.0649, 6.0715, 0.35], [12.9638, 6.1726, 0.35], [12.8208, 6.1726, 0.35], [12.7198, 6.0715, 0.35], [12.7198, 5.9285, 0.35], [12.8208, 5.8274, 0.35], [12.9638, 5.8274, 0.35], [13.0649, 5.9285, 0.35]], collide: 1}
      - {kind: loft, a: [[12.4786, 7.495, -0.55], [12.2101, 7.7635, -0.55], [11.8304, 7.7635, -0.55], [11.5619, 7.495, -0.55], [11.5619, 7.1153, -0.55], [11.8304, 6.8468, -0.55], [12.2101, 6.8468, -0.55], [12.4786, 7.1153, -0.55]], b: [[12.1928, 7.3766, 0.35], [12.0917, 7.4777, 0.35], [11.9488, 7.4777, 0.35], [11.8477, 7.3766, 0.35], [11.8477, 7.2337, 0.35], [11.9488, 7.1326, 0.35], [12.0917, 7.1326, 0.35], [12.1928, 7.2337, 0.35]], collide: 1}
      - {kind: loft, a: [[11.4437, 8.6751, -0.55], [11.1751, 8.9437, -0.55], [10.7954, 8.9437, -0.55], [10.5269, 8.6751, -0.55], [10.5269, 8.2954, -0.55], [10.7954, 8.0269, -0.55], [11.1751, 8.0269, -0.55], [11.4437, 8.2954, -0.55]], b: [[11.1578, 8.5568, 0.35], [11.0568, 8.6578, 0.35], [10.9138, 8.6578, 0.35], [10.8127, 8.5568, 0.35], [10.8127, 8.4138, 0.35], [10.9138, 8.3127, 0.35], [11.0568, 8.3127, 0.35], [11.1578, 8.4138, 0.35]], collide: 1}
      - {kind: loft, a: [[10.2635, 9.7101, -0.55], [9.995, 9.9786, -0.55], [9.6153, 9.9786, -0.55], [9.3468, 9.7101, -0.55], [9.3468, 9.3304, -0.55], [9.6153, 9.0619, -0.55], [9.995, 9.0619, -0.55], [10.2635, 9.3304, -0.55]], b: [[9.9777, 9.5917, 0.35], [9.8766, 9.6928, 0.35], [9.7337, 9.6928, 0.35], [9.6326, 9.5917, 0.35], [9.6326, 9.4488, 0.35], [9.7337, 9.3477, 0.35], [9.8766, 9.3477, 0.35], [9.9777, 9.4488, 0.35]], collide: 1}
      - {kind: loft, a: [[8.9584, 10.5822, -0.55], [8.6899, 10.8507, -0.55], [8.3101, 10.8507, -0.55], [8.0416, 10.5822, -0.55], [8.0416, 10.2024, -0.55], [8.3101, 9.9339, -0.55], [8.6899, 9.9339, -0.55], [8.9584, 10.2024, -0.55]], b: [[8.6726, 10.4638, 0.35], [8.5715, 10.5649, 0.35], [8.4285, 10.5649, 0.35], [8.3274, 10.4638, 0.35], [8.3274, 10.3208, 0.35], [8.4285, 10.2198, 0.35], [8.5715, 10.2198, 0.35], [8.6726, 10.3208, 0.35]], collide: 1}
      - {kind: loft, a: [[7.5506, 11.2764, -0.55], [7.2821, 11.5449, -0.55], [6.9023, 11.5449, -0.55], [6.6338, 11.2764, -0.55], [6.6338, 10.8967, -0.55], [6.9023, 10.6282, -0.55], [7.2821, 10.6282, -0.55], [7.5506, 10.8967, -0.55]], b: [[7.2648, 11.158, 0.35], [7.1637, 11.2591, 0.35], [7.0207, 11.2591, 0.35], [6.9196, 11.158, 0.35], [6.9196, 11.0151, 0.35], [7.0207, 10.914, 0.35], [7.1637, 10.914, 0.35], [7.2648, 11.0151, 0.35]], collide: 1}
      - {kind: loft, a: [[6.0642, 11.781, -0.55], [5.7957, 12.0495, -0.55], [5.416, 12.0495, -0.55], [5.1475, 11.781, -0.55], [5.1475, 11.4012, -0.55], [5.416, 11.1327, -0.55], [5.7957, 11.1327, -0.55], [6.0642, 11.4012, -0.55]], b: [[5.7784, 11.6626, 0.35], [5.6773, 11.7637, 0.35], [5.5344, 11.7637, 0.35], [5.4333, 11.6626, 0.35], [5.4333, 11.5196, 0.35], [5.5344, 11.4186, 0.35], [5.6773, 11.4186, 0.35], [5.7784, 11.5196, 0.35]], collide: 1}
      - {kind: loft, a: [[4.5247, 12.0872, -0.55], [4.2562, 12.3557, -0.55], [3.8764, 12.3557, -0.55], [3.6079, 12.0872, -0.55], [3.6079, 11.7075, -0.55], [3.8764, 11.439, -0.55], [4.2562, 11.439, -0.55], [4.5247, 11.7075, -0.55]], b: [[4.2389, 11.9688, 0.35], [4.1378, 12.0699, 0.35], [3.9948, 12.0699, 0.35], [3.8938, 11.9688, 0.35], [3.8938, 11.8259, 0.35], [3.9948, 11.7248, 0.35], [4.1378, 11.7248, 0.35], [4.2389, 11.8259, 0.35]], collide: 1}
      - {kind: loft, a: [[2.9584, 12.1899, -0.55], [2.6899, 12.4584, -0.55], [2.3101, 12.4584, -0.55], [2.0416, 12.1899, -0.55], [2.0416, 11.8101, -0.55], [2.3101, 11.5416, -0.55], [2.6899, 11.5416, -0.55], [2.9584, 11.8101, -0.55]], b: [[2.6726, 12.0715, 0.35], [2.5715, 12.1726, 0.35], [2.4285, 12.1726, 0.35], [2.3274, 12.0715, 0.35], [2.3274, 11.9285, 0.35], [2.4285, 11.8274, 0.35], [2.5715, 11.8274, 0.35], [2.6726, 11.9285, 0.35]], collide: 1}
      - {kind: loft, a: [[1.3921, 12.0872, -0.55], [1.1236, 12.3557, -0.55], [0.7438, 12.3557, -0.55], [0.4753, 12.0872, -0.55], [0.4753, 11.7075, -0.55], [0.7438, 11.439, -0.55], [1.1236, 11.439, -0.55], [1.3921, 11.7075, -0.55]], b: [[1.1062, 11.9688, 0.35], [1.0052, 12.0699, 0.35], [0.8622, 12.0699, 0.35], [0.7611, 11.9688, 0.35], [0.7611, 11.8259, 0.35], [0.8622, 11.7248, 0.35], [1.0052, 11.7248, 0.35], [1.1062, 11.8259, 0.35]], collide: 1}
      - {kind: loft, a: [[-0.1475, 11.781, -0.55], [-0.416, 12.0495, -0.55], [-0.7957, 12.0495, -0.55], [-1.0642, 11.781, -0.55], [-1.0642, 11.4012, -0.55], [-0.7957, 11.1327, -0.55], [-0.416, 11.1327, -0.55], [-0.1475, 11.4012, -0.55]], b: [[-0.4333, 11.6626, 0.35], [-0.5344, 11.7637, 0.35], [-0.6773, 11.7637, 0.35], [-0.7784, 11.6626, 0.35], [-0.7784, 11.5196, 0.35], [-0.6773, 11.4186, 0.35], [-0.5344, 11.4186, 0.35], [-0.4333, 11.5196, 0.35]], collide: 1}
      - {kind: loft, a: [[-1.6338, 11.2764, -0.55], [-1.9023, 11.5449, -0.55], [-2.2821, 11.5449, -0.55], [-2.5506, 11.2764, -0.55], [-2.5506, 10.8967, -0.55], [-2.2821, 10.6282, -0.55], [-1.9023, 10.6282, -0.55], [-1.6338, 10.8967, -0.55]], b: [[-1.9196, 11.158, 0.35], [-2.0207, 11.2591, 0.35], [-2.1637, 11.2591, 0.35], [-2.2648, 11.158, 0.35], [-2.2648, 11.0151, 0.35], [-2.1637, 10.914, 0.35], [-2.0207, 10.914, 0.35], [-1.9196, 11.0151, 0.35]], collide: 1}
      - {kind: loft, a: [[-3.0416, 10.5822, -0.55], [-3.3101, 10.8507, -0.55], [-3.6899, 10.8507, -0.55], [-3.9584, 10.5822, -0.55], [-3.9584, 10.2024, -0.55], [-3.6899, 9.9339, -0.55], [-3.3101, 9.9339, -0.55], [-3.0416, 10.2024, -0.55]], b: [[-3.3274, 10.4638, 0.35], [-3.4285, 10.5649, 0.35], [-3.5715, 10.5649, 0.35], [-3.6726, 10.4638, 0.35], [-3.6726, 10.3208, 0.35], [-3.5715, 10.2198, 0.35], [-3.4285, 10.2198, 0.35], [-3.3274, 10.3208, 0.35]], collide: 1}
      - {kind: loft, a: [[-4.3468, 9.7101, -0.55], [-4.6153, 9.9786, -0.55], [-4.995, 9.9786, -0.55], [-5.2635, 9.7101, -0.55], [-5.2635, 9.3304, -0.55], [-4.995, 9.0619, -0.55], [-4.6153, 9.0619, -0.55], [-4.3468, 9.3304, -0.55]], b: [[-4.6326, 9.5917, 0.35], [-4.7337, 9.6928, 0.35], [-4.8766, 9.6928, 0.35], [-4.9777, 9.5917, 0.35], [-4.9777, 9.4488, 0.35], [-4.8766, 9.3477, 0.35], [-4.7337, 9.3477, 0.35], [-4.6326, 9.4488, 0.35]], collide: 1}
      - {kind: loft, a: [[-5.5269, 8.6751, -0.55], [-5.7954, 8.9437, -0.55], [-6.1751, 8.9437, -0.55], [-6.4437, 8.6751, -0.55], [-6.4437, 8.2954, -0.55], [-6.1751, 8.0269, -0.55], [-5.7954, 8.0269, -0.55], [-5.5269, 8.2954, -0.55]], b: [[-5.8127, 8.5568, 0.35], [-5.9138, 8.6578, 0.35], [-6.0568, 8.6578, 0.35], [-6.1578, 8.5568, 0.35], [-6.1578, 8.4138, 0.35], [-6.0568, 8.3127, 0.35], [-5.9138, 8.3127, 0.35], [-5.8127, 8.4138, 0.35]], collide: 1}
      - {kind: loft, a: [[-6.5619, 7.495, -0.55], [-6.8304, 7.7635, -0.55], [-7.2101, 7.7635, -0.55], [-7.4786, 7.495, -0.55], [-7.4786, 7.1153, -0.55], [-7.2101, 6.8468, -0.55], [-6.8304, 6.8468, -0.55], [-6.5619, 7.1153, -0.55]], b: [[-6.8477, 7.3766, 0.35], [-6.9488, 7.4777, 0.35], [-7.0917, 7.4777, 0.35], [-7.1928, 7.3766, 0.35], [-7.1928, 7.2337, 0.35], [-7.0917, 7.1326, 0.35], [-6.9488, 7.1326, 0.35], [-6.8477, 7.2337, 0.35]], collide: 1}
      - {kind: loft, a: [[-7.4339, 6.1899, -0.55], [-7.7024, 6.4584, -0.55], [-8.0822, 6.4584, -0.55], [-8.3507, 6.1899, -0.55], [-8.3507, 5.8101, -0.55], [-8.0822, 5.5416, -0.55], [-7.7024, 5.5416, -0.55], [-7.4339, 5.8101, -0.55]], b: [[-7.7198, 6.0715, 0.35], [-7.8208, 6.1726, 0.35], [-7.9638, 6.1726, 0.35], [-8.0649, 6.0715, 0.35], [-8.0649, 5.9285, 0.35], [-7.9638, 5.8274, 0.35], [-7.8208, 5.8274, 0.35], [-7.7198, 5.9285, 0.35]], collide: 1}
      - {kind: loft, a: [[-8.1282, 4.7821, -0.55], [-8.3967, 5.0506, -0.55], [-8.7764, 5.0506, -0.55], [-9.0449, 4.7821, -0.55], [-9.0449, 4.4023, -0.55], [-8.7764, 4.1338, -0.55], [-8.3967, 4.1338, -0.55], [-8.1282, 4.4023, -0.55]], b: [[-8.414, 4.6637, 0.35], [-8.5151, 4.7648, 0.35], [-8.658, 4.7648, 0.35], [-8.7591, 4.6637, 0.35], [-8.7591, 4.5207, 0.35], [-8.658, 4.4196, 0.35], [-8.5151, 4.4196, 0.35], [-8.414, 4.5207, 0.35]], collide: 1}
      - {kind: loft, a: [[-8.6327, 3.2957, -0.55], [-8.9012, 3.5642, -0.55], [-9.281, 3.5642, -0.55], [-9.5495, 3.2957, -0.55], [-9.5495, 2.916, -0.55], [-9.281, 2.6475, -0.55], [-8.9012, 2.6475, -0.55], [-8.6327, 2.916, -0.55]], b: [[-8.9186, 3.1773, 0.35], [-9.0196, 3.2784, 0.35], [-9.1626, 3.2784, 0.35], [-9.2637, 3.1773, 0.35], [-9.2637, 3.0344, 0.35], [-9.1626, 2.9333, 0.35], [-9.0196, 2.9333, 0.35], [-8.9186, 3.0344, 0.35]], collide: 1}
      - {kind: loft, a: [[-8.939, 1.7562, -0.55], [-9.2075, 2.0247, -0.55], [-9.5872, 2.0247, -0.55], [-9.8557, 1.7562, -0.55], [-9.8557, 1.3764, -0.55], [-9.5872, 1.1079, -0.55], [-9.2075, 1.1079, -0.55], [-8.939, 1.3764, -0.55]], b: [[-9.2248, 1.6378, 0.35], [-9.3259, 1.7389, 0.35], [-9.4688, 1.7389, 0.35], [-9.5699, 1.6378, 0.35], [-9.5699, 1.4948, 0.35], [-9.4688, 1.3938, 0.35], [-9.3259, 1.3938, 0.35], [-9.2248, 1.4948, 0.35]], collide: 1}
      - {kind: loft, a: [[-9.0416, 0.1899, -0.55], [-9.3101, 0.4584, -0.55], [-9.6899, 0.4584, -0.55], [-9.9584, 0.1899, -0.55], [-9.9584, -0.1899, -0.55], [-9.6899, -0.4584, -0.55], [-9.3101, -0.4584, -0.55], [-9.0416, -0.1899, -0.55]], b: [[-9.3274, 0.0715, 0.35], [-9.4285, 0.1726, 0.35], [-9.5715, 0.1726, 0.35], [-9.6726, 0.0715, 0.35], [-9.6726, -0.0715, 0.35], [-9.5715, -0.1726, 0.35], [-9.4285, -0.1726, 0.35], [-9.3274, -0.0715, 0.35]], collide: 1}
      - {kind: loft, a: [[-8.939, -1.3764, -0.55], [-9.2075, -1.1079, -0.55], [-9.5872, -1.1079, -0.55], [-9.8557, -1.3764, -0.55], [-9.8557, -1.7562, -0.55], [-9.5872, -2.0247, -0.55], [-9.2075, -2.0247, -0.55], [-8.939, -1.7562, -0.55]], b: [[-9.2248, -1.4948, 0.35], [-9.3259, -1.3938, 0.35], [-9.4688, -1.3938, 0.35], [-9.5699, -1.4948, 0.35], [-9.5699, -1.6378, 0.35], [-9.4688, -1.7389, 0.35], [-9.3259, -1.7389, 0.35], [-9.2248, -1.6378, 0.35]], collide: 1}
      - {kind: loft, a: [[-8.6327, -2.916, -0.55], [-8.9012, -2.6475, -0.55], [-9.281, -2.6475, -0.55], [-9.5495, -2.916, -0.55], [-9.5495, -3.2957, -0.55], [-9.281, -3.5642, -0.55], [-8.9012, -3.5642, -0.55], [-8.6327, -3.2957, -0.55]], b: [[-8.9186, -3.0344, 0.35], [-9.0196, -2.9333, 0.35], [-9.1626, -2.9333, 0.35], [-9.2637, -3.0344, 0.35], [-9.2637, -3.1773, 0.35], [-9.1626, -3.2784, 0.35], [-9.0196, -3.2784, 0.35], [-8.9186, -3.1773, 0.35]], collide: 1}
      - {kind: loft, a: [[-8.1282, -4.4023, -0.55], [-8.3967, -4.1338, -0.55], [-8.7764, -4.1338, -0.55], [-9.0449, -4.4023, -0.55], [-9.0449, -4.7821, -0.55], [-8.7764, -5.0506, -0.55], [-8.3967, -5.0506, -0.55], [-8.1282, -4.7821, -0.55]], b: [[-8.414, -4.5207, 0.35], [-8.5151, -4.4196, 0.35], [-8.658, -4.4196, 0.35], [-8.7591, -4.5207, 0.35], [-8.7591, -4.6637, 0.35], [-8.658, -4.7648, 0.35], [-8.5151, -4.7648, 0.35], [-8.414, -4.6637, 0.35]], collide: 1}
      - {kind: loft, a: [[-7.4339, -5.8101, -0.55], [-7.7024, -5.5416, -0.55], [-8.0822, -5.5416, -0.55], [-8.3507, -5.8101, -0.55], [-8.3507, -6.1899, -0.55], [-8.0822, -6.4584, -0.55], [-7.7024, -6.4584, -0.55], [-7.4339, -6.1899, -0.55]], b: [[-7.7198, -5.9285, 0.35], [-7.8208, -5.8274, 0.35], [-7.9638, -5.8274, 0.35], [-8.0649, -5.9285, 0.35], [-8.0649, -6.0715, 0.35], [-7.9638, -6.1726, 0.35], [-7.8208, -6.1726, 0.35], [-7.7198, -6.0715, 0.35]], collide: 1}
      - {kind: loft, a: [[-6.5619, -7.1153, -0.55], [-6.8304, -6.8468, -0.55], [-7.2101, -6.8468, -0.55], [-7.4786, -7.1153, -0.55], [-7.4786, -7.495, -0.55], [-7.2101, -7.7635, -0.55], [-6.8304, -7.7635, -0.55], [-6.5619, -7.495, -0.55]], b: [[-6.8477, -7.2337, 0.35], [-6.9488, -7.1326, 0.35], [-7.0917, -7.1326, 0.35], [-7.1928, -7.2337, 0.35], [-7.1928, -7.3766, 0.35], [-7.0917, -7.4777, 0.35], [-6.9488, -7.4777, 0.35], [-6.8477, -7.3766, 0.35]], collide: 1}
      - {kind: loft, a: [[-5.5269, -8.2954, -0.55], [-5.7954, -8.0269, -0.55], [-6.1751, -8.0269, -0.55], [-6.4437, -8.2954, -0.55], [-6.4437, -8.6751, -0.55], [-6.1751, -8.9437, -0.55], [-5.7954, -8.9437, -0.55], [-5.5269, -8.6751, -0.55]], b: [[-5.8127, -8.4138, 0.35], [-5.9138, -8.3127, 0.35], [-6.0568, -8.3127, 0.35], [-6.1578, -8.4138, 0.35], [-6.1578, -8.5568, 0.35], [-6.0568, -8.6578, 0.35], [-5.9138, -8.6578, 0.35], [-5.8127, -8.5568, 0.35]], collide: 1}
      - {kind: loft, a: [[-4.3468, -9.3304, -0.55], [-4.6153, -9.0619, -0.55], [-4.995, -9.0619, -0.55], [-5.2635, -9.3304, -0.55], [-5.2635, -9.7101, -0.55], [-4.995, -9.9786, -0.55], [-4.6153, -9.9786, -0.55], [-4.3468, -9.7101, -0.55]], b: [[-4.6326, -9.4488, 0.35], [-4.7337, -9.3477, 0.35], [-4.8766, -9.3477, 0.35], [-4.9777, -9.4488, 0.35], [-4.9777, -9.5917, 0.35], [-4.8766, -9.6928, 0.35], [-4.7337, -9.6928, 0.35], [-4.6326, -9.5917, 0.35]], collide: 1}
      - {kind: loft, a: [[-3.0416, -10.2024, -0.55], [-3.3101, -9.9339, -0.55], [-3.6899, -9.9339, -0.55], [-3.9584, -10.2024, -0.55], [-3.9584, -10.5822, -0.55], [-3.6899, -10.8507, -0.55], [-3.3101, -10.8507, -0.55], [-3.0416, -10.5822, -0.55]], b: [[-3.3274, -10.3208, 0.35], [-3.4285, -10.2198, 0.35], [-3.5715, -10.2198, 0.35], [-3.6726, -10.3208, 0.35], [-3.6726, -10.4638, 0.35], [-3.5715, -10.5649, 0.35], [-3.4285, -10.5649, 0.35], [-3.3274, -10.4638, 0.35]], collide: 1}
      - {kind: loft, a: [[-1.6338, -10.8967, -0.55], [-1.9023, -10.6282, -0.55], [-2.2821, -10.6282, -0.55], [-2.5506, -10.8967, -0.55], [-2.5506, -11.2764, -0.55], [-2.2821, -11.5449, -0.55], [-1.9023, -11.5449, -0.55], [-1.6338, -11.2764, -0.55]], b: [[-1.9196, -11.0151, 0.35], [-2.0207, -10.914, 0.35], [-2.1637, -10.914, 0.35], [-2.2648, -11.0151, 0.35], [-2.2648, -11.158, 0.35], [-2.1637, -11.2591, 0.35], [-2.0207, -11.2591, 0.35], [-1.9196, -11.158, 0.35]], collide: 1}
      - {kind: loft, a: [[-0.1475, -11.4012, -0.55], [-0.416, -11.1327, -0.55], [-0.7957, -11.1327, -0.55], [-1.0642, -11.4012, -0.55], [-1.0642, -11.781, -0.55], [-0.7957, -12.0495, -0.55], [-0.416, -12.0495, -0.55], [-0.1475, -11.781, -0.55]], b: [[-0.4333, -11.5196, 0.35], [-0.5344, -11.4186, 0.35], [-0.6773, -11.4186, 0.35], [-0.7784, -11.5196, 0.35], [-0.7784, -11.6626, 0.35], [-0.6773, -11.7637, 0.35], [-0.5344, -11.7637, 0.35], [-0.4333, -11.6626, 0.35]], collide: 1}
      - {kind: loft, a: [[1.3921, -11.7075, -0.55], [1.1236, -11.439, -0.55], [0.7438, -11.439, -0.55], [0.4753, -11.7075, -0.55], [0.4753, -12.0872, -0.55], [0.7438, -12.3557, -0.55], [1.1236, -12.3557, -0.55], [1.3921, -12.0872, -0.55]], b: [[1.1062, -11.8259, 0.35], [1.0052, -11.7248, 0.35], [0.8622, -11.7248, 0.35], [0.7611, -11.8259, 0.35], [0.7611, -11.9688, 0.35], [0.8622, -12.0699, 0.35], [1.0052, -12.0699, 0.35], [1.1062, -11.9688, 0.35]], collide: 1}
      - {kind: loft, a: [[2.9584, -11.8101, -0.55], [2.6899, -11.5416, -0.55], [2.3101, -11.5416, -0.55], [2.0416, -11.8101, -0.55], [2.0416, -12.1899, -0.55], [2.3101, -12.4584, -0.55], [2.6899, -12.4584, -0.55], [2.9584, -12.1899, -0.55]], b: [[2.6726, -11.9285, 0.35], [2.5715, -11.8274, 0.35], [2.4285, -11.8274, 0.35], [2.3274, -11.9285, 0.35], [2.3274, -12.0715, 0.35], [2.4285, -12.1726, 0.35], [2.5715, -12.1726, 0.35], [2.6726, -12.0715, 0.35]], collide: 1}
      - {kind: loft, a: [[4.5247, -11.7075, -0.55], [4.2562, -11.439, -0.55], [3.8764, -11.439, -0.55], [3.6079, -11.7075, -0.55], [3.6079, -12.0872, -0.55], [3.8764, -12.3557, -0.55], [4.2562, -12.3557, -0.55], [4.5247, -12.0872, -0.55]], b: [[4.2389, -11.8259, 0.35], [4.1378, -11.7248, 0.35], [3.9948, -11.7248, 0.35], [3.8938, -11.8259, 0.35], [3.8938, -11.9688, 0.35], [3.9948, -12.0699, 0.35], [4.1378, -12.0699, 0.35], [4.2389, -11.9688, 0.35]], collide: 1}
      - {kind: loft, a: [[6.0642, -11.4012, -0.55], [5.7957, -11.1327, -0.55], [5.416, -11.1327, -0.55], [5.1475, -11.4012, -0.55], [5.1475, -11.781, -0.55], [5.416, -12.0495, -0.55], [5.7957, -12.0495, -0.55], [6.0642, -11.781, -0.55]], b: [[5.7784, -11.5196, 0.35], [5.6773, -11.4186, 0.35], [5.5344, -11.4186, 0.35], [5.4333, -11.5196, 0.35], [5.4333, -11.6626, 0.35], [5.5344, -11.7637, 0.35], [5.6773, -11.7637, 0.35], [5.7784, -11.6626, 0.35]], collide: 1}
      - {kind: loft, a: [[7.5506, -10.8967, -0.55], [7.2821, -10.6282, -0.55], [6.9023, -10.6282, -0.55], [6.6338, -10.8967, -0.55], [6.6338, -11.2764, -0.55], [6.9023, -11.5449, -0.55], [7.2821, -11.5449, -0.55], [7.5506, -11.2764, -0.55]], b: [[7.2648, -11.0151, 0.35], [7.1637, -10.914, 0.35], [7.0207, -10.914, 0.35], [6.9196, -11.0151, 0.35], [6.9196, -11.158, 0.35], [7.0207, -11.2591, 0.35], [7.1637, -11.2591, 0.35], [7.2648, -11.158, 0.35]], collide: 1}
      - {kind: loft, a: [[8.9584, -10.2024, -0.55], [8.6899, -9.9339, -0.55], [8.3101, -9.9339, -0.55], [8.0416, -10.2024, -0.55], [8.0416, -10.5822, -0.55], [8.3101, -10.8507, -0.55], [8.6899, -10.8507, -0.55], [8.9584, -10.5822, -0.55]], b: [[8.6726, -10.3208, 0.35], [8.5715, -10.2198, 0.35], [8.4285, -10.2198, 0.35], [8.3274, -10.3208, 0.35], [8.3274, -10.4638, 0.35], [8.4285, -10.5649, 0.35], [8.5715, -10.5649, 0.35], [8.6726, -10.4638, 0.35]], collide: 1}
      - {kind: loft, a: [[10.2635, -9.3304, -0.55], [9.995, -9.0619, -0.55], [9.6153, -9.0619, -0.55], [9.3468, -9.3304, -0.55], [9.3468, -9.7101, -0.55], [9.6153, -9.9786, -0.55], [9.995, -9.9786, -0.55], [10.2635, -9.7101, -0.55]], b: [[9.9777, -9.4488, 0.35], [9.8766, -9.3477, 0.35], [9.7337, -9.3477, 0.35], [9.6326, -9.4488, 0.35], [9.6326, -9.5917, 0.35], [9.7337, -9.6928, 0.35], [9.8766, -9.6928, 0.35], [9.9777, -9.5917, 0.35]], collide: 1}
      - {kind: loft, a: [[11.4437, -8.2954, -0.55], [11.1751, -8.0269, -0.55], [10.7954, -8.0269, -0.55], [10.5269, -8.2954, -0.55], [10.5269, -8.6751, -0.55], [10.7954, -8.9437, -0.55], [11.1751, -8.9437, -0.55], [11.4437, -8.6751, -0.55]], b: [[11.1578, -8.4138, 0.35], [11.0568, -8.3127, 0.35], [10.9138, -8.3127, 0.35], [10.8127, -8.4138, 0.35], [10.8127, -8.5568, 0.35], [10.9138, -8.6578, 0.35], [11.0568, -8.6578, 0.35], [11.1578, -8.5568, 0.35]], collide: 1}
      - {kind: loft, a: [[12.4786, -7.1153, -0.55], [12.2101, -6.8468, -0.55], [11.8304, -6.8468, -0.55], [11.5619, -7.1153, -0.55], [11.5619, -7.495, -0.55], [11.8304, -7.7635, -0.55], [12.2101, -7.7635, -0.55], [12.4786, -7.495, -0.55]], b: [[12.1928, -7.2337, 0.35], [12.0917, -7.1326, 0.35], [11.9488, -7.1326, 0.35], [11.8477, -7.2337, 0.35], [11.8477, -7.3766, 0.35], [11.9488, -7.4777, 0.35], [12.0917, -7.4777, 0.35], [12.1928, -7.3766, 0.35]], collide: 1}
      - {kind: loft, a: [[13.3507, -5.8101, -0.55], [13.0822, -5.5416, -0.55], [12.7024, -5.5416, -0.55], [12.4339, -5.8101, -0.55], [12.4339, -6.1899, -0.55], [12.7024, -6.4584, -0.55], [13.0822, -6.4584, -0.55], [13.3507, -6.1899, -0.55]], b: [[13.0649, -5.9285, 0.35], [12.9638, -5.8274, 0.35], [12.8208, -5.8274, 0.35], [12.7198, -5.9285, 0.35], [12.7198, -6.0715, 0.35], [12.8208, -6.1726, 0.35], [12.9638, -6.1726, 0.35], [13.0649, -6.0715, 0.35]], collide: 1}
      - {kind: loft, a: [[14.0449, -4.4023, -0.55], [13.7764, -4.1338, -0.55], [13.3967, -4.1338, -0.55], [13.1282, -4.4023, -0.55], [13.1282, -4.7821, -0.55], [13.3967, -5.0506, -0.55], [13.7764, -5.0506, -0.55], [14.0449, -4.7821, -0.55]], b: [[13.7591, -4.5207, 0.35], [13.658, -4.4196, 0.35], [13.5151, -4.4196, 0.35], [13.414, -4.5207, 0.35], [13.414, -4.6637, 0.35], [13.5151, -4.7648, 0.35], [13.658, -4.7648, 0.35], [13.7591, -4.6637, 0.35]], collide: 1}
      - {kind: loft, a: [[14.5495, -2.916, -0.55], [14.281, -2.6475, -0.55], [13.9012, -2.6475, -0.55], [13.6327, -2.916, -0.55], [13.6327, -3.2957, -0.55], [13.9012, -3.5642, -0.55], [14.281, -3.5642, -0.55], [14.5495, -3.2957, -0.55]], b: [[14.2637, -3.0344, 0.35], [14.1626, -2.9333, 0.35], [14.0196, -2.9333, 0.35], [13.9186, -3.0344, 0.35], [13.9186, -3.1773, 0.35], [14.0196, -3.2784, 0.35], [14.1626, -3.2784, 0.35], [14.2637, -3.1773, 0.35]], collide: 1}
      - {kind: loft, a: [[14.8557, -1.3764, -0.55], [14.5872, -1.1079, -0.55], [14.2075, -1.1079, -0.55], [13.939, -1.3764, -0.55], [13.939, -1.7562, -0.55], [14.2075, -2.0247, -0.55], [14.5872, -2.0247, -0.55], [14.8557, -1.7562, -0.55]], b: [[14.5699, -1.4948, 0.35], [14.4688, -1.3938, 0.35], [14.3259, -1.3938, 0.35], [14.2248, -1.4948, 0.35], [14.2248, -1.6378, 0.35], [14.3259, -1.7389, 0.35], [14.4688, -1.7389, 0.35], [14.5699, -1.6378, 0.35]], collide: 1}
      - {kind: loft, a: [[13.9, 0.0, -1.4], [15.05, 0.0, -1.4], [14.9426, 1.6381, -1.4], [13.8025, 1.488, -1.4]], b: [[13.9, 0.0, -0.5], [15.05, 0.0, -0.5], [14.9426, 1.6381, -0.5], [13.8025, 1.488, -0.5]], collide: 0}
      - {kind: loft, a: [[13.8025, 1.488, -1.4], [14.9426, 1.6381, -1.4], [14.6224, 3.2482, -1.4], [13.5116, 2.9505, -1.4]], b: [[13.8025, 1.488, -0.5], [14.9426, 1.6381, -0.5], [14.6224, 3.2482, -0.5], [13.5116, 2.9505, -0.5]], collide: 0}
      - {kind: loft, a: [[13.5116, 2.9505, -1.4], [14.6224, 3.2482, -1.4], [14.0947, 4.8027, -1.4], [13.0322, 4.3626, -1.4]], b: [[13.5116, 2.9505, -0.5], [14.6224, 3.2482, -0.5], [14.0947, 4.8027, -0.5], [13.0322, 4.3626, -0.5]], collide: 0}
      - {kind: loft, a: [[13.0322, 4.3626, -1.4], [14.0947, 4.8027, -1.4], [13.3686, 6.275, -1.4], [12.3727, 5.7, -1.4]], b: [[13.0322, 4.3626, -0.5], [14.0947, 4.8027, -0.5], [13.3686, 6.275, -0.5], [12.3727, 5.7, -0.5]], collide: 0}
      - {kind: loft, a: [[12.3727, 5.7, -1.4], [13.3686, 6.275, -1.4], [12.4566, 7.64, -1.4], [11.5442, 6.9399, -1.4]], b: [[12.3727, 5.7, -0.5], [13.3686, 6.275, -0.5], [12.4566, 7.64, -0.5], [11.5442, 6.9399, -0.5]], collide: 0}
      - {kind: loft, a: [[11.5442, 6.9399, -1.4], [12.4566, 7.64, -1.4], [11.3742, 8.8742, -1.4], [10.561, 8.061, -1.4]], b: [[11.5442, 6.9399, -0.5], [12.4566, 7.64, -0.5], [11.3742, 8.8742, -0.5], [10.561, 8.061, -0.5]], collide: 0}
      - {kind: loft, a: [[10.561, 8.061, -1.4], [11.3742, 8.8742, -1.4], [10.14, 9.9566, -1.4], [9.4399, 9.0442, -1.4]], b: [[10.561, 8.061, -0.5], [11.3742, 8.8742, -0.5], [10.14, 9.9566, -0.5], [9.4399, 9.0442, -0.5]], collide: 0}
      - {kind: loft, a: [[9.4399, 9.0442, -1.4], [10.14, 9.9566, -1.4], [8.775, 10.8686, -1.4], [8.2, 9.8727, -1.4]], b: [[9.4399, 9.0442, -0.5], [10.14, 9.9566, -0.5], [8.775, 10.8686, -0.5], [8.2, 9.8727, -0.5]], collide: 0}
      - {kind: loft, a: [[8.2, 9.8727, -1.4], [8.775, 10.8686, -1.4], [7.3027, 11.5947, -1.4], [6.8626, 10.5322, -1.4]], b: [[8.2, 9.8727, -0.5], [8.775, 10.8686, -0.5], [7.3027, 11.5947, -0.5], [6.8626, 10.5322, -0.5]], collide: 0}
      - {kind: loft, a: [[6.8626, 10.5322, -1.4], [7.3027, 11.5947, -1.4], [5.7482, 12.1224, -1.4], [5.4505, 11.0116, -1.4]], b: [[6.8626, 10.5322, -0.5], [7.3027, 11.5947, -0.5], [5.7482, 12.1224, -0.5], [5.4505, 11.0116, -0.5]], collide: 0}
      - {kind: loft, a: [[5.4505, 11.0116, -1.4], [5.7482, 12.1224, -1.4], [4.1381, 12.4426, -1.4], [3.988, 11.3025, -1.4]], b: [[5.4505, 11.0116, -0.5], [5.7482, 12.1224, -0.5], [4.1381, 12.4426, -0.5], [3.988, 11.3025, -0.5]], collide: 0}
      - {kind: loft, a: [[3.988, 11.3025, -1.4], [4.1381, 12.4426, -1.4], [2.5, 12.55, -1.4], [2.5, 11.4, -1.4]], b: [[3.988, 11.3025, -0.5], [4.1381, 12.4426, -0.5], [2.5, 12.55, -0.5], [2.5, 11.4, -0.5]], collide: 0}
      - {kind: loft, a: [[2.5, 11.4, -1.4], [2.5, 12.55, -1.4], [0.8619, 12.4426, -1.4], [1.012, 11.3025, -1.4]], b: [[2.5, 11.4, -0.5], [2.5, 12.55, -0.5], [0.8619, 12.4426, -0.5], [1.012, 11.3025, -0.5]], collide: 0}
      - {kind: loft, a: [[1.012, 11.3025, -1.4], [0.8619, 12.4426, -1.4], [-0.7482, 12.1224, -1.4], [-0.4505, 11.0116, -1.4]], b: [[1.012, 11.3025, -0.5], [0.8619, 12.4426, -0.5], [-0.7482, 12.1224, -0.5], [-0.4505, 11.0116, -0.5]], collide: 0}
      - {kind: loft, a: [[-0.4505, 11.0116, -1.4], [-0.7482, 12.1224, -1.4], [-2.3027, 11.5947, -1.4], [-1.8626, 10.5322, -1.4]], b: [[-0.4505, 11.0116, -0.5], [-0.7482, 12.1224, -0.5], [-2.3027, 11.5947, -0.5], [-1.8626, 10.5322, -0.5]], collide: 0}
      - {kind: loft, a: [[-1.8626, 10.5322, -1.4], [-2.3027, 11.5947, -1.4], [-3.775, 10.8686, -1.4], [-3.2, 9.8727, -1.4]], b: [[-1.8626, 10.5322, -0.5], [-2.3027, 11.5947, -0.5], [-3.775, 10.8686, -0.5], [-3.2, 9.8727, -0.5]], collide: 0}
      - {kind: loft, a: [[-3.2, 9.8727, -1.4], [-3.775, 10.8686, -1.4], [-5.14, 9.9566, -1.4], [-4.4399, 9.0442, -1.4]], b: [[-3.2, 9.8727, -0.5], [-3.775, 10.8686, -0.5], [-5.14, 9.9566, -0.5], [-4.4399, 9.0442, -0.5]], collide: 0}
      - {kind: loft, a: [[-4.4399, 9.0442, -1.4], [-5.14, 9.9566, -1.4], [-6.3742, 8.8742, -1.4], [-5.561, 8.061, -1.4]], b: [[-4.4399, 9.0442, -0.5], [-5.14, 9.9566, -0.5], [-6.3742, 8.8742, -0.5], [-5.561, 8.061, -0.5]], collide: 0}
      - {kind: loft, a: [[-5.561, 8.061, -1.4], [-6.3742, 8.8742, -1.4], [-7.4566, 7.64, -1.4], [-6.5442, 6.9399, -1.4]], b: [[-5.561, 8.061, -0.5], [-6.3742, 8.8742, -0.5], [-7.4566, 7.64, -0.5], [-6.5442, 6.9399, -0.5]], collide: 0}
      - {kind: loft, a: [[-6.5442, 6.9399, -1.4], [-7.4566, 7.64, -1.4], [-8.3686, 6.275, -1.4], [-7.3727, 5.7, -1.4]], b: [[-6.5442, 6.9399, -0.5], [-7.4566, 7.64, -0.5], [-8.3686, 6.275, -0.5], [-7.3727, 5.7, -0.5]], collide: 0}
      - {kind: loft, a: [[-7.3727, 5.7, -1.4], [-8.3686, 6.275, -1.4], [-9.0947, 4.8027, -1.4], [-8.0322, 4.3626, -1.4]], b: [[-7.3727, 5.7, -0.5], [-8.3686, 6.275, -0.5], [-9.0947, 4.8027, -0.5], [-8.0322, 4.3626, -0.5]], collide: 0}
      - {kind: loft, a: [[-8.0322, 4.3626, -1.4], [-9.0947, 4.8027, -1.4], [-9.6224, 3.2482, -1.4], [-8.5116, 2.9505, -1.4]], b: [[-8.0322, 4.3626, -0.5], [-9.0947, 4.8027, -0.5], [-9.6224, 3.2482, -0.5], [-8.5116, 2.9505, -0.5]], collide: 0}
      - {kind: loft, a: [[-8.5116, 2.9505, -1.4], [-9.6224, 3.2482, -1.4], [-9.9426, 1.6381, -1.4], [-8.8025, 1.488, -1.4]], b: [[-8.5116, 2.9505, -0.5], [-9.6224, 3.2482, -0.5], [-9.9426, 1.6381, -0.5], [-8.8025, 1.488, -0.5]], collide: 0}
      - {kind: loft, a: [[-8.8025, 1.488, -1.4], [-9.9426, 1.6381, -1.4], [-10.05, 0.0, -1.4], [-8.9, 0.0, -1.4]], b: [[-8.8025, 1.488, -0.5], [-9.9426, 1.6381, -0.5], [-10.05, 0.0, -0.5], [-8.9, 0.0, -0.5]], collide: 0}
      - {kind: loft, a: [[-8.9, 0.0, -1.4], [-10.05, 0.0, -1.4], [-9.9426, -1.6381, -1.4], [-8.8025, -1.488, -1.4]], b: [[-8.9, 0.0, -0.5], [-10.05, 0.0, -0.5], [-9.9426, -1.6381, -0.5], [-8.8025, -1.488, -0.5]], collide: 0}
      - {kind: loft, a: [[-8.8025, -1.488, -1.4], [-9.9426, -1.6381, -1.4], [-9.6224, -3.2482, -1.4], [-8.5116, -2.9505, -1.4]], b: [[-8.8025, -1.488, -0.5], [-9.9426, -1.6381, -0.5], [-9.6224, -3.2482, -0.5], [-8.5116, -2.9505, -0.5]], collide: 0}
      - {kind: loft, a: [[-8.5116, -2.9505, -1.4], [-9.6224, -3.2482, -1.4], [-9.0947, -4.8027, -1.4], [-8.0322, -4.3626, -1.4]], b: [[-8.5116, -2.9505, -0.5], [-9.6224, -3.2482, -0.5], [-9.0947, -4.8027, -0.5], [-8.0322, -4.3626, -0.5]], collide: 0}
      - {kind: loft, a: [[-8.0322, -4.3626, -1.4], [-9.0947, -4.8027, -1.4], [-8.3686, -6.275, -1.4], [-7.3727, -5.7, -1.4]], b: [[-8.0322, -4.3626, -0.5], [-9.0947, -4.8027, -0.5], [-8.3686, -6.275, -0.5], [-7.3727, -5.7, -0.5]], collide: 0}
      - {kind: loft, a: [[-7.3727, -5.7, -1.4], [-8.3686, -6.275, -1.4], [-7.4566, -7.64, -1.4], [-6.5442, -6.9399, -1.4]], b: [[-7.3727, -5.7, -0.5], [-8.3686, -6.275, -0.5], [-7.4566, -7.64, -0.5], [-6.5442, -6.9399, -0.5]], collide: 0}
      - {kind: loft, a: [[-6.5442, -6.9399, -1.4], [-7.4566, -7.64, -1.4], [-6.3742, -8.8742, -1.4], [-5.561, -8.061, -1.4]], b: [[-6.5442, -6.9399, -0.5], [-7.4566, -7.64, -0.5], [-6.3742, -8.8742, -0.5], [-5.561, -8.061, -0.5]], collide: 0}
      - {kind: loft, a: [[-5.561, -8.061, -1.4], [-6.3742, -8.8742, -1.4], [-5.14, -9.9566, -1.4], [-4.4399, -9.0442, -1.4]], b: [[-5.561, -8.061, -0.5], [-6.3742, -8.8742, -0.5], [-5.14, -9.9566, -0.5], [-4.4399, -9.0442, -0.5]], collide: 0}
      - {kind: loft, a: [[-4.4399, -9.0442, -1.4], [-5.14, -9.9566, -1.4], [-3.775, -10.8686, -1.4], [-3.2, -9.8727, -1.4]], b: [[-4.4399, -9.0442, -0.5], [-5.14, -9.9566, -0.5], [-3.775, -10.8686, -0.5], [-3.2, -9.8727, -0.5]], collide: 0}
      - {kind: loft, a: [[-3.2, -9.8727, -1.4], [-3.775, -10.8686, -1.4], [-2.3027, -11.5947, -1.4], [-1.8626, -10.5322, -1.4]], b: [[-3.2, -9.8727, -0.5], [-3.775, -10.8686, -0.5], [-2.3027, -11.5947, -0.5], [-1.8626, -10.5322, -0.5]], collide: 0}
      - {kind: loft, a: [[-1.8626, -10.5322, -1.4], [-2.3027, -11.5947, -1.4], [-0.7482, -12.1224, -1.4], [-0.4505, -11.0116, -1.4]], b: [[-1.8626, -10.5322, -0.5], [-2.3027, -11.5947, -0.5], [-0.7482, -12.1224, -0.5], [-0.4505, -11.0116, -0.5]], collide: 0}
      - {kind: loft, a: [[-0.4505, -11.0116, -1.4], [-0.7482, -12.1224, -1.4], [0.8619, -12.4426, -1.4], [1.012, -11.3025, -1.4]], b: [[-0.4505, -11.0116, -0.5], [-0.7482, -12.1224, -0.5], [0.8619, -12.4426, -0.5], [1.012, -11.3025, -0.5]], collide: 0}
      - {kind: loft, a: [[1.012, -11.3025, -1.4], [0.8619, -12.4426, -1.4], [2.5, -12.55, -1.4], [2.5, -11.4, -1.4]], b: [[1.012, -11.3025, -0.5], [0.8619, -12.4426, -0.5], [2.5, -12.55, -0.5], [2.5, -11.4, -0.5]], collide: 0}
      - {kind: loft, a: [[2.5, -11.4, -1.4], [2.5, -12.55, -1.4], [4.1381, -12.4426, -1.4], [3.988, -11.3025, -1.4]], b: [[2.5, -11.4, -0.5], [2.5, -12.55, -0.5], [4.1381, -12.4426, -0.5], [3.988, -11.3025, -0.5]], collide: 0}
      - {kind: loft, a: [[3.988, -11.3025, -1.4], [4.1381, -12.4426, -1.4], [5.7482, -12.1224, -1.4], [5.4505, -11.0116, -1.4]], b: [[3.988, -11.3025, -0.5], [4.1381, -12.4426, -0.5], [5.7482, -12.1224, -0.5], [5.4505, -11.0116, -0.5]], collide: 0}
      - {kind: loft, a: [[5.4505, -11.0116, -1.4], [5.7482, -12.1224, -1.4], [7.3027, -11.5947, -1.4], [6.8626, -10.5322, -1.4]], b: [[5.4505, -11.0116, -0.5], [5.7482, -12.1224, -0.5], [7.3027, -11.5947, -0.5], [6.8626, -10.5322, -0.5]], collide: 0}
      - {kind: loft, a: [[6.8626, -10.5322, -1.4], [7.3027, -11.5947, -1.4], [8.775, -10.8686, -1.4], [8.2, -9.8727, -1.4]], b: [[6.8626, -10.5322, -0.5], [7.3027, -11.5947, -0.5], [8.775, -10.8686, -0.5], [8.2, -9.8727, -0.5]], collide: 0}
      - {kind: loft, a: [[8.2, -9.8727, -1.4], [8.775, -10.8686, -1.4], [10.14, -9.9566, -1.4], [9.4399, -9.0442, -1.4]], b: [[8.2, -9.8727, -0.5], [8.775, -10.8686, -0.5], [10.14, -9.9566, -0.5], [9.4399, -9.0442, -0.5]], collide: 0}
      - {kind: loft, a: [[9.4399, -9.0442, -1.4], [10.14, -9.9566, -1.4], [11.3742, -8.8742, -1.4], [10.561, -8.061, -1.4]], b: [[9.4399, -9.0442, -0.5], [10.14, -9.9566, -0.5], [11.3742, -8.8742, -0.5], [10.561, -8.061, -0.5]], collide: 0}
      - {kind: loft, a: [[10.561, -8.061, -1.4], [11.3742, -8.8742, -1.4], [12.4566, -7.64, -1.4], [11.5442, -6.9399, -1.4]], b: [[10.561, -8.061, -0.5], [11.3742, -8.8742, -0.5], [12.4566, -7.64, -0.5], [11.5442, -6.9399, -0.5]], collide: 0}
      - {kind: loft, a: [[11.5442, -6.9399, -1.4], [12.4566, -7.64, -1.4], [13.3686, -6.275, -1.4], [12.3727, -5.7, -1.4]], b: [[11.5442, -6.9399, -0.5], [12.4566, -7.64, -0.5], [13.3686, -6.275, -0.5], [12.3727, -5.7, -0.5]], collide: 0}
      - {kind: loft, a: [[12.3727, -5.7, -1.4], [13.3686, -6.275, -1.4], [14.0947, -4.8027, -1.4], [13.0322, -4.3626, -1.4]], b: [[12.3727, -5.7, -0.5], [13.3686, -6.275, -0.5], [14.0947, -4.8027, -0.5], [13.0322, -4.3626, -0.5]], collide: 0}
      - {kind: loft, a: [[13.0322, -4.3626, -1.4], [14.0947, -4.8027, -1.4], [14.6224, -3.2482, -1.4], [13.5116, -2.9505, -1.4]], b: [[13.0322, -4.3626, -0.5], [14.0947, -4.8027, -0.5], [14.6224, -3.2482, -0.5], [13.5116, -2.9505, -0.5]], collide: 0}
      - {kind: loft, a: [[13.5116, -2.9505, -1.4], [14.6224, -3.2482, -1.4], [14.9426, -1.6381, -1.4], [13.8025, -1.488, -1.4]], b: [[13.5116, -2.9505, -0.5], [14.6224, -3.2482, -0.5], [14.9426, -1.6381, -0.5], [13.8025, -1.488, -0.5]], collide: 0}
      - {kind: loft, a: [[13.8025, -1.488, -1.4], [14.9426, -1.6381, -1.4], [15.05, -0.0, -1.4], [13.9, -0.0, -1.4]], b: [[13.8025, -1.488, -0.5], [14.9426, -1.6381, -0.5], [15.05, -0.0, -0.5], [13.9, -0.0, -0.5]], collide: 0}
      - {kind: rod, from: [2.5, 0, -1.4], to: [2.5, 0, -1.1], radius: 11.45, collide: 0, color: "#cfc4a8"}   # the plate
      - {kind: loft, a: [[-8.7, -1.0, -1.1], [13.7, -1.0, -1.1], [13.7, 1.0, -1.1], [-8.7, 1.0, -1.1]], b: [[-8.7, -1.0, -0.8], [13.7, -1.0, -0.8], [13.7, 1.0, -0.8], [-8.7, 1.0, -0.8]], collide: 0, color: "#c2b694"}   # the cross-bar
      - {kind: rod, from: [0, 0, -1.4], to: [0, 0, -0.6], radius: 1.2, collide: 0, color: "#a39d90"}   # the boss on the shaft, off the wheel's centre
      - {kind: rod, from: [0, 0, -1.4], to: [0, 0, -14], radius: 0.6, collide: 0, color: "#8f8a80"}   # the upright shaft
  - id: pinion
    shape: part
    pos: [0, 0, 2.5]
    density: 7800
    friction: 0.1
    color: "#b8ad97"
    pieces:
      - {kind: loft, a: [[8.45, 0.1307, 0.4921], [8.45, 1.0744, 0.7988], [8.45, 1.0583, -0.1528], [8.45, 0.7031, -0.2682]], b: [[15.55, 0.1307, 0.4921], [15.55, 1.0744, 0.7988], [15.55, 1.0583, -0.1528], [15.55, 0.7031, -0.2682]], collide: 2}
      - {kind: loft, a: [[8.45, 1.286, 0.9524], [8.45, 1.8692, 1.7552], [8.45, 2.4155, 0.9759], [8.45, 2.1959, 0.6737]], b: [[15.55, 1.286, 0.9524], [15.55, 1.8692, 1.7552], [15.55, 2.4155, 0.9759], [15.55, 2.1959, 0.6737]], collide: 2}
      - {kind: loft, a: [[8.45, 1.95, 2.0039], [8.45, 1.95, 2.9961], [8.45, 2.85, 2.6868], [8.45, 2.85, 2.3132]], b: [[15.55, 1.95, 2.0039], [15.55, 1.95, 2.9961], [15.55, 2.85, 2.6868], [15.55, 2.85, 2.3132]], collide: 2}
      - {kind: loft, a: [[8.45, 1.8692, 3.2448], [8.45, 1.286, 4.0476], [8.45, 2.1959, 4.3263], [8.45, 2.4155, 4.0241]], b: [[15.55, 1.8692, 3.2448], [15.55, 1.286, 4.0476], [15.55, 2.1959, 4.3263], [15.55, 2.4155, 4.0241]], collide: 2}
      - {kind: loft, a: [[8.45, 1.0744, 4.2012], [8.45, 0.1307, 4.5079], [8.45, 0.7031, 5.2682], [8.45, 1.0583, 5.1528]], b: [[15.55, 1.0744, 4.2012], [15.55, 0.1307, 4.5079], [15.55, 0.7031, 5.2682], [15.55, 1.0583, 5.1528]], collide: 2}
      - {kind: loft, a: [[8.45, -0.1307, 4.5079], [8.45, -1.0744, 4.2012], [8.45, -1.0583, 5.1528], [8.45, -0.7031, 5.2682]], b: [[15.55, -0.1307, 4.5079], [15.55, -1.0744, 4.2012], [15.55, -1.0583, 5.1528], [15.55, -0.7031, 5.2682]], collide: 2}
      - {kind: loft, a: [[8.45, -1.286, 4.0476], [8.45, -1.8692, 3.2448], [8.45, -2.4155, 4.0241], [8.45, -2.1959, 4.3263]], b: [[15.55, -1.286, 4.0476], [15.55, -1.8692, 3.2448], [15.55, -2.4155, 4.0241], [15.55, -2.1959, 4.3263]], collide: 2}
      - {kind: loft, a: [[8.45, -1.95, 2.9961], [8.45, -1.95, 2.0039], [8.45, -2.85, 2.3132], [8.45, -2.85, 2.6868]], b: [[15.55, -1.95, 2.9961], [15.55, -1.95, 2.0039], [15.55, -2.85, 2.3132], [15.55, -2.85, 2.6868]], collide: 2}
      - {kind: loft, a: [[8.45, -1.8692, 1.7552], [8.45, -1.286, 0.9524], [8.45, -2.1959, 0.6737], [8.45, -2.4155, 0.9759]], b: [[15.55, -1.8692, 1.7552], [15.55, -1.286, 0.9524], [15.55, -2.1959, 0.6737], [15.55, -2.4155, 0.9759]], collide: 2}
      - {kind: loft, a: [[8.45, -1.0744, 0.7988], [8.45, -0.1307, 0.4921], [8.45, -0.7031, -0.2682], [8.45, -1.0583, -0.1528]], b: [[15.55, -1.0744, 0.7988], [15.55, -0.1307, 0.4921], [15.55, -0.7031, -0.2682], [15.55, -1.0583, -0.1528]], collide: 2}
      - {kind: rod, from: [8.45, 0, 2.5], to: [15.55, 0, 2.5], radius: 1.95, collide: 0}   # the pinion's core
      - {kind: rod, from: [6.95, 0, 2.5], to: [22.55, 0, 2.5], radius: 0.4, collide: 0, color: "#8f8a80"}   # its shaft
  - id: frame
    shape: part
    pos: [0, 0, 0]
    fixed: true
    color: "#cfc6b4"
    pieces:
      - {kind: rod, from: [0, 0, -14], to: [0, 0, -12.5], radius: 1.1, collide: 0}   # the footstep
      - {kind: loft, a: [[18.55, -0.7, 3.4], [19.95, -0.7, 3.4], [19.95, 0.7, 3.4], [18.55, 0.7, 3.4]], b: [[18.55, -0.7, -14], [19.95, -0.7, -14], [19.95, 0.7, -14], [18.55, 0.7, -14]], collide: 0}   # the pinion's standard
joints:
  - {id: j_crown, type: hinge, body: crown, axis: [0, 0, 1], damping: 0.01}   # the one driven joint; + : counter-clockwise seen from above
  - {id: j_pinion, type: hinge, body: pinion, axis: [1, 0, 0], damping: 0.0005, frictionloss: 0.002}
contact: {solref: [0.002, 1.0], solimp: [0.95, 0.99, 0.0005], margin: 0}
driver: {joint: j_crown, kind: velocity, rpm: 10, kv: 2.0, max_torque: 20}
checks:
  - {type: ratio, out: j_pinion, in: j_crown, expect: 4.8, tol: 0.06, settle_s: 0.5, window_s: 6.1}   # one turn of the wheel: 48/10 on the mean
  - {type: ratio_range, out: j_pinion, in: j_crown, min: 3.65, max: 5.95, min_swing: 1.7, settle_s: 0.5, window_s: 12, slices: 48}   # the relative radius changes: 3.8..5.8 (kinematics)
  - {type: penetration, max: 0.001, settle_s: 0.5}
camera: {target: [4.0, 0, -2.0], position: [-6.0, -42.0, 24.0], fov: 34}
display:
  output: j_pinion
  labels: {j_crown: "Crown-wheel (driver)", j_pinion: "Pinion"}
  proof: {label: "Teeth out of contact", sub: "the wheel turns and the pinion stays"}

