I am trying to generate a point coordinate at the midpoint of Arcs. These Arcs have a very large radius and a tiny sweep, so they look like lines, but they are parts of a larger Arc. Whether I try the arc.GetMidPoint() method, or use Intersector with a crossing line, the point is always off. When I run the features through the SpatialRelator, it returns 0 _related_suppliers.
It looks fine at first glance, but zooming in reveals that the intersection point really is NOT intersecting. My hunch is that this is due to the Point being calculated as a float. When using the Intersector or PointOnLineOverlayer, it actually changes the shape of the Arc!
Here are some pics to illustrate:
Midpoint of Arc at a distance
Intersection point at a distance."Intersected" Point from Intersector lines (purple), with actual Arc (grey) close up. It intersects with the Intersector-created Arc, but not with the input Arc:Here is what I am running the features through to verify. Note: If I input both Intersector outputs into the SpatialRelator, it returns _related_suppliers as 'INTERSECTS' fine. But, the Arc coming out of the Intersector is not the same as what was input.
Just the Arc and 'Intersection' Point:
Why do I need this precision? The intersecting points are where a Revit Mullion/Gridline element should be placed on a Curtain Wall location line. My script works fine when it is just regular lines, but always errors on the points intersecting with Arcs...because they don't actually intersect. You would think that an FME transformer or Geometry method, generating an intersecting node, would show up correctly in the SpatialRelator, but it does not.
Is there a workaround or better way to do this in FME?
Any insight is appreciated.
Thanks,
-L