RectangularConePrimitive

public class RectangularConePrimitive : Primitive
{
    // Height of the cone from base to apex
    public float height;

    // Length of the rectangular base
    public float length;

    // This transform must only contain rotation and translation components, not scale
    public Matrix4F transform;

    // Width of the rectangular base
    public float width;
}

The base of the cone is centered at (0, 0, 0), and the tip extends upwards to (0, height, 0).

WARNING: the transform matrix should only contain rotation and translation operations, not scale. The size of the cone should be controlled via the width, length and height properties