I’ve been testing Spring Node’s FamilyInstance.ByGeometry and been running into a couple of issues.
Firstly I imported some materials to a family template (using transfer project standards) then saved the file as RFA then renamed it to RFT and gave the path to the family template input. When a family instance is created, none of those imported materials exist in it and the geometry has got the “By Category” material. So I have to import the material again inside family environment and apply it manually. That’s the first problem.
Secondly the geometry that is coming from Dynamo doesn’t show the surface pattern of the material - see image attached. I created an extrusion inside this family and assigned the same material to it and the surface pattern comes up properly. But no luck on the geometry coming from Dynamo. ( not sure if it helps but when I hover my mouse over this geometry it says “Free Form Element” whereas the other one says “Extrusion”. )
Note that the material input specifically asks for a material name and not an actual element.
It’s harder to guess why the surface pattern isn’t showing. It could be because the surface normals aren’t facing the right way or because the surfaces are too irregular for Revit to apply the pattern correctly.
Your input solved my first problem. I just needed to input the material name (basically a string).
The geometry seems pretty basic to me. It shouldn’t be the irregular form of it that’s causing the pattern not to show up.
Below is my RVT file which includes the family and the DYN file.
No idea why the pattern doesn’t show on the freeform geometry, but I hacked it by joining it to an extremely small extrusion created natively in the family (and entirely hidden in the freeform)
I know it’s probably not a suitable workaround but decided it’s worth mentioning it.