Thursday, July 03, 2008

Speaking at AU on the Revit API

I (finally) got an invitation to speak at Autodesk University this year on the topic of the Revit API.

CP315-4: Getting Down to BIM: Advanced Revit API

I'd been planning to cover topics such as:

  • Essential Tools
  • Understanding Parameters in Depth
  • Filters: New Searching Mechanisms
  • The Challenges of Phases
  • Extracting Geometry
  • Spotlight on: Room Objects

But I've got some time where I can add or remove topics to cover... Are there other areas of interest out there? I'm sure that there will be a ton of other Revit API classes - particularly introductory and VSTA classes... So I'm interested in anything else people would be interested in hearing about.

I'm also interested in adding one topic of my own - an interactive discussion of "What kind of application are you interested in building?" - to try to answer people's questions about whether the application they're thinking about CAN be built using the API... But I'm not sure if this is the right place for that...

Any other suggestions?

-Matt

11 comments:

Harsha said...

Hi Matt. I am a graduate student and have been working with the Revit API for about a year now. I am currently involved in building an evacuation model using Revit and the API offers quite a good lot of interesting features which makes me believe that such a model is possible. But, I am often stuck at some points where the work could be simple if the API had some basic stuff. I guess there are plenty of people like me, who wonder what kind of applications can really be built using Revit API.

Matt Mason said...

Harsha,

That's exactly what I'm saying... Can you build it? yes, I think you can. I've done some investigation of that (as well as circulation) myself, and I think there's enough there (logically and geometrically) to make it work.

-Matt

jh said...

that's interesting! unfortuantely I cannot attend AU this year. any chance to download notes or ppt?
best regards,
jochen

Harsha said...

Thanks Matt, that's really a confidence booster. I have been struggling for a couple of weeks to identify rooms that are connected by stairs, with no success yet. Initially, I thought the thing works similar to doors where a from and to room is available, but realized it isn't the same with stairs. Hope you could suggest some way around on this.
Thanks

Rod said...

unfortunately theres nothing on the API in australia, is there any chance this presentation will be videoed, I'm interested to hear what you have to say!

Good luck,

Rod

Matt Mason said...

Harsha,

I hadn't had a chance to look at stairs as of yet - you're right that's an odd case.

Off the top of my head, the only way I think you'll get what you need is to look at the geometry of the stair element. If you get the high point and low point of the stairs by geometry, it should be possible to deduce which rooms it connects.

-Matt

Matt Mason said...

jochen/rod,
I don't know if AUGI will publish it or record it. As long as AUGI doesn't have any issue with it, I have no problem sharing my presentation and materials afterwards...

-Matt

wyan said...

Hi Matt,

I hope I can attend your class...

I got a API question and if you could point me to a direction to resolve it, that will be greatly appreciated.

We are converting Revit models to an external program and try to walk though the models in the program. So far we are able to bring the geometry into the program, and we are trying to bring Revit materials and texture mapping into it. Our question is: how can we obtain texture map UV coordinates and the texture image paths from a Revit model using Revit API 2009, in order to render textured surfaces of geometry obtained from Revit in an external graphics platform?

Thanks for your help,

Best,

wei

Matt Mason said...

Wyan,

That's a good question... I started looking at that once, but didn't make it all the way through the process.

Here's my guess at what's involved:

The Revit 2009 products now use the mental ray engine - and a whole different texture/render scheme.

You have to figure out the material (by face, by element, etc) - then from the material go to the new Assets class to look at the Asset properties.

One of the Asset properties I believe is the texture name.

Here's where it gets challenging - I think you actually need to get the FBX API from Autodesk to open the "asset_library.fbx" file and extract out the corresponding texture.

In terms of the U,V coordinates - I don't have a clear idea on that one.

Good luck.

-Matt

wyan said...

Thank you Matt for your reply.

We have recently checked with ADN and there seemed no UV available through API yet.

Hope in the next version of API we can have it.

Best,

Wei

Matt Mason said...

Wyan,

Out of curiousity, what do you mean by "UV"?

-Matt