Skip to main content
Solved

2D-OGC Validation of 3D planar surfaces

  • November 27, 2014
  • 2 replies
  • 11 views

 

Hi all. I'm a bit stuck with this one. However I know it must be possible.

 

I would like to validate 3D planar surfaces of 3D Buildings. (So buildings with a ground surface, walls and roofs).

 

I can assume that all the surfaces are planar (That is something I could already check with the PlanarityFilter), but I also want to know if each individual planar surface is OGC valid.(self-intersecting,...)

 

 

My first idea was to use the GeometryValidator directly for that but it seems to work only for 2D surfaces.

 

(For instance a wall surface which is perfectly vertical (polygon) would become a selfintersecting polygon if seen from on top on a XY plane surface. So I get an error for that one while it is no error)

 

 

How can I check the 3D planar surfaces with 2D validation rules?

 

 

 

I had an idea of changing the XYZ coordinate axis: To turn around in 3D my XYZ-axis as such that my planar surface would have Z =0 for all vertices. I know it must be possible (http://www.geonovum.nl/sites/default/files/5LedouxStap3Valideren.pdf) somehow...

 

My first steps were to move (3D Affiner) my surface towards the origin of the XYZ-axis as such that 1 coordinate is exactly on (0,0,0) (and Z = 0, so that one is fine), but how to move the other vertices of the planar surface proportionally as such that everything is projected into 2D AND that the shape, area, lenghts of my surface is completely maintained...

 

Probably the good old goniometrical friends such as sinus, arcsinus, normal vectors and so on can help me out... but at the moment, I don't catch it yet.

 

 

Anyone a good suggestions?

 

(another source I found was doctor Jerry's answer: http://mathforum.org/library/drmath/view/51727.html)

 

 

Thanks

 

 

Bruno

Best answer by nilsur

Hi Bruno,

 

try the "CoordinateSwapper".

 

 

 CoordinateSwapper (Z->Y) => 2D Validate/test => CoordinateSwapper (Y->Z) 

 

 

I don't know what the CoordinateSwapper will do with the Z-Coordinate, but  it's worth a try.

 

 

Nils
View original
Did this help you find an answer to your question?
This post is closed to further activity.
It may be a question with a best answer, an implemented idea, or just a post needing no comment.
If you have a follow-up or related question, please post a new question or idea.
If there is a genuine update to be made, please contact us and request that the post is reopened.

2 replies

nilsur
Participant
  • Participant
  • Best Answer
  • November 28, 2014
Hi Bruno,

 

try the "CoordinateSwapper".

 

 

 CoordinateSwapper (Z->Y) => 2D Validate/test => CoordinateSwapper (Y->Z) 

 

 

I don't know what the CoordinateSwapper will do with the Z-Coordinate, but  it's worth a try.

 

 

Nils

Thanks Nils.

 

 

Good suggestion.

 

I tested the ground surfaces and roofs in the 2D XY-plane.

 

I tested the wall surfaces in the 2D - XZ-plane.

 

 

This works. (except for cases on which all the X-coordinates of all my wall vertices are exactly the same. I need to filter them out or test them into the YZ-plane)

 

 

Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings