Question

How to intersect Faces?


Hello.

I have face type geometry planes in 3D space. I would like to split them at intersections. It's trivial task in 3D modeling software like SketchUp, but I'm not able to do this in FME. I can't find solution in existing forum posts or other online resources.

Any help would be appreciated :)


5 replies

Userlevel 1
Badge +11

Hi @vejaspink,

Have you tried using the Deaggregator? This will break up the faces into it's aggregate parts. Another transformer that I would try is the SurfaceOnSurfaceOverlayer. I haven't tested it myself, but the documentation looks promising. I Hope this gives you a place to start!

Hi @vejaspink,

Have you tried using the Deaggregator? This will break up the faces into it's aggregate parts. Another transformer that I would try is the SurfaceOnSurfaceOverlayer. I haven't tested it myself, but the documentation looks promising. I Hope this gives you a place to start!
Hi @JovitaAtSafe, thanks for quick response. I can't see how Deagregator can help with this situation. Faces were never split at desired locations so Deagregator can't help. I have tried SurfaceOnSurfaceOverlayer with faces agregated to MultiSurfaces but also no luck. I also have tried converting faces to polygons and using AreaOnAreOverlayer with variuos Z parameters, but result is a mess of triangles.

 

 

Userlevel 1
Badge +11
Hi @JovitaAtSafe, thanks for quick response. I can't see how Deagregator can help with this situation. Faces were never split at desired locations so Deagregator can't help. I have tried SurfaceOnSurfaceOverlayer with faces agregated to MultiSurfaces but also no luck. I also have tried converting faces to polygons and using AreaOnAreOverlayer with variuos Z parameters, but result is a mess of triangles.

 

 

Sorry that that didn't work out. I am unable to say for certain without knowing how your data looks. Would it be possible to share a simplified sample of your data?

 

I was initially thinking that, (while inelegant), perhaps you would be able to Deaggregate to smaller faces, and then use a Counter to assign faces IDs, to which you would regroup together by individual 'split' object. But I'm sure we can find a better solution with some testing.
Sorry that that didn't work out. I am unable to say for certain without knowing how your data looks. Would it be possible to share a simplified sample of your data?

 

I was initially thinking that, (while inelegant), perhaps you would be able to Deaggregate to smaller faces, and then use a Counter to assign faces IDs, to which you would regroup together by individual 'split' object. But I'm sure we can find a better solution with some testing.

 

Hi @JovitaAtSafe, here is sample of data in OBJ format: planes-sample.zip . There are two files, one with real data and the other with oversimplified case with 3 ideal intersecting planes. Hope this will help to fin a solution.
Userlevel 1
Badge +11

Hi @vehaspink,

Thank you for sharing your data. I looked into trying to clip 3D surfaces and also spoke with one of our developers. Unfortunately at this time, we're not yet able to perform this function. There is a PR in our system for the enhancement, and you can upvote enhancement ideas like the 3D Clipper or the Clipping Operation for Surface to raise their importance, or submit your own idea. Our developers do check the number of votes and comments as a part of their considerations on what to prioritize. It would also help to share your desired use of clipping 3D intersections as a comment on the ideas. If you wish to keep informed, follow the idea and you will be notified when the status of the idea changes. Sorry for the inconvenience and if I might have mislead you with my first suggestion.

Reply