Anda di halaman 1dari 6

Autodesk Revit users reach new levels of productivity with VSTA

Autodesk has invested significant resources for years to make the Revit Platform the worlds top Building Information Modeling tool. Flexibility and extendibility have been key strategies to obtain that objective. Autodesk sought to fill the gap between standard functionality and their Revit users unique needs. Similar to products like AutoCAD and Inventor, the Revit team has accomplished this by focusing their efforts on building and exposing a full-featured API and then adopting existing industry-standard development languages in a well-known IDE. The Revit 2009-based vertical products have includedMicrosoft Visual Studio Tools for Applications (VSTA) to provide a powerful customization environment and experience for the Revit user base.

REVIT Building Information Modeling Software Autodesk Revit based vertical products are used by professionals in the Architectural, Building Systems and Structural design arena. Revit is used to design everything from the most modest single family dwelling to the most elaborate sky scrapers in the world. And as design professionals already know, relating geometry shown on 2D paper drawings to a buildings 3D space results in problems in even the simplest building design. Revit is the 3D modeling solution for our 3D world. Modeling in 3D ensures that electrical wiring does not interfere with air handling equipment. Modeling in 3D ensures that a door can open without the interference of a sewer pipe. Modeling in 3D ensures that elevator access meets ADA requirements and that fire suppression systems work. And as important as designing in 3D is, Revit is much more than a 3D modeling tool. Revit knows not only that a chair occupies space in a building but it knows everything about the chair. Building Information Modeling (BIM for short) is a concept that recognizes the importance of generating and maintaining all information relating to a building before, during, and after the construction of that building. Revit was built from the ground up as a native BIM application and meets the critical needs embodied in that concept. Revit understands that the Information portion of BIM is relevant and needed by more than just design professionals. A buildings Information is utilized by everyone in the building design process from the conceptual designers, space planers, engineers to the Facility Maintenance staff. Revit makes the distribution of building information possible. Meeting the Needs of Every Revit Customer Autodesk prides itself on being responsive to the needs of its Revit users. Enhancement requests are handled with care as the end users drive Revits embedded functionality. As with all software vendors, Autodesk receives thousands of enhancement requests, prioritizes them, and implements enhancements that will benefit the highest percentage of its users. Autodesk recognizes that the enhancement requests that do not survive the vetting process are no less important to those submitting them. Indeed, they remain important and essential to those who submitted them. Autodesk strives to

meet its customers needs whenever possible. So the search began for a tool Revit users could utilize to create customized functionality to meet their individualized needs. And since this tool was for their end users, Autodesk was determined to meet the needs of Revit users by identifying critical requirements and striving to meet them. The Problem Selecting the best customization tool was actually a simple process find the tool that does everything we need it to do at a reasonable price. Simple. Right? Actually, yes. Heres the checklist: Must be easily implemented, thus allowing Revit developers to meet product release timelines. Must be powerful enough to be appreciated and utilized by a large number of existing software developers and easy enough to be used by Revit end-users. Must be capable of embedding business logic and Graphical User Interface elements inside Revits project structure. Must utilize an industry-wide standard user interface and widely known programming languages from a stable vendor. Must provide methods to interface with existing hardware and software resources, including the internet, XML files, databases, and the like. The Selection Microsoft Visual Studio for Applications (VSTA) was selected by Autodesk to meet Revits end-user customization needs because VSTA met or exceeded all required functionality. Implementation Timelines Success Implementing VSTA into Autodesk Revit 2009 was successful without requiring timelines to be adjusted. VSTA, a tool for both seasoned developers and Revit end users VSTA can be used to empower the Revit user by wrapping repetitive, time-consuming, and error-prone tasks into the click of a button, running a user-defined routine. Seasoned developers will appreciate the comprehensive access to the .NET Framework, the Microsoftprovided library of Classes used to access databases, read text files, create XML documents, interface with Web services (WCF), implement Workflow (WF), and access multiple and varied data sources with LINQ. Embedding Business Logic and GUI elements VSTA projects containing Business Logic and Graphical User Interfaces can be used by Revit customers in two ways. First, VSTA projects can be saved so they can be used by all Revit projects. This is useful for projects that support corporate standards and that are applicable to all Revit projects. Second, VSTA projects can be saved within the Revit Project model file.

