I create the lines as separate instances with their own node
I compute the vector pointing from the instance points (your original geometry) to the empty by taking the difference between the the position node and the object info node location
I use the align euler to vector node to compute the rotation of the instances, making the lines point toward the empty: note that the curves are created as originating from the original spheres (i.e. from 0,0,0) anf pointing upwards with a length of 1, the align to vector node also uses the z-option
I scale the curves by the distance between the spheres (position) and the empty
I also made the spheres track the empty, because why not ?
THANK YOU. Of course it all works perfectly, and I now have my curves which will become lasers. Without geo nodes, the idea is to have a narrow (along the Z axis) slice of a mesh (a character) as a particle emitter; lasers move from the empty (a fixed origination point) to each particle for exactly 1 frame. I had the setup done via a tutorial using animation nodes but they crapped out on a 270 frame animation; on frame 113 (0x71) the cubes used to create the thin slice randomly began rendering, blocking the character mesh. The point is to have dancing lasers that 3D print a character. The cubes would render off and on for 1 frame then go invisible again. I could not find a bug reporting system for animation nodes so I had to ditch them.
In this implementation the spheres will move every frame but the empty never will. It’s the origination point for the lasers. But I can get that working.