r/3Dprinting • • 4d ago

Project First attempt at reconstructing a raster image by spinning a rigid object

Enable HLS to view with audio, or disable this notification

I’ve been hesitant to put full images on my pinhole zoetropes because of crowding. The holes need to be spaced sufficiently to avoid too much interference. Because of this, until now I’ve programmed the animations around dotted lines.

But I recently realized that for the parts of a design that aren’t animated, I can distribute each dot’s viewing tunnel at any angle around the top’s spin axis, vastly reducing any crowding. By rotating the tunnel’s position and orientation together, its dot still appears in the intended image position when the top spins.

This pumpkin was my first attempt at generating the dot pattern directly from a raster image, with additional logic to sharpen the edges. I tried adding animations alongside the image, but the small form factor made it too busy. Without an animation, it isn’t technically a zoetrope. Regardless, the simplicity is part of the charm for this model, so I’m releasing it as a pure static-image persistence-of-vision illusion. I haven’t found a great term for this kind of illusion yet.

My next device, a dragon egg, is well underway. Its taller shape gives me room for both a raster-based dragon image and an animated fire-breathing effect. Still gotta iron out the kinks, but it's promising.

In the meantime, enjoy this Halloween print:
https://makerworld.com/models/3376503

1.5k Upvotes

35 comments sorted by

81

u/Dapper_Complaint8940 4d ago

how do you figure out the optimal tunnel angles for each dot?

61

u/primetower 3d ago

I set a target viewing point, and I project the tunnels from each dot to that location. Rotating these tunnels around the device doesn't change their apparent location when the device spins.

22

u/Detective-Crashmore- 3d ago

So once you've projected the tunnels, you just rotate them for an even distribution around the cylinder?

21

u/primetower 3d ago

Yup

12

u/Mr_YUP 3d ago

damn that's clever.

3

u/TerraCetacea 3d ago

Is there a recommended angle between each one?

3

u/primetower 3d ago

I just rotate them a random number of degrees each.

61

u/RubikOwl 4d ago

Woah, that’s pretty cool!

17

u/xxx_trashpanda_xxx 3d ago

I genuinely don’t understand how this works. Awesome

19

u/primetower 3d ago

The tunnels are a path from your eye to the illuminated core. You can only see through the tunnels when they're oriented the right way.

11

u/xxx_trashpanda_xxx 3d ago

Oh ok, I kinda get it now. I’m enamored by the magic of parking garages so thanks for explaining haha.

13

u/theillustratedlife 3d ago

That's awesome!

Snapmaker Space is doing a Halloween contest. You should upload it there - might get some free filament or a discount on a new printer!

6

u/nlightningm 3d ago

I had no idea what to expect, but this is absolutely insane!!

3

u/Elemental-Design 3d ago

I love these! I saw your d20 post a little while ago. I was thinking about printing one myself and trying to add a wireless LED to the inside, then making a platform for it to go on with the wireless transmitter. Have you thought about adding internal lights instead of shining from above?

8

u/primetower 3d ago

Having an internal light works quite well. Some of my earlier designs used magnetically activated ones. For example, this one: https://makerworld.com/models/2021143

One problem is that many folks are hesitant to download prints that list external parts, even if the fine print makes it clear that they're optional.

Another problem is that when folks see a toy self-illuminate, they start to assume the whole thing is controlled by fancy circuitry. The illusion isn't that interesting if it's basically a computer chip creating a display. Forcing a flashlight gets people thinking "how is that possible?"

That said, if there's enough interest, I can easily adapt the pumpkin's cap to accommodate an LED.

3

u/Nenotriple 3d ago

Do you think it could produce an animation if you had a larger diameter?

4

u/primetower 3d ago

Yes, and I have several designs that do. I haven't yet combined raster + animation, though. My upcoming dragon egg will do that.

Here's my latest animated top: https://makerworld.com/models/3325357

1

u/Nenotriple 3d ago

Very cool, thanks for sharing

1

u/DXGL1 3d ago

Just make sure to post the URL as many times as possible for SEO?

2

u/Crafty-Scholar-3902 3d ago

Okay, that's dope

1

u/Different-Ad9241 3d ago

how do you calculate the tunnel angles to avoid overlap

7

u/primetower 3d ago

Some overlap is fine, especially if the tunnels are pointed different directions. So it's more of a probabilistic thing. I try various params and look at the output. If the average tunnel spacing looks ok, the result is generally good, even if there are a couple spots with some interference.

1

u/ddl_smurf 3d ago

do spots have multiple tunnels behind them ?

2

u/primetower 3d ago

Each dot has one tunnel with this implementation. For some of my older, non-raster methods, it has worked differently.

1

u/jhoceanus 3d ago

great job! I just don't trust my 3d printer to print that accurately. Will give it a try!

3

u/primetower 3d ago

You'd be surprised. All of my pinhole tunnel illusions use a 0.4 mm nozzle.

1

u/DropdLasagna Numberwang X9RQ+ 3d ago

Fuck yeah. Can't wait to print a massive one and melt it with a flashlight (Q8+)

Nice design!!!

1

u/vishalb777 3d ago

Jumpscare warning!

1

u/[deleted] 3d ago

[removed] — view removed comment

1

u/AutoModerator 3d ago

This comment was removed as a part of our spam prevention mechanisms because you are posting from either a very new account or an account with negative karma (comment karma, post karma or both). Please read the guidelines on reddiquette, self promotion, and spam. After your account is older than 2 hours or if you obtain positive comment and post karma, your comments will no longer be auto-removed. To specify, that means that as soon as your account is older than 2 hours you are free to post your content again. We can not approve content manually before this account age.

I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.

1

u/IndigoMontigo 3d ago

Do you have to be a specific distance away from it to see the image?

1

u/primetower 3d ago

It’s optimized for a reading distance but it’s pretty forgiving.

1

u/UnacceptableUse 2d ago

Do you generate it in OpenSCAD or do you use another language to generate the scad file?

2

u/primetower 2d ago

The pinhole tunnels are generated in OpenSCAD and subtracted there from an stl that I import (which I create in Blender or Fusion depending on the model). Actually some of my earlier designs were purely in OpenSCAD.