EUROGRAPHICS Workshop on Sketch-Based Interfaces and Modeling (2008) C. Alvarado and M.- P. Cani (Editors) Using Sketches and Retrieval to Create LEGO Models Tiago Santos Alfredo Ferreira Filipe Dias Manuel J. Fonseca Department of Computer Science and Engineering INESC-ID/IST/Technical University of Lisbon R. Alves Redol, 9, 1000-029 Lisboa, Portugal Abstract In this paper we describe a system to create LEGO R models using sketches. Although there are a few applications to create LEGO models, they are difficult to use, mainly due to the searching and manipulation mechanisms that they (do not) offer. Here, we propose a sketch based approach, where users can easily insert parts, by specifying their dimensions through sketches and the system suggests a list of possible parts. To help with the modeling and the manipulation we also developed a constraint based mechanism, which keeps parts connected, performs snap- to-grid and detects collisions. Experimental tests with users revealed that our approach is easier and faster to use than a conventional application, such as LeoCAD. Categories and Subject Descriptors (according to ACM CCS): H.3.3 [Information Storage and Retrieval]: Informa- tion Search and Retrieval H.5.2 [Information Interfaces and Presentation]: User Interfaces 1. Introduction The construction of LEGO models is still in the memories and in the hobbies of many people around the world. Nowa- days, besides the construction of real models, we can also build virtual models using specific LEGO applications, such as, the MLCAD [Lac], LeoCAD [leo] and LEGO Digital Designer R [ldd]. Although these tools allow the creation of different types of LEGO constructions, they fail to mimic the physical in- teraction between parts, like collisions and connections. Ad- ditionally, they do not provide any efficient search/retrieval mechanisms to help users find parts in large collections. To overcome these problems, we developed a system, which combines calligraphic interaction, a constraint solver and a retrieval mechanism. Our solution uses sketches to specify the dimensions of the desired part, to control the camera and to perform actions on existing elements. The retrieval component uses the dimension or dimen- sions of the part, specified through sketches, to perform a search into the database. Results that satisfy the specifica- tions are presented to users in a suggestion list (see list on the right of Figure 1). After selecting the desired part from the list, users can manipulate it as they do with real parts. This is possible due to our constraint solver and snap-to-grid Figure 1: General overview of the LSketchIt application, showing the suggestion list on right and the color palette on the bottom. mechanisms. Our system also detects if parts are above oth- ers, and in this case it creates connections. Additionally, it detects collisions and moves parts to the top of others, when users force the collision. This collision and constrain mod- ules also know how to deal with connected parts, moving them all together. Moreover, it has the concept of gravity, preventing parts to remain in the air when users delete blocks that are below them, to mimic real constructions. Finally, we c The Eurographics Association 2008.