HTML
-
This week I've spent quite a bit of time looking into future API features. For one of them I needed to create a progress meter, and thought to myself "why not create one in HTML5?" And as it's nothing specific to a future product release, I decided to go ahead and post it now. For context, here's the way AutoCAD's standard progress meter currently looks, displayed using the code from this previous post: So why would you go head and create your own progress meter? A few different reasons come to mind… yes, AutoCAD has its own, but perhaps you…
-
My esteemed colleagues over in the ADN team, Philippe and Balaji, have been working their magic, creating samples to show how to make use of JavaScript-based physics engines within Autodesk software. They've inspired me to have a go myself. Philippe's sample – which carried on from his preliminary research into JavaScript-based physics engines – shows how you can integrate ammo.js with the View & Data API to add some gravity to an A360 model. Really fun stuff! [Side note: I love that ammo.js stands for "Avoid Making My Own physics engine" as well as being an emscripten port of the…
-
Now that we've introduced the series and seen how to add some introductory text, theme music and a field of stars, it's time for the Star Wars logo. The initial blue text The theme music The star field The disappearing Star Wars logo The crawling text The logo came, once again, from the HTML opening crawl, which embeds some SVG content representing it. I copied this into a standalone SVG text file, ran it through a web-service to translate it to DXF and then opened that inside AutoCAD. The outlines of the letters (or groups of letters) were continuous polylines…
-
After introducing this series in the last post, today we're going to address the first 3 items on our TODO list: The initial blue text The theme music The star field The disappearing Star Wars logo The crawling text The following two items are fairly significant, in their own right, so they'll each take a post of their own to complete. Oh, and I've thrown in a surprise item 6, which I'll unveil when we implement the crawling text. Before we dive in, it's important to make some points about the code: because this is mainly just a bit of…
-
Thank you for your readership and support during the last year. It's really the interactions with this blog's readers that motivate me to keep posting after 8½ years. As a small gesture of appreciation, here's a simple HTML card that serves up random posts from this blog's first 1,220 (or so). If you're not interested by the post it shows when it loads, just click on the "Merry Christmas!" banner until you find one you feel like reading. The provided link will launch the post in a separate browser tab. In case you're interested in the implementation details, the shadow…
-
I mentioned some weeks ago that I was looking to automate the validation of a bunch of source files I have on disk before uploading them to GitHub. I decided to get started on that, this week, to see what was involved. As mentioned in the previous post, I wanted to programmatically query posts from Typepad, extract any embedded code from them and compare it with what I had on disk, to see which files were already correct and which needed to be created or removed. The first step was to choose a language. The fact this is really an…
-
In advance of next week's AU, our Cloud Platforms team has released a new version of A360. The key feature of this update is the ability to share and embed A360 models. I uploaded a new model to my A360 account – it works with existing models, too, of course, but it's nice to show something different – and can already see the new "Share" button at the bottom of the model's description in the activity feed. (The button is also available at the top of the viewer screen and as an icon in the data view, in case.) When…
-
It seems like I've been living in JavaScript land (and no, I deliberately didn't say "hell" – it's actually been fun 🙂 for the last few weeks, between one thing or another. But I think I've finally put the finishing touches on the last of the JavaScript API samples I've prepared for AU 2014. This sample was inspired by Jim Awe – an old friend and colleague – who is working on something similar for another platform. So I can't take any credit for the way it works, just for the plumbing it took to make it work with AutoCAD.…
-
One of the pieces of feedback I received from internal folk on the prototype VR app I developed for Google Cardboard and then added voice recognition to was "it'd be really cool to add ViewCube-like navigation commands". Which basically meant adding "front", "back", "left", "right", "top" & "bottom" to the list of voice commands recognised by annyang and have them hooked up to a function that changes the view accordingly. The main complication being the fact that some models come in with "Z up" despite the majority having "Y up". Hopefully none will come in with "X up", an eventuality…
-
I nearly named this post "Creating a stereoscopic viewer for Google Cardboard using the Autodesk 360 viewer – Part 4", leading on from the series introduction and then parts 1, 2 & 3. But then I decided this topic deserved it's very own title. 🙂 The seed for this post was sown during the VR Hackathon, at the beginning of which I had an inspiring chat with Theo Armour. Not only does Theo have a name worthy of a gladiator – and it turns out there is a list of gladiator names on the Internet, just one more reason I…