Sorry for my no so good english I am from Czech republic
I created a simple program, that generate spheres as mcfunctions.
Controls are easy.
1. Choose if you want only one sphere or spheres with radius between two values
2. Enter radius as number/s
3. Outputted mcfunctons will be in <program directory>/sphere. Will be named <radius>.mcfunction
How to use in minecraft:
1. copy "sphere" folder from program directory to directory \<world name>\data\functions
2. If you are playing the world, you must use /reload command or rejoin the world
Using the function:
1. Step on block from what you want sphere to be. (center of the sphere will be block above this block)
2. use /function sphere:<raduius>
Cylinders work in almost same way, but the naming is <radius>-<lenght (from center to ending)>-<direction>
lenght of 0 is circle with middle at execution point