Solved

Clipper attribute merge confusion

  • 10 February 2019
  • 5 replies
  • 5 views

Badge

Hello,

I am stuck on a problem that is probably very simple, I just don't get it...

  • I have a simple test IFC file with two rooms and some random furniture:

  • I would like to use FME to run an inclusion test, which furniture is in which room.

My thinking is to extract a center point of every furniture instance and run a spatial join using the Clipper tool. Something like this:

Now, the confusing part.

  • The clipper attribute merge is telling me all the furniture are in just one room:

Why is that?

It works fine using an AreaOverlay, but I really need a 3D inclusion test...

Test IFC and my workspace:

Thanks.

icon

Best answer by markatsafe 11 February 2019, 19:02

View original

5 replies

Userlevel 2
Badge +17

It seems to be a defect in the Clipper. I would recommend you to contact Safe support to clarify the issue.

Report a Problem

Userlevel 1
Badge +21

It looks like the clipper geometries are actually getting rejected. I think you can only clip solids with solids. Still, it shouldn't give the appearance of having worked and features still exit via the inside port.

 

Badge

@egomm Hi and thanks for the reply, I can replace the chair instances with a BoundingBox (solid), result stays the same.

I guess it's a bug, or the Clipper was never intended to be used this way?

Which is a reall bummer...

Now I wonder, if there is a way how run an inclusion test using Python. I think Scipy has a convex hull function.

But it's kind of crazy that I have to DIY. :(

 

Badge +2

@ras this is an issue with FME and we'll try and fix it. In the meantime, if you connect the output of your SurfaceFootprintReplacer to the Clipper input port then I think it will give you a workaround

Badge

@ras this is an issue with FME and we'll try and fix it. In the meantime, if you connect the output of your SurfaceFootprintReplacer to the Clipper input port then I think it will give you a workaround

Thanks for letting me know.

Reply