X3D Design Patterns
Submitted by vmarchetti on Thu, 2019-04-04 07:38
This blog post will present three techniques to improve 3D visualizations of mechanical parts published on the web. Web users expect standard and intuitive user interaction patterns without a steep learning curve or need a User’s Manual to read and use the links on that page. Standard web content practices give users familiar patterns for hyperlinks, for text search features, and audiovisual playback; this article is a start at establishing conventions for interactive 3D content delivered on a web page. The examples used here are of mechanical parts and assemblies, but the techniques may be applied to other type of 3D content such as immersive scenes or data visualizations. An inspiration for this work is the identification of software design patterns as described in the influential book Design Patterns: Elements of Reusable Object-Oriented Software – the Gang of Four Design Patterns book. As in the case of software design patterns, the patterns presented here do not represent an original concept heretofore unseen in computer science; rather the goal is to identify and name a pattern or technique; isolate its use in a simple but real example, and suggest guidelines for how it is to be used. The patterns are independent of the execution or implementation method but are implemented here using X3D models rendered using JavaScript based X3D viewers X_ITE and X3DOM in HTML5 web pages and rendered using WebGL. X3D is an ISO standard format for interactive 3D scene graphs, with freely available specification documents, and viewable with multiple X3D viewers on many platforms including within web pages on the common web browsers.