Join your objects. Control-J. See below.
For mathematical recreations you might see the link
Also consider free online books from your library if possible.
Computer Graphics, 3D Computer Graphics.
For Immediate Results
(01) Create a suitable emitter mesh for placement of your objects. Duplicate your pointer object as archive .. Make mesh data single user. Use Particles on emitter mesh with your object with a suitable center ..Particles will not copy constraints. Set emission number to your taste. See Blender Particles online educational videos if necessary on a video internet site.
(02) [Convert] Particles to Real Objects under Modifier Tab. You will have many new objects selected for user convenience.
(03) Group the new objects
(04) Add Constraint Track To on a single object of group .. the active object. Select whole group keeping the Active Object and ......[Copy constraints to selected objects]. You will have many objects pointing to the same target. You may move target or group as whole to test.
If your computer has enough CPU Power I would stop at this step. You might want to list the specs of your computer. Many people use track to constraints ... they are dynamic and flexible and appreciated. A couple of [Track to] constraints are your friends.
(04.5) If you cones are placed already ... you can use them in the next step.
(05) If it suits your tastes [Join] the objects of the group. You will have one complex mesh composed of the original of the cones. Join is Control-J in object mode .. See Blender menus. You will have one [track to] constraint. You can remove the constraint and rotate the complex mesh into place on last time ..since the mesh will move when the constraint is deleted. Now there are now zero [track to] constraints.
In the image above is an emitter mesh, red cube target, original gold cone with constraint, backup of cone, particle system, converted particles in green and a copy to show that it is now a single mesh