That depends on exactly what you want to achieve, but in principle, yes. Bear in mind that tools (typically) get rendered one after the other in the order they appear in the menu, and the crosshairs and orientation labels are rendered immediately after that. So as long as what you’re trying to render doesn’t interfere with tools that would be rendered subsequently, you’d be fine.
The main thing to get right will be placement on the screen, when presumably your object will be defined relative to the scanner axes (as most primitives are in mrview, other than the text, crosshairs, colourbars, etc). For instance, you’ll probably want to show this cone in scanner coordinates (so it aligns with the geometry shown on screen), but positioned at some fixed location relative to the viewport. This where the Projection::model_to_screen() and Projection::screen_to_model() methods can come in handy.
Happy to help further if required – just let me know.