You need to interrogate the actual geometry the location line will be unaffected.
Element.Geometry
If you look at the instance transform you can translate the cut geometry to the symbol location and then find the end faces by normal and see where they sit along the X-Axis. One end face normal will be aligned with -ve XYZ.basisX and the other XYZ.BasisX. If however the end faces have been cut non-square then this will not be the case. For that case you can do a dot product comparison to identify the faces with normals that are mostly pointing east and west or look at other aspects such as faces pointing to the contrary along with areas etc. If the face is cut at 45 degrees then dot product will not be of much use but you know there are uncut faces (beam side faces) that are pointing normal to the east and west directions. So you find the end faces be elimination of side faces perhaps. Then you have beam end notching which creates perhaps many faces pointing east and west, so you have to then start considering areas or faces most remote from transform origin in east/west direction.
For a cut FamilyInstance the GeometryInstance inside the GeometryElement will be empty of solids but the method GeometryInstance.Transform will still be available so you use the inverse of that transform to transform the top level solids (aligning them longitudinally with XYZ.BasisX).
You should find that the transform origin is located at the mid point of the location line. So you can equate the local offsets for end faces (along symbol space basis x) with offsets from the centre of the actual location line in instance coordinates (along the vector direction of the location line in instance space).
All of this assumes that the family was based upon a standard template which has certain established conventions.