LabVIEW Idea Exchange

cancel
Showing results for 
Search instead for 
Did you mean: 
ToeCutter

Leverage the power of the 3D picture control. (For more than just 3D!!!)

Status: New

3D!!!!!!!

 

LabVIEW's 2D picture plot is very versatile, but also very '90's', conversely the 3D picture control whilst good for drawing teapots is lacking a lot of the power in terms of helper functions that the 2D plot has.

 

Let's see NI add some out-of-the-box functionality to give us more from the 3D plot.

 

-A good '2D in 3D' library to allow us to use the 3D control just like a 2D one with pixel perfect bitmaps. This is how modern 2D
 games generally do it and it brings many advantages. Scaling, rotation, tinting, and alpha mapping will all come more or less for
 free from a CPU perspective (with minimal effort for the gfx card) and will enable all this goodness in 'real time'.

 

-Plot helpers compatible with the 3D display. LabVIEW has some great 3D plots built in, but wouldn't it be nice if these would spit
 out a scene compatible with the 3D picture control? Then if I want to add extra custom bits to the plot or have my flying teapot in
 front of it, I have that option. The 2D picture plot already has the ability to do this stuff in 'old-skool' 2D, so the 3D picture
 plot currently feels like a poor cousin. If we can drill down into the plot helpers in LabVIEW, all the better... you'll see an explosion

 of community enhancements and new plot types.

5 Comments
Intaris
Proven Zealot

You can do this today, you just need to know a bit about how to actually program the functions for the 3D picture.  I've misused the 3D picture as a "D display for a few applications and it works really nicely.

 

But I do have to agree that we could have more helper functions.  This has the disadvantage, however, that we start more and more standardising HOW the 3D picture is used (thus negating certain corner cases), something which I'm not quite sure is good.  Plus the learning curve for 3D is significantly higher than for 2D.

ToeCutter
Active Participant

"But I do have to agree that we could have more helper functions."- good! Any chance of a Kudos to get the idea started? 😄

 

"This has the disadvantage, however, that we start more and more standardising HOW the 3D picture is used (thus negating certain corner cases), something which I'm not quite sure is good."- I'm not sure how what I'm envisioning takes away any of the versatility of the 3D picture control. It just makes it more accessible for those unlike yourself who do not have the time, ability or motivation to delve into the nuances of the 3D control. You will still be able to do anything you can do today unless the improvements are very poorly implemented, which is unlikely from my perspective of NI's track record.

 

"Plus the learning curve for 3D is significantly higher than for 2D."- agreed, but I almost see that as a justification for my idea rather than a point against it. The helpers would hide this complexity for a useful range of use cases for many users, whilst still allowing lattitude for more advanced users. Isn't that really the appeal of LabVIEW as a whole?

Intaris
Proven Zealot

Well you'll typically find that all of the 3D "extras" NI have done, they've encapsulated in LVOOP.  Thus, no tinkering....

 

Regarding the learning curve.  Even with numerous helpers, you're going to have a much harder time doing something in 3D than in 2D, it's just the nature of the beast.  As such less people will be using it.  Just a numbers game.  And I'm differentiating between "Doing something" with 3D and "using something" with 3D.  The first expands on existing stuff, the latter only uses pre-provided VIs.

X.
Trusted Enthusiast
Trusted Enthusiast

I must have missed the "great 3D plots built-in"... Last time I checked they were buggy as hell. Not blaming, just saying that indeed it is tough to get it right and I would concur with Intaris that the dream of making 2D plots from a 3D template will present a steep learning curve. Why don't we fix the 2D Graph controls first, as suggested by Mads here?

ToeCutter
Active Participant

"the dream of making 2D plots from a 3D template will present a steep learning curve"- not sure where you're getting this idea of complexity from, the complexity is only there if you write it all yourself. Maybe I didn't explain it well. To go back to my 2 suggestions-

 

-2D in 3D- it presents itself as a 2D interface, for example, functions might be

     -DrawImage(image handle,x,y)

     -SetRotation(angle)

     -SetAlpha(alpha)

     The output is a scene object you wire straight to a 3D control. What's complex? A child could use these functions.

 

-Plot helpers- to all intents and purposes it is identical to the existing 3D plot functions, but the output is a sceneobject which wires directly to a 3D picture control. I don't see how this is any more complicated than the existing 3D plot function which people seem perfectly capable of utilising. To add a teapot- just add an extra object to the scene using existing 3D functions.

 

I'm open to criticism, but I don't see the problem with the complexity? If there was any option to delve into the complexity, it would be purely optional.