• Advertisement
Sign in to follow this  

opengl 3d point cloud render from x,y,z 2d array with texture

This topic is 1929 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hello everyone. Need some direction on 3d point cloud display using openGl in c++ (vs2008). I am brand new to openGl and trying to do a 3d point cloud display with a texture. I have 3 2D arrays (each same size 1024x512) representing x,y,z of each point. I think I am on the right track with


> glBegin(GL_POLYGON);
> for(int i=0; i<1024; i++)
> {
> for(int j=0; j<512; j++)
> {
> glVertex3f(x[j], y[j], z[j]);
> }
> }
> glEnd();

EDIT: SORRY for putting in code in the text like this. for some reason only first two line of my code were showing using the code tags.

Now this loads all the vertices in the buffer (i think) but from here I am not sure how to proceed. Or I am completely wrong here.
Then I have another 2D array (same size) that contains color data (values from 0-255) that I want to use as texture on the 3D point cloud and display.

I understand that this maybe a very basic opengl implementation for some but for me this is a huge learning curve. So any pointers, nudge or kick in the right direction will be appreciated. Edited by headbanger

Share this post


Link to post
Share on other sites
Advertisement
When you say that the color data consists of values from 0 to 255, do you mean that you have red, green and blue values for each point? In that case you can use glColor3b(red[j],green[j],blue[j]); (if your color arrays are called red,green and blue). I'm actually not sure how to do non-RGB colours in OpenGL so I don't think I can help you if my assumption is incorrect.

Share this post


Link to post
Share on other sites

When you say that the color data consists of values from 0 to 255, do you mean that you have red, green and blue values for each point? In that case you can use glColor3b(red[j],green[j],blue[j]); (if your color arrays are called red,green and blue). I'm actually not sure how to do non-RGB colours in OpenGL so I don't think I can help you if my assumption is incorrect.


No I don't have RGB for each point. I am tring to use the last array as my texture for the 3D point cloud. But first I need to generate the point cloud. That' where I am stuck at. How would I go about generating the point cloud (creat a mesh or a surface????) using the 3 array I have. That's the main question.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement