-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathCloneViewTypes_ExportTypeInfo.py
More file actions
68 lines (59 loc) · 2.16 KB
/
CloneViewTypes_ExportTypeInfo.py
File metadata and controls
68 lines (59 loc) · 2.16 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
#------------------------------------------------------------------------#
#
# This script will read all view types in the model and produce a
# TAB separated list in the console above that can be pasted into
# Excel using the "Paste Special" option
# Fields as follows:-
# - Family Name
# - Type Name
# - Default Template ID
# - Default Template Name
# - Dependant on Template Boolean
# - Callout Tag
#
#------------------------------------------------------------------------#
theViewTypes = (
FilteredElementCollector(doc)
.OfClass(ViewFamilyType)
.OrderBy(lambda v: v.FamilyName)
)
for aViewType in theViewTypes:
#Get the Family Type
textfamilyName = aViewType.FamilyName
#Get the Type Name
texttypeName = Element.Name.GetValue(aViewType)
#Get Reference Label
param = aViewType.LookupParameter('Reference Label')
if param and param.HasValue:
referencelabel = param.AsString()
else:
referencelabel = ''
#Get the Default Template Parameter
param = aViewType.LookupParameter('View Template applied to new views')
if param and param.HasValue:
defaultTemplateId = param.AsElementId()
if defaultTemplateId == ElementId.InvalidElementId:
defaultTemplate = 'No Element Id'
templateName = ''
else:
# If we get here then
# there is a vaild template specified
defaultTemplate = param.AsElementId().ToString()
template = doc.GetElement(defaultTemplateId)
templateName = Element.Name.GetValue(template)
else:
defaultTemplate = 'No default Template'
templateName = ''
#Get the Apply to New Views Parameter Value
param = aViewType.LookupParameter('New views are dependent on template')
if param and param.HasValue:
dependantOnTemplate = param.AsValueString()
else:
dependantOnTemplate = ' None '
#Get Callout Tag Info
param = aViewType.LookupParameter('Callout Tag')
if param and param.HasValue:
calloutTag = param.AsValueString()
else:
calloutTag = ' None '
print textfamilyName + '\t' + texttypeName + '\t' + referencelabel + '\t' + defaultTemplate + '\t' + templateName + '\t' + dependantOnTemplate + '\t' + calloutTag