Integrate ies file into family type

there is already a similar topic here:

I work with Revit 2018.3 and Dynamo 1.3.

I try to automate the integration of the ies file to a family typ. You can select the file with a button and after that, the ies file is “baked” into to Revit family (picture 1)

Although my script can write the path in the parameter to this file, then the file is linked only to the family, not integrated (baked). However, the lighting family should be passed on to customers and therefore no path may be in the parameter. The ies file has to be baked into the family.

In the last picture you can see the path i set with my script:

But the ies file isen’t baked into the family.

@erfajo → Thx for your great package!
So its possible in Revit. How i can do it with Dynamo? The files are only examples. In real life there are a lot more ies files, i need to integrate.

Forum_set_path.dyn (13.3 KB)
test.rfa (688 KB)
Can’t upload ies files…but every Revit user has his own:C:\ProgramData\Autodesk\RVT 2018\IES

I have tried to open your revit file and I cant find the parameters you are using!?

I dont have Revit 2018, I have only Revit 2019, and I dont know if anything in this direction has been deprecated.

however, trying to set the value to another parameter (Description) succeded as expected, which can be seen in the above image.

Forum_set_path.dyn (11.6 KB)

Hi erfajo,
thx for your help.
The family is a nested family.
Click on the “light” than edit family:

Now click on family types and there is the parameter “Photometric Web File”.

The script works right at first glance. But the path is just a link. If you delete those files outside of Revit, then the family will not work either. But you can integrate the ies file exactly this way into the family. For this you have to press the button with the three dots and manually select the ies file.

Well understanding that you meant “nested family”, is something else than your question. Try this instead.

Forum_set_path.dyn (19.2 KB)

1 Like

Thanks for your help and sorry for my bad description.
But i don’t think your script works. The old ies file still seems to be stored in the parameter.
You can see this better on several types and ies files.

1.Now i try to set more than one ies file to a family type:
The script works. No error appears, but no ies file is assigned.

2. Only the first ies file was set as text on all types. But in the background here is no new ies file assigned.
test_3types.rfa (632 KB)
Forum_set_path.dyn (19.7 KB)

Remember If you dont reload the family after the set value… then will nothing be set in the “mother” file. And if you close the file, which would be obvious, then you need to reopen the graph every time. for testing purposes can you freeze the close node, but remember to turn it on again when leaving the graph turning it into production mode.

By script I mean the dynamo file .dyn

I do not quite understand the order yet.
At the moment I go like this:

  1. Open the family and create types
  2. Start Dynamo
  3. run dyn file
  4. The graph seems to work
  5. close Dynamo and graph
  6. Save and close family under another name
  7. Open family
  8. Result: ies files were not properly assigned to types

I did test it once more, and the graph worked as expected by me.

Restart everything…nothing happens.
Did you test the graph with the 3 types?

no I do only need to test my initial file I uploaded, the remaining is controlling list level…

I uploaded your changed(little) graph and the family with 3 types.
Could you pls test it, with these files? The error appears when there are more than 1 ies file and 1 typ.

works as expected… and as expected did I not need to download your new files. It was straight forward the solution. I gave you the answer in my former reply.

1 Like

I’m sorry, I can not see the difference between your and my steps. The graphs and the test data are the same. I also tested it with Revit 2019. No difference.

I’ve tested the script and data 100 times in the last few hours. I really do not want others to do my job …

Things are getting a bit off topic, and boardering on personal attacks here so I’m closing this for a bit so the moderators can get a handle on the situation.

I’m opening this back up now. Please be sure to keep from re-using the content in the future.

Yes i forgot about the list leveling.
Now are the names set correct…but in the background the ies files are not set.
You need to look at the “light geometry”.
The light geometry of WPE1MH.ies looks realy different:
But after the graph runs …nothing except the “names” changed

This error i explained already in some of the first posts.

In the meantime Divydivydivy could help me. Thx!
Everything seems to go with standard nodes:

Following up on this, in case you want to know what was going wrong:

Fiesta, you are correct: It was NOT working, in the earlier Suggestions. But it wasn’t actually a Dynamo error that was happening, its how Revit works, with respect to IES files:

Your Revit.ini has a specific path to IES files. That’s the only way it will automatically “find them” by name only. Otherwise, it needs a full path.

So you’ll see in the two suggestions you got in the thread, one presents the IES name only, in the Set Parameter by name node, and the other presents the full path, at which point it is “found.” Coincidentally, if the IES file was in the location that was pathed on your machine, it may have worked with the earlier solution as well.

Sounds like a Revit issue, that masqueraded as a Dynamo issue (that then turned in to a personnel issue), but thankfully got solved anyway. :slight_smile:


Hi Aron,
that’s true. in the Revit.ini is the path to the standard ies data. If one uses the “standard functions” of Revit, one can assign automatically also several types the suitable ies file. Unfortunately, this only sets a “link”. If another user does not have the same ies data under the same path. Then the family does not work anymore.
By hand, you can set the ies file but for each type (baking / integrate).

Well, it really seems to have been more of a revit problem.
Problem was solved.
A happy ending for all :slight_smile: