Alright, so I am thinking about an idea of a useless application, however it is interesting me.

A 3D "perspective" of color.

I know, confusing. But think of it this way:
Movement given an x, y, z coordinate.
Color given r, b, g = x, y, z

I was also thinking of somewhat of a "map" or a 3rd person view of it.

Using JOpenGL is this possible?
Would it even be viewable? Like the map for instance, looking at it, could you see each 3d pixel in its own color? or would you just be seeing a white cube because of all the colors coming together?
Could you solve this with having an alpha channel?

Recommended Answers

All 8 Replies

There's no problem mapping a Color to a point in 3D space, nor in associating a colored pixel or two with that point. As with any 3D data representation it may be more or less useful, depending on what the data is. If it maps to a surface then that's great, butg if it's solid then ot's hard to see what's going on.

As for teschnology, I suggest you look at JavaFX. According to Oracle JavaFX is the future of GUIs, and replaces Swing for new applications. Personally I'm sceptical, but JavaFX is definitely now mainstream suppported, and does have 3D scene modelling, including chosing camera positions etc. straight out of the box.

So it would be possible, but how would you solve the hard to see problem? Could you just use transparency?

I don't think there's a general answer to that. It all depends on the "shape" that your data takes in the 3D space. You certainly can make some pixels partly transparent (alpha vlaues < 1.0) to reveal the pixels "behind" them. Maybe it would be more helpful if you made it really easy for the user to rotate the data (or move the camera) to look at it from different angles?

I was basically going to make a cube 255, 255, 255. And probably have something along the lines of a scroll possibly? Scroll in to make the pixels in the front semi transparent

Yes, you can do that easily.
Maybe it's time to hack something simple/disposable together and start experimenting.

Before I start, is there a way to do it with the standard libraries?
I know I could do it in 2D, which would require more code. And it would also not look as great.

Like I said right at the beginning...
I suggest you look at JavaFX. According to Oracle JavaFX is the future of GUIs, and replaces Swing for new applications. ... JavaFX is definitely now mainstream suppported, and does have 3D scene modelling, including chosing camera positions etc. straight out of the box.
http://www.oracle.com/technetwork/java/javafx/overview/faq-1446554.html#6
http://docs.oracle.com/javafx/8/3d_graphics/jfxpub-3d_graphics.htm
http://www.youtube.com/watch?v=xk-YfIdH0_Y

Alright, was just wondering. Didn't want to learn it if I didn't have to at the moment.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.