docs: function (params) {
  			this.params = params;
  
  			/**
  			 * Function: findClosestPointOnPath
  			 * Finds the closest point on this segment to the given [x, y],
  			 * returning both the x and y of the point plus its distance from
  			 * the supplied point, and its location along the length of the
  			 * path inscribed by the segment.  This implementation returns
  			 * Infinity for distance and null values for everything else;
  			 * subclasses are expected to override.
  			 */
  			this.findClosestPointOnPath = function (x, y) {
  				return {
  					d: Infinity,
  					x: null,
  					y: null,
  					l: null
  				};
  			};
  
  			this.getBounds = function () {
  				return {
  					minX: Math.min(params.x1, params.x2),
  					minY: Math.min(params.y1, params.y2),
  					maxX: Math.max(params.x1, params.x2),
  					maxY: Math.max(params.y1, params.y2)
  				};
  			};
  		}