Check this out: 3D news reader

349 views
Skip to first unread message

Jeremy ALLES

unread,
Jun 3, 2008, 4:42:37 AM6/3/08
to wpf-di...@googlegroups.com
Hi WPF Disciples,

First just some words to introduce myself because some of you may never heard about me. I'm not an active blogger about WPF but I'm an active reader :-) Marlon introduced me to this group a couple of months ago (at the very beginning) because he was helping me with a WPF project I was working on (a music player !).

Anyway, I just wanted to share a link: http://msnbcmedia.msn.com/i//msnbc/Components/spectra/spectra.html

This is a 3D news reader based on Flash. I think the result is simply amazing and I was wondering how complex it would be to build something similar using WPF... I'm currently playing with Pavan's ElementFlow (from FluidKit library), and it's so cool !

Regards,
Jeremy

Sacha Barber

unread,
Jun 3, 2008, 4:59:34 AM6/3/08
to wpf-di...@googlegroups.com
I think that would be fairly hard, but Pavan is the man to ask

That is way cool though




Date: Tue, 3 Jun 2008 10:42:37 +0200
From: jeremy...@gmail.com
To: wpf-di...@googlegroups.com
Subject: Check this out: 3D news reader


Messenger's gone Mobile! Get it now!

Jeremiah Morrill

unread,
Jun 3, 2008, 5:51:20 AM6/3/08
to wpf-di...@googlegroups.com
That is pretty rad!  I'm really diggin' all this new "rich" client, RIA (aka whatever) coming out.  It's about time things start looking like its 2008.  Still waiting on flying cars...
 
If you are talking about the application in general (not the 3D), I think a lot of it can be done in Blend and with very keen designer skills.  There are some really good 3rd party 3D carousel controls out there.  But if you are aiming to DIY, there is an old WPF sample project that had one.  It's a bit dated as it was written pre RTM of WPF and therefore has a lot of pre RTM work arounds.  Maybe that will be a good jumping off point?
 
 
-Jer

Brennon Williams

unread,
Jun 3, 2008, 6:05:12 AM6/3/08
to wpf-di...@googlegroups.com

Flying cars…

 

http://www.moller.com/

 

 

I am slowly but surely getting my video tutorial collection together in which one of the series projects shows how to write a 3D carousel using a canvas (so really fake 3D)… It should work in Silverlight as well though..

 

That particular carousel has such a wonderful transition scenario and I agree.. its great to finally start seeing things look “rich”.. Some late nights for Pavan ahead ;-)

 

Cool stuff!

<br

Sacha Barber

unread,
Jun 3, 2008, 6:44:42 AM6/3/08
to wpf-di...@googlegroups.com
cool

Where is your link to the
write a 3D carousel using a canvas (so really fake 3D)…

Id like to see that




From: brennon...@x-coders.com
To: wpf-di...@googlegroups.com
Subject: RE: Check this out: 3D news reader
Date: Tue, 3 Jun 2008 11:05:12 +0100

Pavan Podila

unread,
Jun 3, 2008, 8:51:35 AM6/3/08
to wpf-di...@googlegroups.com
I really liked the link that Jeremy sent about the news reader. Actually after playing it for a while I realized that I can make that into a simple ViewState for ElementFlow. I already have a Carousel view for ElementFlow internally for my company (the real 3D one ;)). I will release that in the next update (hopefully).

So Jeremy if you plan to use ElementFlow...you may have a good time ;-).


Brennon: I had a quick question for you. Are you a designer or developer or both ?!
--
the approach, rather than the solution
...o0O0o...
http://blog.pixelingene.com

Josh Smith

unread,
Jun 3, 2008, 9:05:58 AM6/3/08
to wpf-di...@googlegroups.com
Rock on, Pavan!  I can't wait to see it...

Brennon Williams

unread,
Jun 3, 2008, 9:10:40 AM6/3/08
to wpf-di...@googlegroups.com

“Are you a designer or developer or both ?!”

Both to a large degree.. interaction, functional and flow design, (occasionally graphical design), up until a few years ago was into enterprise development but mainly it has always been about the UI layer…

Brennon Williams

unread,
Jun 3, 2008, 9:11:47 AM6/3/08
to wpf-di...@googlegroups.com

I don’t have the video made yet, but I could make a sample app for you if you need it?

 

Just let me know

 

Cheers

Sacha Barber

unread,
Jun 3, 2008, 9:12:34 AM6/3/08
to wpf-di...@googlegroups.com
hell yeah, we'd all like to see it




From: brennon...@x-coders.com
To: wpf-di...@googlegroups.com
Subject: RE: Check this out: 3D news reader
Date: Tue, 3 Jun 2008 14:11:47 +0100


Get fish-slapping on Messenger! Play Now

Jeremy ALLES

unread,
Jun 3, 2008, 9:17:41 AM6/3/08
to wpf-di...@googlegroups.com
Hmm, that definitively sounds good !

Actually, right now I'm just playing with WPF on my personal time. By designing and building a music player, I'm trying to leverage the power of WPF to provide new ways to browse a music collection. ElementFlow will be one of them, but I'm also thinking about other views such as a chronology (I started to work on a custom panel to do that a couple of days ago...).

