How can I recognize a mesh of points on the same plane?

6 views (last 30 days)
Good day. This is perhaps the greatest contribution that I will ask the community due to the great difficulty that it brings. I have been trying for days to do the following without success, but with some progress:
I have a point cloud that forms a 3D structure (the point cloud can be modified at any time, so the structure will not always be the same). The structure is made up of "frames", which are points that form a 2D structure with nodes linked by "beams" and "columns".
I want to make a program that manages to recognize the "frames" of a structure in 3D, whatever the shape of the point cloud of said structure.
I leave this example to better illustrate the situation:
I have this structure in 3D, which has this point cloud, and that these in turn are related by the "beams" and "columns" shown. The .mat files contain the point cloud and how it is "linked" to each other by the "beams" and "columns".
In this example there are 12 frames, which are 2D structures made up of points located on the same plane and that said plane is perpendicular to the XY plane. Some of these frames are:
Frame 1: 1-2-3-5-7-28-27-22
Frame 2: 28-27-23-24
Frame 3: 16-18-8-11
If required I can leave the .m and .fig files that I am using to execute what I have done from my program, although they can throw errors because I have not corrected certain errors yet.
Any contribution will be greatly appreciated. Thanks a lot.

Answers (1)

Matt J
Matt J on 15 Jan 2021
In this example there are 11 frames, which are 2D structures made up of points located on the same plane and that said plane is perpendicular to the XY plane.
Are frames always perpendicular to the X,Y plane? If so, you can just project all the points into the XY plane and reduce the problem to one of finding colinear points. An image-based solution to the latter would be to use houghlines().
  1 Comment
Pedro Guevara
Pedro Guevara on 15 Jan 2021
267 / 5000
the frames are always perpendicular to the XY plane. Also the columns (as for example element 5-3) is always a vertical element (one with an angle of 90º with respect to the XY plane.Thanks, look at the "houghlines" function to try to solve my problem.

Sign in to comment.

Products


Release

R2017b

Community Treasure Hunt

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

Start Hunting!