How to use Z-buffer in Matlab

19 次查看(过去 30 天)
Now I have a 3D point cloud. And I want to convert it to 2D image that viewed from different directions. I think it may works following: (1) rotate the 3D model, (2) use Z-buffer to determine which points are visible, (2) project 3D model to 2D image. I have some problem with the second step, which is Z-buffer. Could someone give me some advice about how to do it?
  9 个评论
Walter Roberson
Walter Roberson 2020-2-10
Given a viewpoint and a viewing angle, you do a translation of the point coordinates to be relative to the viewpoint, and then you do a rotation of the points to align viewpoint. Then any point that has a negative (local) Z coordinate is "behind your head" and cannot be seen, and every other point can be seen provided that it is not co-linear along that axes (if it is, then it projects to exactly the same local x and local y).
It is, however, not common to bother to compute these things yourself, as MATLAB does the computation automatically when you plot.
There is a closely related question having to do with how far an object is away from the viewpoint, in order to know how much detail to render the object at. However when doing that kind of calculation, you always have perspective, which the original question does not deal with. The computations to determine how much "Level of Detail" (LOD) for 3D scenes in virtual reality are typically handled by functions provided by the VR environment.
yang zhang
yang zhang 2020-2-11
Can it be obtained automatically?

请先登录,再进行评论。

采纳的回答

Walter Roberson
Walter Roberson 2018-10-9
  4 个评论
yang zhang
yang zhang 2020-2-10
How should this code be used, can you give an example?
yang zhang
yang zhang 2020-2-11
Your answer is important to me

请先登录,再进行评论。

更多回答(1 个)

yang zhang
yang zhang 2020-2-10
Have you achieved all the above three steps? Can we talk? My email is 1198692934@qq.com

类别

Help CenterFile Exchange 中查找有关 Point Cloud Processing 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by