LabVIEW

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

3d control sample for LabVIEW Linux

Hello,
is there any easy way to exchange the 3D Graph Active X Container from a LabVIEW for Windows VI into a non-Active-X control for Linux?
I have a VI that displays a simple 3D intensity graph (intensity plotted over x-y field, imagine for instance a typical gaussian intensity distribution in 3D created by measuring 2D-intensity data) using "3D Surface.vi". The Active-X control for the 3D display allows to change the projection properties and the viewing angle. This VI is not executable in LabVIEW for Linux, as there is no Active-X in Linux. I had a look at the 3D Picture Toolkit which is available for free, but I have no idea how to display a point array in 3D easily - all examples that I have found are just geometrical bodies which are created and displayed. I also have read that LabVIEW 8.2 offers a new 3D Graph Modul based on OpenGL (my VI is LabVIEW 7.1 right now) - but my feeling is that this is also rather complicated to use and more suitable for 3D rendering of picture scenes like robotic arms or geometric bodies.
Does somebody have a simple VI showing how to plot an intensity field over x-y, allowing to change the viewing angle (similiar to what 3D Surface.vi in Windows is capable to do)?
Best regards,
Gabs


0 Kudos
Message 1 of 7
(3,865 Views)
You can display a point array by drawing a mesh, and setting the style to Points. Check out the Mesh example in the example finder (3D as search term).

Regards,

Wiebe.
0 Kudos
Message 2 of 7
(3,858 Views)
Hi Wiebe,
the functionality my Windows VI has looks more similiar to the "3D Surface Example - Fluctuating Sine Wave.vi". I was hoping to find a simple solution to change this VI in a way that Linux can handle...
Regards,
Gabs
0 Kudos
Message 3 of 7
(3,849 Views)
You'll have to make this yourself with the 3d picture control. It will be some work. Some parts can't be created, like the ramp values (text is not supported, unless you use textures with bitmap fonts). The wave itself is not to difficult. The for loop that creates the data has to be modified to generate an X, Y and Z value, instead of just a height... Then it would fit the SceneMesh method. With correct properties for lightning, it will look exactly the same as the AcitveX surface.


Regards,


Wiebe.
Message 4 of 7
(3,842 Views)

Hello Wiebe,

thanks a lot! This is really helpful (even if I was hoping that someone has a sample VI doing exactly this as I could not imagine that I am the only one who tries to port an intensity measurement VI with 3D display to Linux). What an effort to do what under Windows is just a few mouse clicks. Why can't NI simply provide a LabVIEW-native 3D control for such tasks if they always say that their software is best for data collection, management and visualisation?....Smiley Mad Maybe Linux is still not so common that this was a request from many customers before.

Anyway, again, thanks a lot for your answers and help. Best regards,

Gabs

0 Kudos
Message 5 of 7
(3,830 Views)
Gabs,

I it is not just Linux users. We have the same issues on the Macintosh, so a pure G solution would be highly desirable.

Lynn
0 Kudos
Message 6 of 7
(3,821 Views)
I think this will be a matter of time. For now, the 3D picture control development is still changing. My guess is they will add to the 8.2 implementation (e.g. add a text function). After a while they will probably add standard 3D charting VI's, much like they did for the normal picture control.


LabVIEW isn't the only platform from NI. The 3D charts are ActiveX components, and they are probably also used for LabWindows/CVI. So keeping this in ActiveX has benefits for NI.


Regards,


Wiebe.
0 Kudos
Message 7 of 7
(3,807 Views)