First command block:
execute as @e[type=minecraft:armor_stand,tag=dummy] at @s run summon minecraft:armor_stand ^ ^ ^3.5 {NoGravity:1b,ArmorItems:[{},{},{},{id:"minecraft:sand",Count:1}],Pose:{Head:[1f,0f,0f]},Invisible:1b,Invulnerable:1b,Marker:1b,Tags:["dummy2"]}
Second command block:
execute as @e[tag=dummy] at @s rotated as @s run tp @s ~ ~ ~ ~9 ~
Third command block:
execute as @e[type=minecraft:armor_stand,y_rotation=360,tag=dummy] at @s run tp @s ~ ~ ~ ~ ~9
Fourth command:
tag @e[type=minecraft:armor_stand,tag=!dummy,tag=dummy2] add dummy1
Fifth command block:
execute as @e[type=minecraft:armor_stand,tag=!dummy] at @s run tp @s ~ ~ ~ facing entity @e[limit=1,tag=dummy]
Sixth command block:
execute as @e[type=minecraft:armor_stand,tag=dummy1] store result entity @s Pose.Head[0] float 1.0 run data get entity @s Rotation[1] 1.0
Seventh command:
kill @e[type=minecraft:armor_stand,x_rotation=90,tag=dummy]
Command to spawn the sphere:
/summon armor_stand ~ ~ ~ {NoGravity:1b,Tags:["dummy"],Rotation:[0F,-89F]}
Command to change what the sphere looks like:
execute as @e[tag=dummy1] run data merge entity @s {ArmorItems:[{},{},{},{id:"stone",Count:1}]}