Using TinyCAD XALL feature while keeping faces and their assigned materials Imgur album with the pictures I will use to show you the problem: https://imgur.com/a/DBI6A

So, I have many cases like this:



Here I moved the left vertex to show you that the "green" upper edge is not the same of the "red" edge:



When I use TinyCAD add-on XALL feature to add vertices to all the edges which intersect with other edges, the faces which were supported by those edges get deleted:



Then I use Remove Doubles and press F to remake the deleted faces:



But, as you can see, the materials applied to those faces are of course different from the original ones. I could re-assign all the materials but that would require a lot of work since I have many of these cases.

Is there a way to use TinyCAD XALL feature while keeping faces and their assigned materials?
Materials are specifically assigned to faces and faces only, edges can't hold any information about material slots.

If all faces are removed and no renderable geometry is left behind then all material slot assignments will invariably be lost, there is no way to recover material information from edges alone.

This is not a problem specific of TinyCAD or any other addon for that mater, it is just intrinsic to how the data structures work in Blender.

As far as I know there is really no way around this.

You may alternatively try with varying degrees of success using Edit Mode Boolean operations to try and find intersections without loosing the faces; or use tiny cad on a duplicated copy of those edges instead of the original ones attached to faces.