This allows VSTA projects that contain Revit-project specific logic and user interfaces to stay with the Revit Project regardless of who accesses the model. Industry-standard user interface and programming languages Microsoft Visual Studio has been used by millions of developers around the world for years. And Microsofts release of the free Express Editions of Visual Studio for the Visual Basic and C# languages has put Visual Studio into the hands of even more developers and users. This creates an enormous base of individuals who are capable of customizing VSTA-enabled applications. And not only are there a large number of skilled developers who are VSTAready, there are large numbers of resources covering VB.NET and C# (the languages used in VSTA) ranging from books to blogs to classes taught at local community colleges. Capable of interfacing with current and future systems and processes Whether you need to query an enterprise-wide database, read from or write to binary files, email confirmations, or provide audible feedback for the visually impaired, VSTA has the power to communicate. In addition to the .NET Framework, thousands of existing thirdparty .NET tools can be referenced into a VSTA project just as they are referenced into fullblown Visual Studio projects. VSTA Empowers Users The end users and the companies that employ them are the real winners whenever VSTA is deployed inside an application they use. End users are no longer dependent on the Revit release schedule. If the end user needs functionality natively supported in the application they are using, VSTA can be used to create that functionality. For example, many applications have the ability to export data to ASCII text files. But not all applications can export data to custom-formatted XML files. Heres an example of Revit data being exported to an XML file:

Revits outstanding design and feature set, combined with VSTA is a powerful team. VSTA fills the 80/20 gap that exists in all software. Revit supplies 80% of the functionality needed and acts as a platform for end users and developers to add the remaining 20% of their unique and specialized needs. VSTA gives users the tool they need to push Revit to the 100% mark and beyond. VSTA empowers users by not only giving them the ability to implement additional functionality but by allowing the user to perform time-

consuming and potentially error-prone processes in a fraction of the time it had taken when performed manually. C# Example public void BatchProcess_CapitalizeRooms() { Autodesk.Revit.ElementIterator myIterator = this.Elements; while (myIterator.MoveNext()) { Autodesk.Revit.Element myElement; myElement = (Autodesk.Revit.Element)myIterator.Current; if(myElement.GetType() == typeof(Autodesk.Revit.Elements.Room)) { Autodesk.Revit.Elements.Room myRoom = (Autodesk.Revit.Elements.Room)myElement; myRoom.Name = myRoom.Name.ToUpper(); } } } VB.NET Example Public Sub BatchProcess_CapitalizeRooms() Dim myIterator As Autodesk.Revit.ElementIterator = Me.Elements While myIterator.MoveNext Dim myElement As Autodesk.Revit.Element myElement = myIterator.Current If TypeOf myElement Is Autodesk.Revit.Elements.Room Then Dim myRoom As Autodesk.Revit.Elements.Room = myElement myRoom.Name = myRoom.Name.ToUpper End If End While End Sub

VSTA Adds Value to Revit VSTA enables the Autodesk sales force to say Yes, you can instead of No, it cant because VSTA empowers end users to write their own programs to extend Revit based verticals that meet their individual needs and allow them to become more productive. Revit is todays solution for todays design professionals and organizations. VSTA is Revits solution to the ever-pressing need to give users what they need when they need it. Autodesk has opened the door to empowering its Revit users. And Revit users will continue to design their dreams and build the future.

[SIDEBAR] Revit Customer, Walter P. Moore and Associates, Inc. has been using VB.NET to customize Revit for a few years. Now that VSTA is embedded inside Revit, they can migrate existing projects into VSTA as well as developing new projects in VSTA. Stephen Blumenbaum stated We would like to migrate over to VSTA because its native to Revit and thats helpful for development. He continued, For the smaller, mundane tasks, were developing that in VSTA for sure. We are always trying to eliminate the mundane tasks from the modeler. If we can do that, we can see immediate benefits of time savings. We are beginning as much new development in VSTA as possible. Theres a core group of us that are working on VSTA development; myself, two other Engineers, and a newly hired developer. Walter P Moore and Associates has enjoyed a competitive advantage by customizing Revit to help their employees be more efficient. That competitive advantage will continue now that VSTA is available as a fully-integrated development environment inside Revit.