POV-Ray : Newsgroups : povray.general : Mirascope Server Time
4 Dec 2024 13:56:24 EST (-0500)
  Mirascope (Message 1 to 3 of 3)  
From: Bald Eagle
Subject: Mirascope
Date: 24 Dec 2023 18:35:00
Message: <web.6588c00f78a2f45d1f9dae3025979125@news.povray.org>
Has anyone ever tried to make a mirascope in POV-Ray?

https://www.physics.wisc.edu/ingersollmuseum/exhibits/opticscolor/parabolicmirrorillusion/

Is there a setting that needs to the right value or a feature that needs to be
enabled for something like that to work?

Warp commented (on parabolic mirrors in general) that, "POV-Ray can make
perfectly parabolic mirrors and reflect light from them. It's far from
impossible."

http://news.povray.org/povray.general/message/%3C3f36c2e0%40news.povray.org%3E/#%3C3f36c2e0%40news.povray.org%3E

- BW


Post a reply to this message

From: Cousin Ricky
Subject: Re: Mirascope
Date: 25 Dec 2023 00:07:49
Message: <65890e25$1@news.povray.org>
On 2023-12-24 19:34 (-4), Bald Eagle wrote:
> 
> Warp commented (on parabolic mirrors in general) that, "POV-Ray can make
> perfectly parabolic mirrors and reflect light from them. It's far from
> impossible."

Warp is, of course, right on this matter, and he even implemented a
parabolic mirror in 2 dimensions.  However, I have a quibble about
UW-Madison's terminology.  Those mirrors are what I consider *concave*,
not convex.  This macro implements a concave paraboloid in 3 dimensions:

#macro Concave_Paraboloid (yFocus)
  poly { 2, <-1, 0, 0, 0, 0, 0, yFocus * 4, -1, 0, 0> }
#end

The vertex is at the origin, and the concave surface faces upward for a
positive yFocus.  You would need to intersect this with a limiting
object of appropriate size.  I used poly{2} rather than quadric{}
because the latter is buggy.


Post a reply to this message

From: Bald Eagle
Subject: Re: Mirascope
Date: 25 Dec 2023 09:00:01
Message: <web.658989d0cd602f1b1f9dae3025979125@news.povray.org>
Cousin Ricky <ric### [at] yahoocom> wrote:
However, I have a quibble about
> UW-Madison's terminology.  Those mirrors are what I consider *concave*,
> not convex.

SO many people have a hard time with one vs the other.  Dunno why.

> This macro implements a concave paraboloid in 3 dimensions:
>
> #macro Concave_Paraboloid (yFocus)
>   poly { 2, <-1, 0, 0, 0, 0, 0, yFocus * 4, -1, 0, 0> }
> #end

Nice.  I was using a parabaloid isosurface.

> The vertex is at the origin, and the concave surface faces upward for a
> positive yFocus.  You would need to intersect this with a limiting
> object of appropriate size.  I used poly{2} rather than quadric{}
> because the latter is buggy.

This might be the way, since when I was modeling the reflections with trace ()
to make sure my dimensions were right, with some camera angles and clipped_by
dimensions, my whole isosurface disappeared.

The most important bit of information is that the focal length should be twice
its "thickness" so that the lower mirror projects the image through the hole in
the upper mirror.

To do that, I was going by:

https://en.wikipedia.org/wiki/Parabola#In_a_Cartesian_coordinate_system

to get:
y = 1/(Factor*focal_length) * (pow (x, 2) + pow (z, 2))

So I had
#declare focal_length = 2;
#declare Factor = 4.0;

and I had 1-unit high slices stacked on top of one another, with the top
clipped_by making the hole in the top as well.

I can see the cube I placed in the bottom, but it doesn't project a real image
out the top.  Your poly seemed to be too concave, and I needed to "flatten it
out" to get similar results - still no illusory image even tweaking the focal
length over a wide range.   It gets close, but never "pops out" of the hole.

- BW

I thought this was interesting, but it didn't really help me:
https://spie.org/etop/2007/etop07methodsV.pdf

Patent:
https://patents.google.com/patent/US3647284


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.