In the meantime, I'm going to accept a new position in order to start a new work involving .net 3.x developmen, so I'll have more time to understand how everything fits together :-)

Pavan Podila

unread,
Jun 3, 2008, 9:42:25 AM6/3/08
to wpf-di...@googlegroups.com
Sounds interesting ... I'll see how I can piece together a news-reader-like view in ElementFlow. I think it should be a mod of the Carousel view that I have at work. Next task is to get hold of some free time!


Brennon: thats what I thought about you. You sure sound like one (Devigner ... is that the term for it ;)) !

Brennon Williams

unread,
Jun 3, 2008, 10:17:21 AM6/3/08
to wpf-di...@googlegroups.com

I will try to get that sorted out over the next few days… bump me if I forget!

Brennon Williams

unread,
Jun 3, 2008, 10:20:52 AM6/3/08
to wpf-di...@googlegroups.com

I would really like to see your results with that Pavan… ElementFlow rocks!

 

I will have some nice 3D questions for you shortly as well…. In the meantime.. one to get you thinking…

 

I have been making a primitives library with a few other cool bits.. but one thing that is proving to be a nice little challenge in WPF is to be able to create a Ribbon like mesh… that is sort of in the shape of a spring?

 

Any thoughts?

 

Cheers

 

 

From: wpf-di...@googlegroups.com [mailto:wpf-di...@googlegroups.com] On Behalf Of Pavan Podila
Sent: 03 June 2008 14:42
To: wpf-di...@googlegroups.com
Subject: Re: Check this out: 3D news reader

 

Sounds interesting ... I'll see how I can piece together a news-reader-like view in ElementFlow. I think it should be a mod of the Carousel view that I have at work. Next task is to get hold of some free time!

Pavan Podila

unread,
Jun 3, 2008, 10:26:19 AM6/3/08
to wpf-di...@googlegroups.com
Cool... I look forward to your questions :)

When you say spring-like is it like concentric circled-spiral (eg: http://img.tfd.com/wn/C3/63730-spiral-spring.gif) ? If that is the case it should not be too hard. Let me know.

Brennon Williams

unread,
Jun 3, 2008, 10:41:20 AM6/3/08
to wpf-di...@googlegroups.com

Yes that image is correct…

 

I think the way I was trying to do it is the problem.. I was using two offset concentric circles (so one above the other), to figure out the height points of the polygons and trying to basically build a triangle list first.. then blast it into the scene.

 

I think you will probably have a far more elegant and performant way of achieving this?

Sacha Barber

unread,
Jun 3, 2008, 10:41:35 AM6/3/08
to wpf-di...@googlegroups.com
Sounds like Orc Mischief to me




From: brennon...@x-coders.com
To: wpf-di...@googlegroups.com
Subject: RE: Check this out: 3D news reader
Date: Tue, 3 Jun 2008 15:41:20 +0100

Pavan Podila

unread,
Jun 3, 2008, 6:17:03 PM6/3/08
to wpf-di...@googlegroups.com
Hmm... Here is one way to think about it:

A spiral actually starts out as concentric circles which are connected such that the end of a previous circle becomes the start of the next circle. Then these circles are pulled apart creating some distance between them.


So first lets start with a circle in the XZ plane. The points can be plotted as:

Point3D point = new Point3D();
point.X = radius * Math.Cos(2*Math,PI * index);   
p.Z = radius * Math.sin(2*Math.PI * index);   

Now you also want to keep moving up, so:
p.Y += prevPoint.Y + heightBetweenCircles;

Note that you could also change the radius to get the circles to grow larger or smaller as you move up.


[Disclaimer]: I haven't tested this code but wrote it down based on whatever understanding I had. Hopefully it is useful ;-)



- Pavan

Brennon Williams

unread,
Jun 3, 2008, 6:53:46 PM6/3/08
to wpf-di...@googlegroups.com

Thanks for going to this effort Pavan, I really appreciate it.

 

I was trying to find the original code I wrote for this as it is very similar to what you created, per circle.

 

The thing is, that it is simple with one circle.. but when you have two circles or realistically 2 arc segments, constructing a triangle list becomes slightly different because as you know, the points need to be offset into triangles..

 

so.. ( I hope this art works )

 

Line Callout 2: BOTTOM CIRCLE POINTS
 

 

 

 

 

 

 

 

 

 


I guess I am constructing it the slow way and I just hoped there would be a better way to achieve the same thing. Using the above method, I used the principle that I had a rule for each time a point was plotted, to retrieve 2 other points to get back the triangle.. and usually the triangle must be behind the plotted point.

 

I will get back to this soon enough at which point I will be knocking on your door if I may ;-) I really enjoy working on things like this so hopefully I can put some nice stuff together soon enough.

 

Cheers again, don’t lose any sleep over it!

Pavan Podila

unread,
Jun 3, 2008, 6:57:39 PM6/3/08
to wpf-di...@googlegroups.com
How about thinking as 2 circles just offset by some Y distance. If you can get the points for one circle, the other should be just +Y from it ??

Brennon Williams

unread,
Jun 4, 2008, 4:54:13 PM6/4/08
to wpf-di...@googlegroups.com

Thanks Pavan.. I will give it all a crack later on

Reply all
Reply to author
Forward
0 new messages