Message Boards Message Boards

GROUPS:

Prolog in Plot3D should use 3D-coordinates

Posted 2 months ago
576 Views
|
4 Replies
|
2 Total Likes
|

POSTED BY: Werner Geiger
4 Replies
Posted 2 months ago

I have sent this request to Wolfram support.

POSTED BY: Werner Geiger
Posted 2 months ago

Wolfram Technical Support tells me:

Thank you for contacting Wolfram Technical Support. I understand that you want to have the Prolog/Epilog option take 3-dimentional coordinates.

Thank you for taking the time to send your report. Mathematica is working as designed here.

The Prolog/Epilog options are essentially there to specify the order of shapes appearing in a graphic. If you specify Prolog in a 3D graphic, you are stating that the object will always appear behind every other graphic; because of that, only 2 dimensions are needed to specify its placement which are scaled (from 0 to 1) to the x and y coordinates of the graphics window.

For example, if I plot Graphics3D[{Sphere[{0, 0, 0}, 10]}, Prolog -> Disk[{.75, .75}, .1]], I am saying that I want the Disk to appear always behind the Sphere and at position (.75, .75) in relation to the graphics window.

If I have missed some essential feature of your report, please let me know.

Best, Andrew Lewis Wolfram Technology Engineer Technical Support www.wolfram.com/support

POSTED BY: Werner Geiger
Posted 2 months ago

My answer to technical support:

Hello Andrew Thanks for your answer. I understand your argument:

“The Prolog/Epilog options are essentially there to specify the order of shapes appearing in a graphic.”

OK. But from my point of view they should be more general: Enhance a graphics with some more graphics. In our case: Enhance some 3D-Plot (or -Chart or the like) with any standard Graphics primitives, and - of course – even 3D primitives. This can currently not be done. (It can be reached with Show or Overlay, but not directly within the 3D-Plot).

For me the sequencing done by Prolog or Epilog does not mean behind or before in space, but drawn before or after (with respect to time) the main 3D-Plot.

“If you specify Prolog in a 3D graphic, you are stating that the object will always appear behind every other graphic; because of that, only 2 dimensions are needed.“

From your point of view this is true since you allow only 2D Prolog/Epilog. From my point of view including 3D Prolog/Epilog, it is not true.

A small Example: You draw some 3D surface with Plot3D and then you want to mark the maxima by a Point, an Arrow and some text (or a Callout). Currently you cannot do that within Plot3D. (Well you could misuse LabelingFunction in some tricky (If {x,y,z} nearest to a maximum, …]) way for that).

I think the restriction to 2D-Prolog/Epilog is far too strict. And I suppose, allowing for 3D as well would be very consistent with the Wolfram graphic language and would not be very difficult for you to implement.

Kind regards Werner Geiger

POSTED BY: Werner Geiger
Posted 2 months ago

Wolfram Technical Support, Andrew Lewis, answers:

... Specifying a 3-D point as either a Prolog/Epilog in Plot3D would make sense programmatically, but it would not make a difference to the overall graphic when compared with using the Show function with Plot3D and that same 3-D point.

However, I have sent a suggestion report to the appropriate people in our development team so this can be considered for future versions of Mathematica. ...

Thanks to Andrew

POSTED BY: Werner Geiger
Reply to this discussion
Community posts can be styled and formatted using the Markdown syntax.
Reply Preview
Attachments
Remove
or Discard

Group Abstract Group Abstract