Jump to content
zixuan203344

How to draw the boundary(or maximum outline) of a point set?

Recommended Posts

zixuan203344

How to draw the boundary(or maximum outline) of a point set? Require all points to be on the outline or inside the outline

 

By looking up academic materials, it seems to be a concave hull algorithm。

 

concave hull

01.jpg

Share this post


Link to post
Share on other sites
marko_ribar

Are your points like in the picture - spaced like grid and should boundary always be orthogonal like in your picture?

Share this post


Link to post
Share on other sites
BIGAL

Architecture has a command called "shrinkwrap" may not be in 2014 try it. I have used in CIV3d but for 3dfaces and works great. Will test points.

 

Ok did not work as its points and uses lines.

 

Take every point and draw a line to every other point, erase any line over root 2 1.1414 times the grid spacing, use lineworksshrinwrap, this will make a outer boundary pline put on another layer delete all the point joins lines. Note will only work with a grid.

Share this post


Link to post
Share on other sites
Tharwat

Hi,

 

If these points are a hatch pattern then hatchedit should get the job done with the option recreate boundary.

Share this post


Link to post
Share on other sites
zixuan203344

Thank you for your reply.

This is just a special case. Not all point spacing is equal. I want to find a general method.

Share this post


Link to post
Share on other sites
zixuan203344
Architecture has a command called "shrinkwrap" may not be in 2014 try it. I have used in CIV3d but for 3dfaces and works great. Will test points.

 

Ok did not work as its points and uses lines.

 

Take every point and draw a line to every other point, erase any line over root 2 1.1414 times the grid spacing, use lineworksshrinwrap, this will make a outer boundary pline put on another layer delete all the point joins lines. Note will only work with a grid.

 

Thank you for your reply.Not all point spacing is equal.This is just a special case

Share this post


Link to post
Share on other sites
BIGAL

If you search here there is some Triangulation software it will make a mesh of random points, then you can use shrinkwrap,, problem is the mesh has to be edited removing non essential 3dfaces, this is something done in the civil surface world all the time.

 

 

You could still take the approach I suggested to make some form of shape removing lines, the obvious is the remove long lines 1st for us this = about 90% done, then erase the lines in the corners.

 

 

lee's Convex hull may be a starting point, but even looking now misses some edges compared to what I wanted as a final product. Random points is a real problem.

Share this post


Link to post
Share on other sites
marko_ribar

As far as I can tell, correctly implemented triangulation to random set of points should return convex hull boundary - not concave...

Share this post


Link to post
Share on other sites
BIGAL
Posted (edited)

You are correct Marko the issue is to do with what we call long triangles have a look at this image, left is as built right is after edits and has the correct boundary.

 

Looking now 3 mistakes ? Need to fix and redo, these were little tiny slivers so the correct answer is both concave and convex, then LINEWORKSHRINKWRAP. We use delete long triangles via a length factor reducing till we start erasing ones we need then it becomes maual edits. I have been told we may have a 3rd party solution from our surveyors.

 

left after create triangles, middle is correct answer, right is convexhull.lsp

ScreenShot131.jpg

Edited by BIGAL

Share this post


Link to post
Share on other sites
Roy_043

I can 'connect the dots' in the 2nd picture of the OP with several more complex concave hulls...

Share this post


Link to post
Share on other sites
marko_ribar

Yes BIGAL, but you must remove additional triangles and then recreate boundary and that's all fine if points are random... Triangulation works well only if TIN (Triangular Irregular Network), and OP's picture is grid like... For that I suppose he/she could use routine for orthogonal connections... I remember I did exactly that here on cadtutor, only difference was that instead of points there were circles... And for boundary creation from 3dFACES I also did routine (not shrinkwrap from Civil) on autodesk/customization forum for OP Carlos Gil from Venezuela - only thing was the output was 3dpolyline...

Share this post


Link to post
Share on other sites
marko_ribar

That with circles was actually dimensioning - not boundary, but you can use my code with some mods. for boundary creation...

http://www.cadtutor.net/forum/showthread.php?100330-Quote-external-circles

 

 

For 3dpoly around 3dfaces (after modified triangulation), try something like this... (not shrinkwrap from Civil)

https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/draw-3dpoly-in-3dfaces/m-p/7790036/highlight/true#M365245

 

 

HTH., M.R.

Share this post


Link to post
Share on other sites
zixuan203344
As far as I can tell, correctly implemented triangulation to random set of points should return convex hull boundary - not concave...

 

I think you are right,If these points are equidistant,The problem is easy to solve,And the random point sets seem to have many situations

Share this post


Link to post
Share on other sites
zixuan203344
You are correct Marko the issue is to do with what we call long triangles have a look at this image, left is as built right is after edits and has the correct boundary.

 

Looking now 3 mistakes ? Need to fix and redo, these were little tiny slivers so the correct answer is both concave and convex, then LINEWORKSHRINKWRAP. We use delete long triangles via a length factor reducing till we start erasing ones we need then it becomes maual edits. I have been told we may have a 3rd party solution from our surveyors.

 

left after create triangles, middle is correct answer, right is convexhull.lsp

 

it is a good solution For equidistant point sets or approximate equidistant point set

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×