2016-11-30 5 views
1

Ich habe eine Frage. Ist es irgendwie möglich, Projekteigenschaften aus der Revit-Datei mit Revit Python Shell zu extrahieren, zu exportieren oder zu kopieren? Und wenn ja, wie schwer ist es?Extra Projekteigenschaften von Revit

Antwort

1

Von Projekteigenschaften meinen Sie Projektinformationsparameter? Dies ist ein schneller Weg, ein Projektinformationen Parameter in RPS zu holen:

parameterName = 'Project Name' 
value = '- parameter not found -' # default setting 

for parameter in document.ProjectInformation.Parameters: 
    if parameter.Definition.Name == parameterName: 
     if parameter.AsString(): 
      value = parameter.AsString() 
     elif parameter.AsDouble(): 
      value = parameter.AsDouble() 
     elif parameter.AsInteger(): 
      value = parameter.AsInteger() 
     else: 
      value = '- invalid value -' 


print value 

Edit: Parameter holen Werte

+0

Ja, danke, es hat funktioniert. Aber dieser Code gibt ihre Werte nicht zurück. Wie kann ich sie sehen? – Zed

+0

Danke, das ist genau das, was ich brauche! – Zed

0

Ich kann nicht mit der Revit Python Shell sprechen, aber in Bezug auf die Revit API ist es ziemlich einfach.

Von Ihrem Document-Objekt gibt es eine "ProjectInformation" -Eigenschaft.

So in C# sieht es so aus:

Parameter p = 
myDoc.ProjectInformation.get_Parameter(BuiltInParameter.PROJECT_NUMBER); 

Parameter o = 
myDoc.ProjectInformation.GetParameters("MyCustomParameter").FirstOrDefault(); 

Randbemerkung: Ich habe vor kurzem in eine Flut von Modellen führen, die keine Projektinformation Eigenschaft hatten (null) auf dem Dokument. Das ist nicht gut. Ich glaube, es kann behoben werden, indem Sie ein Audit für das Modell durchführen - aber aus einer Code-Perspektive sollten Sie darauf vorbereitet sein (nicht wie oben! :)).

+0

wow! Kennen Sie die Geschichte dieser Dateien? möchten Sie versuchen, doc.Delete auf dem ProjectInfo-Element auszuführen? es kann möglich sein, es jederzeit zu löschen, und so Schmerzen und Qualen für andere arme Seelen zu verursachen ... –

+0

Jeremy, ich weiß nicht, wie sie dahin gekommen sind. Einige Kunden haben sie an uns gesendet, weil sie in einigen unserer Apps versagt haben, in denen wir in der ProjectInformation-Eigenschaft nicht nach null gesucht haben. Wir mussten einen Patch für unsere Software veröffentlichen. – Matt

Verwandte Themen