Apple Inc. v. Samsung Electronics Co. Ltd. et al

Filing 933

Declaration of Bogue in Support of #930 Administrative Motion to File Under Seal Samsung's Motion for Summary Judgment filed bySamsung Electronics Co. Ltd.. (Attachments: #1 Exhibit 1, #2 Exhibit 2, #3 Exhibit 3, #4 Exhibit 4, #5 Exhibit 5)(Related document(s) #930 ) (Maroulis, Victoria) (Filed on 5/17/2012)

Download PDF
EXHIBIT 1 MITSUBISHI ELECTRIC RESEARCH LABORATORIES http://www.mefl.com DiamondTouch SDK: Support for Multi-User, Multi-Touch Applications Alan Esenther, Cliff Forlines, Kathy Ryall, Sam Shipman TR2002-48 November 2002 Abstract DiamondTouch is a multi-touch input technology that supports multiple, simultaneous users; it can distinguish who is touching where. We present the DiamondTouch SDK; it provides support for the development of applications that utilize DiamondTouch s capabilities to implement computer-supported collaboration and rich input modalities (such as gestures). Our first demo illustrates the basic utilities and functionality of our system. Our second demo, a multi-user map application, highlights DiamondTouch s ability to sup-port input from multiple, simultaneous users and exploits Di-amondTouch s ability to identify the owner of each touch. Our third demo illustrates DiamondTouch s ability to run with existing applications by providing a mouse emulation mode. DiamondTouch is well-suited to shared-display applications. It is suitable for front-projected video of the computer display, which facilitates direct manipulation of user interface elements and provides a shared focus of attention for collab-orating users. Possible applications include command-and-control command posts, control rooms, business or technical meetings, and a variety of casual applications in the home, at schools, and in retail settings. CSCW 2002 Demo This work may not be copied or reproduced in whole or in part for any commercial purpose. Permission to copy in whole or in part without payment of fee is granted for nonprofit educational and research purposes provided that all such whole or partial copies include the following: a notice that such copying is by permission of Mitsubishi Electric Research Laboratories, Inc.; an aclcnowledgment of the authors and individual contributions to the work; and all applicable portions of the copyright notice. Copying, reproduction, or republishing for any other purpose shall require a license with payment of fee to Mitsubishi Electric Research Laboratories, Inc. All rights reserved. Copyright @ Mitsubishi Electric Research Laboratories, Inc., 2002 201 Broadway, Cambridge, Massachusetts 02139 SAIqNDCA00035800 SAIqNDCA00035801 DiamondTouch SDK: Support for Multi-User, Multi-Touch Applications Alan Esenther, Cliff Forlines, Kathy Ryall, Sam Shipman Mitsubishi Electric Research Laboratories 201 Broadway Cambridge, MA 02139 {esenther, forlines, ryall, shipman}@merl.com ABSTRACT DiamondTouch [1] is a multi-touch input technology that supports multiple, simultaneous users; it can distinguish who is touching where. We present the DiamondTouch SDK; it provides support for the development of applications that utilize DiamondTouch’s capabilities to implement computersupported collaboration and rich input modalities (such as gestures). Our first demo illustrates the basic utilities and functionality of our system. Our second demo, a multi-user map application, highlights DiamondTouch’s ability to support input from multiple, simultaneous users and exploits DiamondTouch’s ability to identify the owner of each touch. Our third demo illustrates DiamondTouch’s ability to run with existing applications by providing a mouse emulation mode. DiamondTouch is well-suited to shared-display applications. It is suitable for front-projected video of the computer display, which facilitates direct manipulation of user interface elements and provides a shared focus of attention for collaborating users. Possible applications include command-andcontrol command posts, control rooms, business or technical meetings, and a variety of casual applications in the home, at schools, and in retail settings. INTRODUCTION DiamondTouch is a multi-user, multi-touch technology first presented at UIST 2001 [1]. It allows multiple people to simultaneously interact with a surface; it can distinguish who is touching where, and also ifa person is touching in multiple locations. DiamondTouch is currently being used on a tabletop display with front projection, although it can be layered onto other surfaces. This type of input device is particularly relevant for singledisplay groupware applications [4].s DiamondTouch enables 1 We and others prefer the term shared-display groupware to indicate that multiple shared displays may be used, but to the authors’ knowledge this term has not yet been popularized. Figure 1" Prototypical DiamondTouch setup: front-projection onto a tabletop surface. a group of people to interact with a surface without interfering with each other. Furthermore, objects placed on the surface do not interfere with DiamondTouch operation. DiamondTouch uses an array of antennas embedded into a surface, with each antenna transmitting a unique signal. Each user has their own receiver, generally attached to their chair. When a person touches the surface, energy from nearby antennas is coupled through the user to their receiver. Using this mechanism, the system determines who is touching where. For a more detailed discussion of DiamondTouch and comparison to other input devices see Dietz and Leigh [1]. Figure 1 illustrates a typical DiamondTouch setup. DIAMONDTOUCH SDK The DiamondTouch surface consists of overlapping vertical and horizontal arrays of antennas. The hardware periodically produces frames of data containing scalar values that measure the proximity of the user’s finger(s) to each antenna. The DiamondTouch Library (dtlib) reads these data frames SAMNDCA00035802 from the DiamondTouch device and affords access to the raw data and to various abstractions and interpretations of that data, such as the location of the maximum proximity (the touch point) and the bounding box of the area touched. Other abstractions are possible and are the subject of ongoing research. A weighted interpolation algorithm increases the effective resolution to 2500 x 1500. Median filtering, hysteresis, and adaptive touch thresholding are used to improve robustness in the face of RF interference and other environmental variables. The SDK consists of dtlib (ANSI C), jdt (a Java interface layer), merldt (a Windows application providing mouse emulation, projector calibration, and various diagnostic displays), and a simple multi-user application example. RELEVANCE TO CSCW Computer-assisted collaborative environments allow multiple users to work together to solve difficult problems. However, simply scaling the techniques that work well for a single user creates awkward systems. In a collaborative environment, sharing a single mouse is very awkward. Providing multiple mice only makes matters worse - it is extremely difficult to keep track of what each user in the group is doing. Touch screen technologies appeared promising since a glance reveals each users activities. However, touch technologies are usually restricted to detecting a single touch point. They also tend to be somewhat fragile. DiamondTouch is unique hardware that provides multi-touch input; it is a touch technology specifically designed for a multi-user environment. Enabling input from multiple participants is important for computer-supported collaboration and access to this hardware will facilitate exploration in these areas. Furthermore, the DiamondTouch technology is still a research prototype; MERL relies on outside collaborators (in this case academic institutions) for feedback on and development of the technology and its applications. DiamondTouch has been successfully used by the University of Maryland in conjunction with MID [3] in applications such as KidPad [5] and SearchKids [6]. In the near future MERL will be distributing DiamondTouch to a number of other universities. DEMO APPLICATIONS Our first demonstration illustrates the basic utilities and functionality of DiamondTouch and its SDK. The basic display, shown in Figure 2, provides low-level information about each user’s interactions with the DiamondTouch surface. A different color is used for each user. In this example, each user is touching the table with two fingers; the bar graph shows the signal strength for each user’s touch. The outlined rectangles indicate the bounding box of the area touched by each user. Note that the boxes overlap the users’ touches are tracked independently by DiamondTouch, and do not interfere with each other. Other diagnostic information (touch thresholds, calibration, touch points, etc.) is included in the display. Figure 2: The display from merldt provides lowlevel information about DiamondTouch and users’ interactions with it. In our second demo we present a prototype multi-user map application. In this application the display, which is projected onto a DiamondTouch surface, contains a satellite map image. Different views can be overlayed onto the map. One lens, for example, provides a street map view of the area in question. Another lens provides an annotated view highlighting areas of interest (e.g., ice cream parlors, museums and other attractions). A third view displays traffic information. Each user selects his or her own view, which may be the same as or different from other users’ views. As each user touches the DiamondTouch display his or her lens appears, revealing the appropriate customized information. Figure 3 shows two users interacting with the application. More generally, any layered information can be displayed in this application. In Figure 4 we see a sample session with our application in which three people are interacting with a nautical data set. In this sample demonstration application, for example, four ’layers’ of information are provided: satellite imagery, depth charts, topographic data, and street maps. The users can interact with the application in parallel, and each has his own customized view of the data. Figure 5 provides the details of the application by showing a sample screen shot (contents of the display only). In the bottom right corner of the display we see a thumbnail view of the entire data (map) set. Users navigate the larger map SAIqNDCA00035803 Figure 3: Two users interacting with a sample DiamondTouch application. Figure 5: DTMap: A screen shot to illustrate the application details. gle in the center provides depth information about the water near this island. The rectangle in the upper right provides a street map view. Further, because it knows who is touching where, DiamondTouch can provide functionality and privileges to individual users. For example, each user can control not only the contents of his or her lens, but also its shape and size. The goal of this demo is to highlight DiamondTouch’s capabilities; we hope other users will contribute to developing content for DiamondTouch. Figure 4: An overview shot of DiamondTouch running DTMap, a multi-user, layered information, map application. display by touching the image directly, or using the compass buttons to move the currently selected region, which is shown by a red rectangle. That region is then shown in detail on the work surface. Users may select which ’view’ will serve as the background image from any of the available views; in this case the satellite view is used as the background image for the work surface. The toggle button shows the currently selected background. The region of interest and the background image are globally shared resources any user may interact with them, and all users have the same ’state’. This aspect of the application is similar to single-user applications. A novel aspect of our application is that each user interacts with his or her own view of the data. The screen shot in Figure 5 is taken from the interaction in Figure 4. The oval on the left reveals topographic information. The rounded rectan- Our third demo illustrates the mouse emulation capabilities of DiamondTouch. There are two aspects to this demo. First, this capability allows traditional software to be used with DiamondTouch. We currently have several mouse modes (onetouch, two-touch, etc) and are experimenting to determine how best to implement a fully-functioning mouse with DiamondTouch. Our mouse emulator works with traditional software. Second, under Windows the DiamondTouch SDK can generate ’augmented mouse events’ that contain the user ID info in an extra field. In this manner C++ Windows code using a Win32 API call can get the ID information for each mouse event as it is processed by the application. The application then needs to store the state for the different users, and also some mouse information. We have a sample drawing program (a modified MFC demo) to illustrate the use of ’augmented mouse events’ for writing applications for DiamondTouch. The authors would like to thank other members of the DiamondTouch team at MERL: Shane Booth, Paul Dietz, Darren Leigh, Joe Marks, Kent Wittenburg and Bill Yerazunis. SAMNDCA00035804 REFERENCES 1. Dietz, P. and Leigh, D. DiamondTouch: A Multi-User Touch Technology. In Proc. of UIST "01, ACM, NY, 2001, pp. 219 226. 2. Bier, et al. Magic Lenses. Toolglass and Magic Lenses: The See-Through Interface. In Proc. ACM SIGGRAPH Conference 1993, ACM, NY, 1993, pp 73 8. 3. Hourcade, J. P. and Bederson, B. Architecture and Implementation of a Java Package for Multiple Input Devices (MID). Tech Report HCIL 9~08, Computer Science Dept., Univ. of Maryland, College Park, MD, 1999. 4. Smart, J. and Bederson, B.B. and Drain, A. Single Display Groupware: A Model for Co-present Collaboration. InProc. of CHI "99, ACM, NY, 1999, pp pp. 286 293. 5. Juan-Pablo Hourcade et. al. KidPad: Collaborative Storytelling Tool for Children. In Extended Abstracts CHI 2002, ACM, NY, 2002. 6. Juan-Pablo Hourcade et. al. SearchKids: A Digital Library Interface for Young Children. In Extended Abstracts CH12002, ACM, NY, 2002. SAMNDCA00035805

Disclaimer: Justia Dockets & Filings provides public litigation records from the federal appellate and district courts. These filings and docket sheets should not be considered findings of fact or liability, nor do they necessarily reflect the view of Justia.


Why Is My Information Online?