code: def _sampleLocationOnSide(self):
      
      z = random.uniform(-1, 1) * self.height / 2.
      sampledAngle = 2 * random.random() * pi
      x, y = self.radius * cos(sampledAngle), self.radius * sin(sampledAngle)
      return [x, y, z]
docs: Helper method to sample from the lateral surface of a cylinder.