Advertisement
Guest User

Untitled

a guest
Apr 30th, 2016
52
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.78 KB | None | 0 0
  1. import clr
  2. clr.AddReference('ProtoGeometry')
  3. from Autodesk.DesignScript.Geometry import *
  4. clr.AddReference('RevitAPI')
  5. import Autodesk
  6. from Autodesk.Revit.DB import *
  7. clr.AddReference("RevitServices")
  8. import RevitServices
  9. from RevitServices.Persistence import DocumentManager
  10. from RevitServices.Transactions import TransactionManager
  11. files = IN[0]
  12. curdoc = DocumentManager.Instance.CurrentDBDocument
  13. uiapp = DocumentManager.Instance.CurrentUIApplication
  14. app = uiapp.Application
  15. mygroups = curdoc.Application.OpenSharedParameterFile().Groups
  16. comment1 = ""
  17. comment2 = []
  18. list=[]
  19. file=[]
  20. path=[]
  21. listname = []
  22. listtype = []
  23. listvalue = []
  24. saopt = SaveAsOptions()
  25. for f in files:
  26. if ".rfa" in f and f[-9:-5]!='.000':
  27. file.append(f)
  28. a=0
  29. i=0
  30. while i<file.Count:
  31. doc = app.OpenDocumentFile(file[i])
  32. TransactionManager.Instance.EnsureInTransaction(doc)
  33.  
  34. #---------------Удаление параметров----------------------------------------------------
  35. pars = doc.FamilyManager.Parameters
  36. pars = UnwrapElement(pars)
  37. for par in pars:
  38. namepar = par.Definition.Name
  39. typepar = par.StorageType
  40. if str(typepar)=='Double':
  41. try:
  42. valuepar = par.AsDouble()
  43. except:
  44. valuepar = 0
  45. elif str(typepar)=='Integer':
  46. try:
  47. valuepar = par.AsInteger()
  48. except:
  49. valuepar = 0
  50. elif str(typepar)=='String':
  51. try:
  52. valuepar = UnwrapElement(par).AsValueString()
  53. except:
  54. valuepar = "no"
  55. else:
  56. try:
  57. valuepar = par.AsValueString()
  58. except:
  59. valuepar = ""
  60.  
  61. #valuepar=doc.FamilyManager
  62. list.append(par.Definition)
  63. listname.append(namepar)
  64. listtype.append(typepar)
  65. listvalue.append(valuepar)
  66. TransactionManager.Instance.ForceCloseTransaction()
  67. doc.Close()
  68. i=i+1
  69. OUT = list,listname,listtype,listvalue
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement