Then this is the right place for your contribution!
If 2 weights, would get an ellipse in xy plane or elipsoid in xyz plane.
If we want a spheroid in xyz plane, need a constant fixed delta applied to weights.
Should be simple to implement since you have already done the hard work (!)
NOTE: the above shapes, such as spheroid refer to the space over which the random number is drawn with uniform distribution of the interval in that particular nth axis.
A Gaussian distribution would also be useful. Here the User would define the interval based on a SD - maybe ask USer to input SD and Interval.
The specification for both characteristics can be set in either absolute or percentage values.