Take four points at any point. I want to judge whether it is on a plane.My MicroStation version is v8i ss3, Visual Studio version is vs2015 Pro.If there is any way to provide it to me, I am very grateful.
Hi Alisa,
Alisa LI said:If there is any way
I recommend to search existing discussions, this issue has been discussed many times already.
There are many ways how to implement such test, I recall e.g.
What solution is the best for you and how it should be implemented depends solely on your own conditions and requirements: How far the points are, required precision and what difference is still counted planar and what not.
With regards,
Jan
Bentley Accredited Developer: iTwin Platform - AssociateLabyrinth Technology | dev.notes() | cad.point
Thank you for your answer, I want to use the second method,
can you give me some help for this method? I didn't find a way to create a plane with three points in the VBA documentation. I would be grateful if you could provide it to me.
there are several examples how to work with plane in VBA documentation available, but to create a plane is not always straightforward (define base point and normal vector).
I remember (again, search this forum, all these topics were discussed in the past) this problem (plane + point distance) can be transformed to situation, when 3 points are used to define transformation, so they define custom coordinate system. The distance is Z coordinate in this system. I like this approach, because it's mostly based on transformations (rotation matrices), which is elegant solution.
Alisa LI said:I didn't find a way to create a plane with three points in the VBA documentation
Three points define a triangle, which is always planar...
ShapeElement
ShapeElement.Normal
Plane3d
Regards, Jon Summers LA Solutions
Thank you for your answer, it gave me a lot of help.
Alisa LI said:it gave me a lot of help
You might like to read this article: Determine Co-Planar Shapes .
Answer Verified By: Alisa LI