London #AECHackathon, Revit 2016 API Leader Attachment

By Jaime Rosales (@afrojme)

This past weekend I had the opportunity  to go to the land of The Queen, the Beatles and 007. After the successful hackathon, I can now say a city of innovators and great hackers for the AEC industry in the UK as well. We started the week together with Adam Nagy (@adamthenagy), a VIP pre-hackathon workshop at our beautiful London office, a Meetup to get the Hackathon participants a head start with the use of our View and Data API.

IMG_1220

The I love 3D meetup was a great success and the attendees had a wicked response to the technology. During the hackathon, 2 teams decided to use the View and Data API in order to create unique and wicked 3D and VR apps.

IMG_7747

I had the chance to present to the entire audience the View and Data API as well, where a lot of interest and curiosity was sparked and I look forward to seeing the upcoming creations they make.

Here is the URL to the presentation if you will like to check it out.

http://jaimerosales.github.io/london-prehack/#/

IMG_1273IMG_1318

The 5 Teams who competed to solve the many challenges had a successful wrap up at the end of the Hackathon, Here is a summary of who they were and what they worked on.

  FullSizeRender              IMG_1369

Team #Massive : Who created an app in order to Find London Hidden space to solve the problem of identification of development space via planning policy constraints. The app final result helped them identify the untapped potential for raising building heights.

Team #Optioneers: Who focused on the challenge to help customers to make better choices of the house they buy. Their motto was "Closing the loop between design options" Enabling the customer make better choices in a faster time and also enabling the engineers enhancing their models in a shorter time.

Team #Gapathon: Who created an API in order to improve energy trust to analyse performance gaps. Their contributions were an open API, open source data consumer, data usability recommendation and also data visualization.

Team #Concur: With the use of View and Data API of Autodesk he used it in order to create an app that will Improve the efficiency In context collaboration for the industry.

Team #GhostBIMSquad: A team with members from 16 years old to 50 years old, this team worked in such a synced collaboration, creating a VR app, a Holographic image of their model, a relational information database, asset tagging, and a Bluetooth building navigation all during the weekend. Their best line during the presentation was "I’m sorry we don’t have a power point presentation, we were too busy coding".

 

IMG_1374IMG_1394

IMG_1415IMG_1412

Here is the list of the winners

Best Overall Project: Team Ghost BIM Squad

Best Open Source Project: Team Optioneers

Innovate UK Hack Challenge – Mind the Gap: Team Gapathon

Autodesk VR and 3D Challenge: Team Ghost BIM Squad

National BIM Service Challenge: Team Massive

Future Cities Catapult Challenge: Team Gapathon

Energy Savings Trust Challenge: Team Gapathon

It was a pleasure meeting everybody and congrats once again for a wicked weekend in London, here is a link for the two hashtags that became 2 out of the top 3 trending during the weekend in London #AECHackLDN  #AECHackathon

Now back to Revit API.

This week a question was raised on our Forum which has been having a good amount of traffic and since also key players on the Revit Engineering team have access to this as well as other Revit API 3rd party developer
s. Thanks to Arnošt Löbel for his help with the following question.

Question: I’m creating a new note, and needing to add a leader to it. This is updating code from a 2015 plugin to 2016. Previously I was using (where ‘note’ is my TextNote.Create() object):

// Set the left and right leader attachments to Top
note.get_Parameter("Left Attachment").Set(0);

note.get_Parameter("Right Attachment").Set(0);
 

That has become obsolete and using the new method, I’m currently using:

// Set the left and right leader attachments to Top
note.LeaderLeftAttachment.Equals("TopLine");

note.LeaderRightAttachment.Equals("TopLine");

I pulled the "TopLine" from Revit Snoop. However, this is not making it into my text note when created in Revit. It is Top for the Left Attachment, but Bottom for Right Attachment. Is there a best time to pass these values (currently I do it after the leader’s been created and before the command completes)?

Thanks in advance for any help.

Answer: My sincere advice to you so to do less snooping. I understand that the Snoop is a popular tool and is occasionally necessary too, but at many times it does not do any good to you and your application.

As you can find in the RevitAPI.CHM file, text note has three methods related to Leaders. They somehow mirror the UI commands in Revit:
– AddLeader
– GetLeaders
– RemoveLeaders
In your case you will probably be using:

Leader leftLeader = myNote.AddLeader(TextNoetLeaderTypes.TNT_STRAIGHT_L); 
//and
Leader rightLeader = myNote.AddLeader(TextNoetLeaderTypes.TNT_STRAIGHT_R);

The Add method returns you the newly created Leader object. You will notice, that just like in the UI, the above method add leaders with some default shape and position. However, you can use the returned leader object and using its method a properties adjust the appearance and position of each leader.
For example:

leftLeader.End = xyzPointSomewhereOnTheModel; 

I hope that makes it clear.

Thank you Arnošt for the detailed answer to the Revit API community forum.

Thanks for reading and until next time.


Comments

One response to “London #AECHackathon, Revit 2016 API Leader Attachment”

  1. I’d like to thank the author for writing such an insightful and informative blog post about api leader that is not just useful to the readers but also revealing.

Leave a Reply

Discover more from Autodesk Developer Blog

Subscribe now to keep reading and get access to the full archive.

Continue reading