I have got an error when setting parameter.
Sometimes I can change the level (or offset) of a fitting, but sometimes not (got “The parameter is read only” error).
Please help me to solve this issue. Thanks a lot!
Try to insert a Level.Name node after Levels
Hi Yna_Db, thanks for your suggestion.
It doesn’t work. I think this value should be a level object, not a string.
That’s right. In this case, I would guess that some element levels can’t be changed through Dynamo, but someone else could have a better answer…
Your solution is work.
I guess the reason is that we have “2” level parameters in Revit:
SCHEDULE_LEVEL_PARAM is for schedule, read only
FAMILY_LEVEL_PARAM is the writable property
So we need to assign what parameter we should change.
I have also update the python script source code as below:
from Autodesk.Revit.DB import *
from RevitServices.Persistence import DocumentManager
from RevitServices.Transactions import TransactionManager
doc = DocumentManager.Instance.CurrentDBDocument
element = UnwrapElement(IN)
ref_level = UnwrapElement(IN)
offset = IN
for i,x in enumerate(element):
ref_levelid = ref_level[i].Id
object_param_level = x.get_Parameter(BuiltInParameter.FAMILY_LEVEL_PARAM)
object_level = doc.GetElement(object_param_level.AsElementId())
object_param_offset = x.get_Parameter(BuiltInParameter.INSTANCE_FREE_HOST_OFFSET_PARAM)
object_newoffset = offset[i]
OUT = element
@Orval_Tien Do you know how to change parameters of views as example “Perspective”? The Built in parameter is VIEWER_PERSPECTIVE_DISABLED. The value of perspective is No, I would like to switch it into YES. Is it possible with the node of Set Builtin Parameter of Archilab?