Description
Key Learnings
- Understand what Forge is
- Understand the capabilities of the Forge APIs
- Ideate how to use Forge in your own applications and workflows
Speakers
- SPStephen PrestonStephen has worked with Forge since before it was called Forge. Formerly manager of the global Forge developer support and evangelist team, he is now responsible for Forge business strategy - which includes pricing and launching new Forge APIs. Stephen recently relocated from the SF Bay Area to Portland, Oregon; where he spends way too much time installing smart home components in his new house.
- JQJim QuanciWith more than 30 years of engineering and design experience, Jim Quanci has spent the last 25 years developing relationships for Autodesk with technology partners around the world. He oversees a global network of 4000+ software partners – ISVs, Consultants, and Autodesk customers - who customize, complement and extend Autodesk Cloud, Mobile and Desktop technologies. He is currently leading creation of a new cloud based ecosystem of partners leveraging Autodesk’s Forge web services Platform.
JIM: So to make sure you're in the right place, we're going to show you a number of uses of Forge, some of which are code samples, some of which are commercial apps. And we're going to rip through them at, like, somewhere between 20 seconds and a minute and a half each. We ostensibly are going to go through 10 of them. We may go through 15 or 20. We'll kind of see how far we get.
And the idea here, while you're here, is to go, I didn't know you could do that. And once you see it, you can then come back at a later time and go, hey, how do I find that code sample? Who do I talk to? I think I can apply what I just saw for a problem I have, or one of my customers have. So again, it's just to stimulate you to go, oh, that's a good one. I need to know how that works, like this clock here.
So one of my engineers, Dennis Gregor, who's a 3D S Max expert, built this in 3D Studio, brought it into Forge, did a little transformation stuff with the different meshes for making it kind of act like a clock. And it's totally useless, but it's absolutely cool.
STEVEN: So that satisfies one of our criteria, useful and cool. So we've got the cool out of the way.
JIM: OK. So here's the classic. Most people who do Forge demos-- some of you may have seen this already-- it's just 2D and 3D connected. I pick on stairs. I see the stairs in 3D. I see the properties. So seamless 2D, 3D-- not a big deal.
Maybe I want to go see those stairs. Maybe I want to see-- I don't even know what this is. Let's go find out what it is-- some object. Maybe I'll pick one of these chairs, 2D, 3D. And then filtering-- so give me all the ducts. So here's the ducts in 3D. Here's the ducts highlighted in 2D.
And this assumes that 2D and the 3D are coming from the same source model. So you have the same entity ID on both 2D and 3D, which makes wiring this up very simple to do, and kind of no big deal. I don't know, let's go look at pipes, OK? I don't know how far I go here, Steven. Do the spreadsheet-- you going to tell me when to stop?
STEVEN: Well, you have that one, and then you have Building 360 for management.
JIM: OK. So Building 360, this is from a partner of ours, CAD & Company, based in the Netherlands. And they have built the site with their customers. Architects and construction firms upload their models. They have thousands of building information models of all sizes.
So I'm going to pick something small to start with. This is a restaurant, you know, out by the ocean, maybe by the Zuiderzee, someplace like that in the Netherlands. And yeah, it does the model, which we're all kind of used to. But, you know, they've changed the user interface, because this is just open to the public. Anybody can go to this website, right?
So here's all the 2D sheets. I don't know, maybe you want a plan view-- made it very simple. Or how about assets? It's ripping through the building information model, assembly code, fire ratings, manufactureres, floors-- I don't know, structural framing, right? It's just doing a filter, show me the structural framing, show me the columns, show me floors. Which floor do I want? Now, the only problem I have here is it's Dutch. And I don't speak any Dutch. So I have no idea what the deal is here.
What else? Those of you who deal with BIM managers, you know, trying to manage the quality of the building information model-- well, this is ripping through the model using model derivative, and showing assembly-- you know, how many of the entities have assembly codes. How about material? How about area per level? How about material types? And it just takes any BIM model thrown at it and does these quick classifications, which if you're a BIM manager, you can do a quick, yeah, things are looking good, or they're not, or things are awry and I need to go talk to someone.
They're also hooking in issues. But this is a, you have to pay for thing. And with that, I'm--
STEVEN: You're going to need the database one, as well.
JIM: Oh, you want me to do the database one?
STEVEN: Yeah.
JIM: So are we going to do a mechanical thing?
STEVEN: I just sit here in this presentation and talk to you. Don't worry about me.
JIM: So this is a classic on the right here. This is data out of a database. In this case, it's a Mongo database. Could be anything, you know, some database up on the Cloud somewhere that's hooked into a model. So I can do things like click on steel in the database, and here's all the steel in the model. Show me all the plastic. Show me the cast iron.
Now I'll tell you, this is a code sample made by my programmers who are not real engineers, at least not engineers who deal with atoms. They're bit engineers, bits and bytes. So some of these classifications are a bit strange.
But just for fun, let me pick one of these steel items. Here's the database information, material supplier, price, currency-- that's not in the original model. You know, I don't even know where this model came from. It could be Inventor, Solidware, [? Excel ?] [? Edge, ?] Fusion-- doesn't really matter.
So why don't I go to steel, and let's change the price. And notice, steel is the most expensive thing here. So instead of 300 US dollars a kilogram-- yeah, that's not right, how about $1 a kilogram, right? So yeah, so we've got an update here on the cost breakdown. And steel is way down. It's no longer the most expensive thing.
This is a classic example. We've had a number of construction companies trying to get a cost estimating system, scheduling systems, with the building information model. And they want to make that information readily available to people in finance or project management. And do I keep going, or don't I? Yeah, why not?
STEVEN: [INAUDIBLE].
JIM: Show all. Well, I want to do a transform, too. I think transform is kind of fun. I'm going to pick an item, and I'm going to take this model apart. And let's take the valve covers off. So you can just take the model apart.
I'm doing this with an engine. It could be a building, doesn't really matter. Not a big deal, just a simple code sample, nothing special. Visual reports-- this is open source JavaScript, copy and paste reporting right off the web. We just wired it up.
Let me do material. The model has been color coded based on material, carbon steel is this dark purple stuff. Stainless steel is all this yellow. Alloy steel-- so very easy to kind of thematically kind of work your way through a model.
Maybe you like bar charts. Let's go see all the aluminum. Aluminum block, oh, must be race car. No, that's not a block. What is that, front face plate? I don't know.
Anyway, you get the idea. Very simple to do. Those of you who've heard the JE Dunn story, this is the demo we showed them in the beginning, hooking up external data source with a model to create insights that you can deliver to anybody on a web page. And now to you, Steven.
STEVEN: OK. Is this thing working now, or not? No?
AUDIENCE: You're on the wrong--
JIM: Do you want me to keep going, Steven?
STEVEN: No, I was saying such words of wisdom before, but none of you could hear me, you know, now that you're--
JIM: Well, I'll go to Jigsawify, just for fun.
STEVEN: Oh, OK, go on, then. I do have something, though.
JIM: This is-- this uses Forge Design automation, where I can take a picture, like, of my boat-- oh, where are those pictures? Well, this one will work. And I need to drag and drop. So I'm going to drag and drop.
STEVEN: Are you running Windows XP?
JIM: Am I running Windows XP? It's Windows 7.
STEVEN: Something like XP.
JIM: Give me a break. I can decide how, you know, grainy I want it. So this is using some open source to take the photo, kind of rasterize it. And now, it's going to take these results and it's going to say, how big is my puzzle that I want to create?
And it's going to take the image. It's going to throw at AutoCAD. It's going to throw a jigsaw puzzle algorithm at it. And it's going to build a jigsaw puzzle. And typically, what you would do is then use AutoCAD to get the DXF file and feed it to your cutter, whatever that, you know, happens to be.
Do we want to-- and that's why DXF, DWG-- here comes a DWG. And we'll open it up. You notice how fast it did that? I mean, I'll tell you, the design automation for AutoCAD, it is lightning fast.
So when you upload an app into AutoCAD up on the Cloud to do some kind of automation, it just cranks. It's going to take longer to boot up AutoCAD than it is to do anything else.
STEVEN: Yeah. It translated to file online quicker than it booted up AutoCAD. So this sample was actually written by Kean Walmsley. Probably a lot of you know his blog Through the Interface. So if you're looking for source code for this one, he blogged extensively about this at the time.
JIM: Ah, and here we go. Yes, no. It's not fully loaded yet. And maybe at this point, they believe me, and we should pass to you.
STEVEN: Yeah, OK. OK, so this is an example with a viewer. And by the way, just taking a step back, we try to get a mix of, you know, AEC, mechanical. Some of them are partner applications. Some of them are sample applications that various people at Autodesk have written. You know, we're keeping things short samples that we could demonstrate really quickly.
So we're just trying to give you quick fire samples. And hopefully, a couple of those samples will resonate and get you thinking, oh, I could do something a little bit like that. So, you know, don't be shy afterwards about coming and grabbing us either here or at the Forge Answer Bar and, you know, asking about how you could apply some of these concepts to solve your own problems.
But this is another IOT example. So we just have the viewer over here. And hopefully, you can see on the screen that you have these flashing hotspots, which are telling me that some IOT data at that particular location on the machine is telling me that there's a problem.
And they were actually the same dots that correspond to the incident list up here. So you know, a moderate problem might be in the amber color, or a severe problem might be in the red. And I can click on this. And it actually takes me to the component where I have my monitor. And it starts to show me some live data.
And I'll tell you for this demo, we do actually have a demo that's linked up to real live data. But just for today, this is randomly generated. So don't worry that anything is going to explode as a result of this demo.
And we can just click on another one, and it takes you there. And you just have this really nice way of highlighting the model where there is a problem, and then immediately displaying additional information about the problem. And this is all very simple JavaScript plumbing. So if you have a JavaScript program on your team of, you know-- any decent JavaScript programmer can very easily hook the Forge components-- in this case, for Forge Viewer-- they can hook it up to other web components as well to create really valuable applications.
JIM: And you know, one thing we see is that term digital twin. And whether that's a building, or a machine, or a plant, people are creating these digital twins. And Forge has proven a very effective way to build a user interface for a digital twin.
STEVEN: And this next example is a protocol simulation hub by CC Tech. And they're actually exhibiting upstairs in the Forge Village today. So if you like the look of this, go and ask them about how they did it, and whether it might be of use to you.
But basically what they're doing is they're using the model derivative API to extract the geometry of a component as an OBJ file. And they're using that to run a fluid dynamic simulation. And they're then bringing the component into our viewer-- this is our standard viewer here-- but they're adding additional information.
So when I click on this, and hopefully, the network isn't too slow today-- just give it a couple of moments-- it's going to load in the results of that CFD simulation. And you can see now-- I'll just speed that up a little bit-- you should be able to see that it actually got the flow lines. So you've got the ghosted out geometry and then just the little arrows traveling down the flow. And obviously, the colors of the lines are showing you the speed of that material.
And there's various other things you can display using these models. You can use, like, contour plots of these flow lines, just to very, very simply, in a matter of minutes, take your component, do a fluid-- you know, specify the boundary conditions, do your fluid dynamic analysis, display it, and move on.
JIM: And the key thing is, it's just a web page. You don't need some $10,000 or $20,000 piece of software. You can share with anybody. It's just a web page. So it's very much more accessible. They actually charge people by the run, by the solve. I don't know what it is, $5 or $10, you can run a solve. Again, a very low cost way to do CFD kind of work that you may have found inaccessible in the past.
STEVEN: Yeah. And actually, just getting a little bit more technical, this is a great example of injecting additional graphics into the viewer. So the Forge Viewer, it's a Web GL viewer, it's zero client, so any modern browser, it will just work. But there's this library called 3JS, which is really the de facto standard for doing 3D graphics on a web page. And it wraps for Web GL layer to simplify it.
The viewer is built using 3JS, and then adds another layer of abstraction, as well, so you have a high level API to viewer exposures. But I can drill down as a programmer and go into the 3JS level, or the Web GL level, to create really complicated interactions. So in this case, he's gone here via 3JS and injected these additional graphics into the view. OK.
JIM: You up still?
STEVEN: I think it's you next, Jim? And you're-- you were supposed to do Jigsawify next, so it's me again now. OK, so the next one is just a simple example of-- we didn't want to show you everything that was to do with the Viewer. We wanted to show you that Forge was more than just for Viewer.
So I'm just going to log in to my BIM 360 account here. Just give me a second. For some reason, it always remembers the wrong password for me. So I just need to sign in there. And I need to sign into my Google Drive, as well.
OK, so now, here's my BIM 360 account. It's listing all the hubs I'm a member of. And I think if I go into my own hub-- so I have these project files here, and we have the Google Drive over here. And what I can actually do is I can just highlight a file over here in Google Drive and just very simply say, highlight that one, and copy the file. I just clicked the Start Transfer, and just wait a short while it's transferring.
JIM: So this example is with Google Drive. We've done samples with OneDrive, Ignite--
STEVEN: Box--
JIM: --Dropbox, Box-- I'm not sure where we are with SharePoint-- Vault. And it's all the AutoDesk hubs. So whether it's BIM 360 Docs, or BIM 360 Team, or Fusion 360, or A-360, it's all the same, very straightforward.
STEVEN: Yeah. So I can copy here bidirectionally. But just to prove I'm not lying, if I go into my temp folder here, it's the Golden Gate Bridge there that I just transferred. The other thing I can do is, if I now log into my Google account with this application, I-- so actually, Google do use our API's a little bit. And this isn't an application that Google wrote, but it's a simple version of it.
And basically, it's like, hey, I've got some CAD files stored on Google Drive. To make it easier for me to manage them, I want to be able to view the things that are in Google Drive. So what we've done here is something that is actually, on the fly, translating. In this case, it's a Sketch Up file. And you can see, it's just giving us the translation progress. If everything goes according to plan-- yep, that translated really quickly.
JIM: And this data is not in an AutoDesk hub. It's in wherever. You could have data wherever. And you just want to give somebody the ability to view.
STEVEN: Yeah. And so now, I can very easily, you know, not have to worry about working out what the model is from the file name. I can actually very quickly just query the file graphically to say, hey, you know, is this the file I wanted? Was this really the Golden Gate Bridge? And funnily enough, it is. OK, over to you, Jim--
JIM: So is it back to me?
STEVEN: --I think, yeah. So I'll just do Setup, and take--
JIM: So here's a real commercial app, AdvanTech. This is an electronics distributor based in the UK. And the typical big electronics distributor, they sell hundreds of thousands of different components, and racks, and all kinds of stuff, power supplies, and the such.
Now what they wanted to do-- when somebody is going to buy a piece of equipment, they want to get a good look at it. So they've had the data sheet, technical docs, so you can go buy the thing. But you know, especially technical buyers, engineering buyers, they want to know what they're going to get, you know, before they hit the button and say, buy now.
So they're using Forge, just to allow a potential buyer to come in, look at the piece of equipment, take it apart, say, yeah, you know, is this what I want? This is going to do the trick for me. Hey, maybe I want to take a measurement. Just bang, bang, bang, no big deal. They have thousands and thousands and thousands of bottles of electronics-related equipment up on their website. Am I up again, or back to you?
STEVEN: No, it's back to me again, Jim. OK, so we keep having to look to make sure this thing's working. So 8, O, take-- ah, there we go.
So just following on from the theme of the previous demo that I showed you, we do now have an app store for BIM 360. So if you go to App Store at AutoDesk.com click on BIM 360. And actually, if you click Show All, it will show you all of the apps there. So we have versions of those files. So where are-- the integration files are in there somewhere.
But we now have a lot of partners writing applications, as well. And actually, we're going a step further. So when you go into BIM 360, we're actually having-- integrated into the actual BIM 360 web application, you will have a view of a select set of these applications you can install directly from BIM 360. It's literally just click and play within the BIM 360 web application.
But as an alternative, you can-- you know, this may be, for example, a desktop application that uploads data to BIM 360. So some of it may not be appropriate to integrate into BIM 360. But if you come to the app store, there's a very large selection. We're actually on to two pages now, Jim.
JIM: We're ripping, man.
STEVEN: Yeah, so we've got-- how many apps have we got? Huge number.
JIM: For BIM 360?
STEVEN: Yeah. And so here, we have the app here, which was the Google Drive integration. And that's free, so you can just take it, sign in using your AutoDesk ID, and it'll just open the link. And then all you have to do is-- actually, you need to get your admin to authorize the app within 360. But once you've done that, you're just good to go. Or you can use it with BIM 360 Team. And there's no activation required.
So moving on to another easy example, this is the National Building Standard from the UK. This is an organization who basically own all the building standards in the country. And you know, if any of you have ever had to deal with standards for buildings, the really old way of doing it is you would basically have a huge cupboard full of ring binders. And if you wanted to know the standards that applied to, I don't know, for plumbing, or the timber, or the pre-cast concretes, the support, you have to go and, you know, find that binder, you know, search through the binders, open it up in the right place from the index system, and there, you have your printed standards.
You know, then we moved on a little bit from that. And instead of it being a big bookcase full of binders, it was a folder that had huge numbers of PDFs in them. Now the NBS have created this. And I'm not sure, actually, Jim, is it still in beta, or is it actually fully released now?
It's It's released.
STEVEN: Yeah. And the idea here, anyway, is I can bring my model in from Revit. It. And then I can assert-- as the, as you know, as my job is to associate the standards with that building, I go through and I associate my standards with every component. And once I've done that, now my Query tool is, I click on this roof covering, for example. It immediately gives me some quantity takeoff information. So it's telling me the area, the volume, the number of panels. But it also tells me the standard that applies to that particular component.
And I can, you know, search in another one here. If I'm interested in, for example, you know, if I want to look at the driven precast concrete, what that standard applies to, I can click on that. This is the other way around, going from the standards to the components. And it's showing me all of the piles in the building that that applies to.
Similarly, if there's something that doesn't have a standard in the process of applying the standards here, if I just click on an object, associate it with a clause-- this is a library of all the standards that NBS own-- and you know, I know that's a timber component. So I can search for, say, you know, timber framing system. And I can just click that associate button. And then that standard is then, with this model, permanently associated.
So I've then now have this permanent record of all the standards associated with this building in an incredibly easy to query way. I can query if I have a standard. I can visually query. And of course, I can do all the standard viewer functionality. So I know architects hate me doing this, exploding buildings. But you can.
JIM: So 10 years ago, NBS had a plug-in for AutoCAD where the person using AutoCAD would assign the standards, and you'd extract the data. And then last year, they did this Revit plug-in. So the guy using Revit could apply the standards and extract the information. And now, it's like anybody with access to the web page can manage the standards, can see the standards, can add the standards, without having a desktop at all.
The other really sexy part that I learned the class before this was that model could be inside BIM 360, and it's immediately available. You just sign in as a BIM 360 user, and bang, there it is. No uploading, no model derivative. It's just there, a thing of beauty.
STEVEN: I didn't know that.
JIM: Oh, it was slick.
STEVEN: That's cool and useful.
JIM: That is very cool.
STEVEN: Yeah. OK, over to you, then, Jim.
JIM: And done by some Brits, just like you.
STEVEN: How did the presentation, go, because they're from Newcastle. They've got really strong accents.
JIM: They're from Newcastle. Yeah, but aren't you Welsh? Don't you have really--
STEVEN: Are the NBS guys in the room? I must be careful what I say about Jordy's.
JIM: OK, just-- here is a huge model. This is a PDMS from a Viva model. This thing is monstrous. When you go in, you can kind of get an appreciation for how detailed this model is. This thing is a monster.
STEVEN: (WHISPERING) By the way, Jim, six minutes.
JIM: How are we doing? Six minutes? Well, you know, maybe we overrun. And the key [INAUDIBLE] here is you wanted these things like material status, fabrication status-- I don't know, fabrication status issued. You know, here's all the issued materials. How about the different systems? You know, show me the [? sin ?] gas system. How about the different priorities? Just bang, bang, bang, really big model, no big deal, PDMS. Could be PDS, Smart Plant, Plant 3D, kind of whatever.
Here's another example, 2D, 3D, PNID hooked up to a model. So I think this is a heat exchanger. There's the heat exchanger. Maybe I want to go see the other heat exchanger. We'll take me over to that tank.
Or I'll do something real fun. We got any plank guys in the room? There's a loop-- show me another loop. Your monitor IOT. So let's turn on IOT. And this should start working. I am now, from an external data source, driving the model.
And again, maybe it's about, you know, what's the status of the different pieces of equipment? Or maybe it's a temperature thing, or just the matic to give some insights into what's happening with this plant. The interesting part is, this demo here was built by one of our sales engineers, not a real engineer, not a real software engineer. OK. Do I keep going, or is it back to you?
STEVEN: We're basically done now, Jim.
JIM: We're basically done?
STEVEN: Unless you got one more you want to show.
JIM: You know, I--
STEVEN: If you want people to ask questions, you have to stop now. But otherwise, you can show one more.
JIM: Oh, there's just so many fun examples to show. Yeah, I can do this one.
STEVEN: You can do that one.
JIM: Yeah. So one of our guys, Augusto, was helping the local community he lives in outside of Sao Paulo, Brazil. They were building an Innovation Center. And the, you know, town fathers said, hey, we want to put it up on the website so we can convince the local community that this is going to be a cool place. Plus we're going to get some people who want to build new businesses to get engaged.
So they said, hey, can you help us build a website. And he says, yeah, I can do that. So a friend of his is a Revit user. So the Revit guy sat down and built a model of this innovation space in about four or five hours.
And then Augusto sat down in four hours, and took the innovation space and put it up on a website, where we're doing these-- you know, here's the co-working space. Here's the auditorium. You know, here's where you go hang out and have lunch. And I don't speak Portuguese, so I'm actually not too good at all of this.
STEVEN: So you don't speak Dutch or Portuguese.
JIM: No, I don't.
STEVEN: Wow.
JIM: I hate to say it, I'm one of these dumb guys who always speaks English.
STEVEN: You're bilingually illiterate, aren't you?
JIM: Yeah, I am.
STEVEN: Yeah. So we have to stop now, Jim, because these 30 minute sessions is a very short handover time. So, you know, to respect the next speaker, we can't overrun. However, if people have questions, we can hang around outside the room for a few minutes afterwards. And also you can find us up in the Forge Answer Bar, either later today in the Forge Village or in the expo hall, join V the rest of the week. So thank you very much. And I hope you saw something that got your creative juices flowing.
[APPLAUSE]