LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Real-Time updating 2D Polar Intensity Plot

Hello,

 

I am trying to construct a polar intensity plot.  There are a lot of different solutions on the board but 3D graph and pixel by pixel plotting won't cut it for the update time I am looking for.

 

Think 'weather radar'

 

My current solution is to use replacePixelLine.vi.  I place one end of this line in the center of my picture, and sweep the other end around in a circle.  My pixel color data is my intensity levels, I switch data sets everytime I move into another angular bin.  Its quick enough to update every ~25ms, which is good for me.

 

However there is a bad side effect in replacePixelLine.vi that makes all of this pretty much useless.  When the line must step diagonally, it moves 1 pixel in both x and y directions, instead of making an L by moving in x, then y.  This means that at 45 degrees, this vi draws only 71% of the pixels as 0 degrees.  On top of this, instead of scaling the pixel color data, it just lops off what it cannot plot.

 

Therefore I have a strange situation where my data is plotted in a squarish shape and the angular bins don't 'arc' correctly.  The bins are just drawn as straight lines, either horizontally or vertically depending which side of the n*45deg lines you are on.

 

Is it possible to change internal workings of replacePixelLine?

0 Kudos
Message 1 of 3
(2,954 Views)
Nothing here?
0 Kudos
Message 2 of 3
(2,933 Views)

Hi pschmal,

 

replacePixelLine.vi is not a VI that is shipped with the Vision Development Module.  I assume you are using the IMAQ Get Pixel Line and IMAQ Set Pixel Line within a subVI that is named replacePixelLine.vi.  Is this true?

 

Is it possible for you to post a bit of sample code that demonstrates what you are having problems with.  It is easier to diagnose and come up with possible workarounds that way.  Thanks!

 

Kristen H.

0 Kudos
Message 3 of 3
(2,918 Views)