function ParametricCone (options) {
    options  = options || {};
    var detail   = options.detail || 15;
    var radius   = options.radius || 1 / Math.PI;

    var buffers = GeometryHelper.generateParametric(
        detail,
        detail,
        ParametricCone.generator.bind(null, radius)
    );

    if (options.backface !== false) {
        GeometryHelper.addBackfaceTriangles(buffers.vertices, buffers.indices);
    }

    options.buffers = [
        { name: 'a_pos', data: buffers.vertices },
        { name: 'a_texCoord', data: GeometryHelper.getSpheroidUV( buffers.vertices ), size: 2 },
        { name: 'a_normals', data: GeometryHelper.computeNormals( buffers.vertices, buffers.indices ) },
        { name: 'indices', data: buffers.indices, size: 1 }
    ];

    return new Geometry(options);
}
This function returns a new static geometry, which is passed
custom buffer data.

@class ParametricCone
@constructor

@param {Object} options Parameters that alter the
vertex buffers of the generated geometry.

@return {Object} constructed geometry