Designing Non-Rectangular Skin-able GUIs.

Size: px
Start display at page:

Download "Designing Non-Rectangular Skin-able GUIs."

Transcription

1 Designing Non-Rectangular Skin-able GUIs. M.Tsegaye Department of Computer Science Rhodes University Grahamstown, 6140, South Africa Phone: +27 (46) Fax: +27 (46) Abstract The majority of GUI applications in use today on popular desktops use a simple rectangular window with components that paint themselves using unattractive solid colours. These user interfaces are not always suitable for specialized applications that are used for representing real world objects such as digital cameras and portable media players. This paper presents the process involved in creating non rectangular skin-able user interfaces that use realistic textures to paint themselves. Index Terms skin-able application, layered windows, window skinning, non rectangular windows, user interface design 1.0 Introduction Traditional applications on most GUI systems use rectangular windows as the primary user interface regardless of the type of application the user interface was designed for. Most of these applications try to represent real world three dimensional objects such as audio layers, digital cameras and telephones with rectangular windows that have menu bars, scrollbars and other common 2D GUI controls. This type of interface, although simple to use, is not always intuitive. It requires a long time to get used to. The use of GUIs that utilise mostly rectangular but skin-able windows has increased with the introduction of powerful PC hardware such as the GPUs from ATI and NVIDIA. The popular Microsoft Windows platform now has skin-able user interface components (introduced in Windows XP). Microsoft [1] claims that this new more attractive interface increases user productivity. Apple s Aqua interface [2], introduced much earlier than Windows XP s, uses a similar approach. It has GUI components that are very attractive and gentle on the eye. Wired news [3] gives an account of the skin-able user interface revolution. It lists Winamp, a popular skin-able audio player, as the application that started the skinning phenomenon. Most UNIX window managers such as Blackbox and Enlightenment have always offered skin-ability to users. Commercial products that allow the creation of non rectangular and rectangular skin-able user interfaces for the Microsoft Windows platform exist. One such product is WindowBlinds [5]. Window managers such as KDE on UNIX also make available an API usable under an open source license. This paper presents an approach that can be used for creating non-rectangular and rectangular skin-able user interfaces in much the same way as they are implemented in commercial systems. The following steps are followed: Selection of an appropriate skin script format to allow the definition of UI components. Creation of a library for dynamically loading the above skin script at runtime. Design and creation of UI controls which are aware of being skinned. Design and creation of skins for these controls. The results presented use the Microsoft Windows API but the ideas can be applied on other platforms using a platform specific API. Appendix A presents a summary of the Microsoft Windows API relevant to skin-able user interface development. 2.0 Selecting a Skin Definition Script Format A skin definition script enables users to define the UI for an application at runtime instead of at compile time as done in traditional applications. Any time during the life of the application the script file can be loaded by the application, parsed, interpreted and the user interface updated as defined by script. 2.1 File Formats Various file formats can be used for the script e.g. a simple text file with an application specific layout or a binary format. A data definition format such as XML would be the most logical format to use because it is an industry standard. Numerous libraries exist for parsing it and any XML editing application can be used for editing the script. XML also shows the hierarchical relationship of components clearly. UIs usually have a hierarchical relationship e.g. most applications have a parent frame with child components that can be frames themselves, and those child frames can have children. 2.2 UI Definition Format The script needs to define every component of the user interface. Since XML is selected as the file format for the script, the skin definition format can be as verbose as necessary to make it easier for human editors to understand without making it any more difficult to parse. Here is how a simple skin definition with no components would look like: <?xml version = 1.0?> <My_Interface> </My_Interface>

2 2.2.1 Texture Entries Skinning makes extensive use of textures. These textures can use up a lot of memory if not managed well. The script entry for defining textures should act as a pointer to an area where textures are located. Here is the texture definition entry that has been selected: <?xml version = 1.0?> <My_Interface> <bitmap name= skin.png id= 0 transparency= #ff00ff /> </My_Interface> The texture entry, named bitmap, defines the location of a texture resource skin.png, an id for it and a colour on the texture to be considered as transparent, The PNG file format supports transparency natively so the application can extract the value from the texture which makes the transparency entry redundant. It is specified here for clarity. In cases where texture formats such as the BMP format, which does not handle transparency well, are used it is mandatory. Multiple entries for textures, each with different ids, can be specified Frame entries The next set of entries in the skin definition script should be those that define the various controls on the UI. Just about every UI has a frame. The following frame definition is used: <?xml version = 1.0?> <My_Interface> <bitmap name= skin.png id= 0 transparency= #ff00ff /> <bitmap name= skin2.png id= 1 transparency= #ff00ff /> <window name= test1 main= yes > <settings> <background left= 10 top= 10 width= 450 height= 150 bitmapid= 0 /> </settings> <window name= child1 child= yes > <settings> <background left- 10 top= 100 width= 250 height= 350 bitmapid= 1 /> </settings> </window> </window> <window name= test2 > <settings> <background left= 10 top= 10 width= 450 height= 150 /> <color name= background value= #ff0000 /> </settings> </window> </My_Interface> The XML element window represents a frame. The script fragment above shows two top level windows and one child window. The first is designated as the main window. The texture region that will be used to paint this frame s background is defined by the background entry, which has a pointer to a texture, bitmap entry, whose id is 0. Although the background defined is rectangular, the parts of the texture in this region that have the transparency colour will be treated as such. The second top level window named test2 does not use a texture for its background. It is rectangular and has a red background. In this way the script is flexible enough to define frames of any shape. A child frame would be nested within another frame as shown for the window element named child1. This child is not a top level child window (popup window), because it has an entry that says child= yes Additional Controls Script entries for other controls can be defined depending on the look of the particular control. Here is what an entry for a button would look like: <button name="button1"> <skin name="normal" left="105" top="59" width="19" height="29" bitmapid="0"/> <skin name="hover" left="104" top="99" width="20" height="29" bitmapid="0"/> <skin name="mousedown" left="104"top="139" width="20" height="28" bitmapid="0"/> <skin name="disabled" left="70" top="41" width="19" height="29" bitmapid="0"/> </button> The button script entry defines texture regions to be used for painting the button during its various states with pointers to appropriate textures. Many more controls such as sliders, list boxes, tree controls and animations can be defined in this way. An entry such as this can be embedded in a frame script entry where that control will be contained. 3.0 Creating a Skin Script Loading Library The skin loading library should be able to parse the script file and create the various controls defined within it. It should also manage texture resources. 3.1 The Skin Loader In an object oriented development environment the skin loader can be represented as an object. A new object can be instantiated for each different skin definition script. In this way the process of loading/reloading a skin at runtime consists of deleting a skin loader object if it already exists and creating a new instance for a newly specified script. This approach separates the user interface from the main application. The various controls can be assigned names that are understood by the application which interacts with the skin loader object to access handles to them. When the controls generate events, these can be routed to the application by the skin loader object. The skin loader should scan a specified location for skin definition scripts and keep a list of them. It should also present some sort of interface to allow users to switch skins, The skin switching interface is necessary only for applications that utilise multiple skins suited to different user tastes. Another function of the skin loader is to keep a list of textures that are defined by the currently loaded skin definition script. It should make appropriate use of available texture loading APIs.

3 Proper parsing of skin files and error recovery is essential. Errors can occur in many places. The first is in the syntactic structure of the XML script. This is usually handled by the XML parser. Errors should also be detected by the application as values are extracted from the various XML elements. Appropriate feedback should be given to users during the process of loading a skin definition script. 4.0 Designing Skin-able UI Controls This step involves creating controls from scratch or extending the functionality of existing non skin-able GUI components to be skin-able. If a control is represented as a class in an object oriented environment then there needs to be some common ancestor control class from which other controls can be derived. In Microsoft Windows this could be the CWnd MFC class and in KDE it could be the QWidget class. Existing controls such as frames, buttons and text displays in these systems are already designed well and can be extend to be skin-able. 4.1 Painting Controls The paint methods from existing GUI classes are overridden to make them paint themselves using textures, if this functionality is not already present in that class. Rectangular texture coordinates and texture ids obtained from the skin loader are used in the painting process. A transparent blting operation is performed to copy only the opaque regions of the texture to the control s display area. Thus even if the control is rectangular users perceive it as non rectangular since only the opaque areas are seen by them. textures, selection of texture regions and editing of the various parts of the skin definition script. 5.0 Multiple Skin Switcher Demo The test skin switching application shown on Figure 5.0 demonstrates the skin loading library constructed following the steps outlined in the preceding sections. It shows the ease with which the application can change from one form to another. Figure 5.1 shows a skin script editing application that makes the editing of skin scripts easy. 6.0 Conclusion Real world three dimensional objects such as audio players and digital cameras need not be represented using rectangular windows that use solid colours to paint themselves. They can instead use realistic textures for skinning themselves and present an intuitive user interface to users. Applications that have a skin-able, non-rectangular or rectangular user interface can be created by following these steps: Selecting an appropriate skin definition format. Creating a library for dynamically loading skin definition scripts. Creating controls that understand the entries in the scripts and skin themselves. Creating textures and a skin definition scripts to describe the required user interfaces. Figure 5.0 Multiple Skin Changer Demo Application Double buffering should be used for controls that paint themselves very often, to avoid the undesirable effect of screen flicker. 4.2 Skin Awareness by Controls Controls are represented as objects therefore each object should know how to skin itself given an XML element that represents itself. At script loading time the skin loader parses the XML file and creates controls as they are found in the script definition file. It also passes a control s XML element definition to that control. If the XML element passed to a control contains another element representing a control then the former control becomes the parent and the above process is repeated for the latter control. Figure 5.1 Skin Script Editing Environment 4.3 Creating Skins for Controls Once the skin loader engine and the various controls have been created then user interfaces for just about any application can be created. This process requires the use of a software package capable of creating textures for use as skins. GIMP [9] is a powerful open source paint package that can be used for this process. Once a drawing for an interface and its various components has been made by an artist, it can be inspected by interested parties for approval. A skin definition script can then be created. To make the process of creating skin definition scripts easier than having to type it out by hand, it is advisable to construct a development environment that allows loading of

4 Appendix A 1.0 Introduction This appendix presents some of the facilities available on the Win32 platform that enable the development of skinable UI components. 2.0 Painting and Drawing using the Win32 GDI Microsoft Windows is a message based system. Whenever a window owned by an application needs painting due to some event e.g. a user resizing the window or the window being covered by another, it receives messages that tell it to redraw affected areas. 2.1 Device Contexts Traditionally if an application wanted to produce pretty graphics on the screen, it would do so by accessing a graphic device s display memory and modifying it. This would cause changes to be observed on the screen. Window s is a multitasking environment with multiple applications. For the sake of efficient use of the graphic device, the system manages all drawing [7]. Every window has associated with it a GDC (Graphic Device Context). All drawing is directed to this GDC. HDC hdc = GetDC(hWnd); SetPixel(hdc, 10,10,RGB(255,0,0)); ReleaseDC(hWnd,hdc); Figure 2.1: Setting pixel (10, 10) to red on a window referenced by handle hwnd. When a window is created the system will return a handle, hwnd on Figure 2.1, for that window to the application. The application uses this handle to make drawings on the window. For example to change a pixel s colour in a window requires getting a handle to the window s device context, hdc on Figure 2.1, and then drawing to that device context as shown Off Screen Device Contexts Off screen device contexts are device contexts that are represented in memory. These allow drawings to be made in memory rather than on screen as is the case for device contexts associated with windows. There are two main benefits in using off screen DCs. The first is that an application can draw complex drawings only once into a memory DC and whenever it wants to redraw parts of itself it can simply copy the pre-drawn image from an off screen DC to its display DC, speeding up the drawing process. The second is it that it eliminates flicker while drawing which is common when modifying contents of a screen directly Creating off screen Device Contexts An off screen DC is an array of bits. The bitmap it stores must be of the same format as the screen DC if the bitmap is to be displayed correctly on the screen when the off screen DC is copied to the screen DC. An off screen DC is created as follows: HDC screendc = GetDC(hWnd); HDC offscreendc = CreateCompatableDC(screenDC); HBITMAP hbitmap = CreateComaptableBitmap( HBITMAP holdbitmap = SelectObject(offscreenDC,hbitmap); ReleaseDC(hWnd,screenDC); screendc,width,height); The first step is to create an off screen DC compatible to the screen DC then a bitmap of the desired height and width. For the bitmap to be useful it must be selected into the new off screen DC. Once selected Win32 places the restriction that it may not be reselected into any other device context. When a new device is selected into a device context with a SelectObject call the old bitmap previously associated with the dc is returned. The old bitmap is a one by one monochrome bitmap that gets associated to a device context at the time of the CreateCompatableDC call Deleting off screen Device Contexts Device contexts use memory. When the off screen DC is no longer required it and the bitmap selected into it must be freed as shown on Figure The original monochrome bitmap must be re selected into the off screen DC before the DC is deleted. hbitmap = DeleteObject(hbitmap); DeleteDC(offscreenDC); SelectObject(offscreenDC,holdbitmap); Figure Deleting an off screen device context 2.2 Bit to Bit transfer of blocks of bitmaps The contents of a DC can be transferred from one DC to another by using one of the bit block transfer functions rather than doing it manually by using a for loop and using GetPixel and SetPixel which would be a very slow operation. The BitBlt, StretchBlt and TransparentBlt functions implement this functionality in hardware where available. TransparentBlt is especially useful for implementing non rectangular controls in a window. 2.3 Loading images that use the Windows BMP format Applications can use the Win32 LoadImage function for loading bitmaps from a file on disk as follows: HBITMAP bitmap = LoadImage(hInstance,filename, IMAGR_BITMAP, width,height,lr_fromfile); It returns a handle to a bitmap which can be selected into a device context. Once this is done the bitmap can be manipulated as desired. The latest version of the platform SDK contains a new GDI interface, GDIPlus, which allows the loading of different image file formats such as JPG and PNG.

5 3.0 Non Rectangular Windows In win32 there are two methods for creating non-rectangular windows. The first is by using window regions and the second is a more recent addition to the win32 API, using layered windows. 3.1 Window Regions Regions are areas of a window that are defined by an application. There are three types rectangular, elliptical and polygonal. Rectangular regions can be defined as ordinary rectangles or those with rounded edges. Polygonal regions are the most interesting as they allow windows to have any polygonal shape Using Regions A number of region creation functions are provided by the win32 API some of which are listed on Figure All of these return a region handle which can be used for manipulating the region e.g. hit testing to see if a user clicked inside a region or not. HRGN hregion = CreateRectRgn(left,top,right,bottom); Creates a rectangular region hregion = CreateRoundRectRgn(left,top,right,bottom, xedge,yedge); Creates a rectangular region with rounded corners hregion = CreateEllipticRgn(left,top,right,bottom); Creates an elliptical region hregion = CreatePolygonRgn(points,pointCount,fillmode); Creates a polygonal region Figure Some of the win32 region creation functions A large number of operations can be performed on regions such as combining regions to form more complex ones and filling regions with a colour. When no longer required a region must be freed. This is done using the DeleteObject function call which is used to release acquired GDI objects. 3.2 Layered Windows The layered window functionality was introduced into win32 with the release of windows NT5. It introduces two new ways for painting windows. In addition to allowing transparency the API allows windows to have translucency. For a window to make use of layered window functionality it must add the WS_EX_LAYERED style to its extended window styles. This can be done in two ways: at window creation time or at run time as shown on Figure 3.2a. At window creation time hwnd = CreateWindowEx( WS_EX_LAYERED, clasname,windowname, WS_POPUP WS_VISIBLE, left,top, width, height, NULL,NULL, hinstance, NULL); At runtime SetWindowLong(hwnd, GWL_EXSTYLE, GetWindowLong(hwnd, GWL_EXSTYLE) WS_EX_LAYERED); Figure 3.2a Adding the WS_EX_LAYERED style to a window s extended styles Once a window has the WS_EX_LAYERED style added to its extended styles the applications can decide to use the layered window API in two ways. The first will let the application perform all drawing in its window by itself. The system will disable sending of all window paint messages to it. The second method will let the application paint itself in response to the win32 paint messages in the normal way. The first method is more efficient if an application modifies its entire window contents frequently. Figure 3.2b illustrates the two methods. Method 1: Disables normal paint messages and the application is responsible for all drawing at appropriate times. BLENDFUNCTION blend; blend.blendop = AC_SRC_OVER; blend.blendflags = 0; blend.alphaformat = 0; blend.sourceconstantalpha = balpha; UpdateLayeredWindow(hwnd, hscreendc, newscreenpos, newscreensize, offscreendc, imageposonscreendc, colorkey,&blend,ulw_alpha ULW_COLORKEY); Method 2: The Application paints its windows in response to the normal system paint messages. SetLayeredWindowAttributes(hWnd, colorkey, balpha, LWA_COLORKEY LWA_ALPHA); Figure 3.2b the two ways for using the layered window API. The source constant alpha value ranges from 0 for 100% transparent to 255 for opaque. An application, for example, can use this value to implement translucent menus of varying translucency. The colour key value is the value used to implement transparency. All bits in the window with that colour value will be treated as transparent by the system. This enables windows to assume any shape they like.

6 3.3 Which to use, Layered Windows or Regions? The layered window API is the preferred way of implementing applications that make use of non-rectangular windows. It is much more efficient than the region API which has no support for translucency at all. With regions complex shapes have to be defined by supplying individual points. Using layered windows is much simpler, all that is required is a bitmap with transparent areas set using a colour key value usually RGB(255,0,255). To make use of layered windows a more recent version of the platform SDK is required. The region API works on older windows 9x and NT systems and as well as the newer NT5. Regions can be used in both parent and child windows but the layered window API supports only parent windows. This is not a problem since non rectangular child windows can be simulated using the TransparentBlt function. References [1] Microsoft Windows XP Technical Overview, [2] Apple Aqua, [3] Wired GUIs Just Want to Have Fun, [4] BetaNews Skinning the Windows GUI, [5] StarDock WindowBlinds, [6] Microsoft Microsoft User Interface Design and Development, [7] Microsoft Windows GDI, [8] Microsoft Layered Windows, [9] GIMP Gnu Image Manipulation Program,

Custom Component Development Using RenderMonkey SDK. Natalya Tatarchuk 3D Application Research Group ATI Research, Inc

Custom Component Development Using RenderMonkey SDK. Natalya Tatarchuk 3D Application Research Group ATI Research, Inc Custom Component Development Using RenderMonkey SDK Natalya Tatarchuk 3D Application Research Group ATI Research, Inc Overview Motivation Introduction to the SDK SDK Functionality Overview Conclusion 2

More information

Foxit Reader SDK. Programming Guide

Foxit Reader SDK. Programming Guide Foxit Reader SDK For Windows and Linux Programming Guide Revision 1.4 Foxit Software Company 2005.12 Overview Features Tutorials Calling from Different Programming Languages Reference Redistribution Overview

More information

Version 3 Media Guide

Version 3 Media Guide Version 3 Media Guide Contents: Introduction Features Guided Tour/ Screenshots What s New in Version 3.0 FAQ Specifications Introduction WindowFX is a special effects program for Windows that allows users

More information

How to...create a Video VBOX Gauge in Inkscape. So you want to create your own gauge? How about a transparent background for those text elements?

How to...create a Video VBOX Gauge in Inkscape. So you want to create your own gauge? How about a transparent background for those text elements? BASIC GAUGE CREATION The Video VBox setup software is capable of using many different image formats for gauge backgrounds, static images, or logos, including Bitmaps, JPEGs, or PNG s. When the software

More information

Output models Drawing Rasterization Color models

Output models Drawing Rasterization Color models Output models Drawing Rasterization olor models Fall 2004 6.831 UI Design and Implementation 1 Fall 2004 6.831 UI Design and Implementation 2 omponents Graphical objects arranged in a tree with automatic

More information

Chapter 3. Texture mapping. Learning Goals: Assignment Lab 3: Implement a single program, which fulfills the requirements:

Chapter 3. Texture mapping. Learning Goals: Assignment Lab 3: Implement a single program, which fulfills the requirements: Chapter 3 Texture mapping Learning Goals: 1. To understand texture mapping mechanisms in VRT 2. To import external textures and to create new textures 3. To manipulate and interact with textures 4. To

More information

Output in Window Systems and Toolkits

Output in Window Systems and Toolkits Output in Window Systems and Toolkits Recap Low-level graphical output models CRTs, LCDs, and other displays Colors (RGB, HSV) Raster operations (BitBlt) Lines, curves, path model Fonts Affine Transforms

More information

Part 7 More fill styles and an effect

Part 7 More fill styles and an effect Part 7 More fill styles and an effect Introduction To break the uniformity of the grass fill style, this part will continue creating fill styles and adding sheets show how to copy fill styles show how

More information

Technical Overview of the Picasso User Interface Management System

Technical Overview of the Picasso User Interface Management System Technical Overview of the Picasso User Interface Management System Picasso is developed by the OECD Halden Reactor Project at the Institute for Energy Technology, Halden, Norway Picasso is presented on

More information

Using Windows XP Visual Styles

Using Windows XP Visual Styles Using Microsoft Windows XP, you can now define the visual style or appearance of controls and windows from simple colors to textures and shapes. You can control each defined part of a control as well as

More information

PSD to Mobile UI Tutorial

PSD to Mobile UI Tutorial PSD to Mobile UI Tutorial Contents Planning for design... 4 Decide the support devices for the application... 4 Target Device for design... 4 Import Asset package... 5 Basic Setting... 5 Preparation for

More information

CS 160: Lecture 10. Professor John Canny Spring 2004 Feb 25 2/25/2004 1

CS 160: Lecture 10. Professor John Canny Spring 2004 Feb 25 2/25/2004 1 CS 160: Lecture 10 Professor John Canny Spring 2004 Feb 25 2/25/2004 1 Administrivia In-class midterm on Friday * Closed book (no calcs or laptops) * Material up to last Friday Lo-Fi Prototype assignment

More information

Dave s Phenomenal Maya Cheat Sheet The 7 Default Menus By Dave

Dave s Phenomenal Maya Cheat Sheet The 7 Default Menus By Dave Dave s Phenomenal Maya Cheat Sheet The 7 Default Menus By Dave Menu Set Hot Keys F2 F3 F4 F5 Animation Modeling Dynamics Rendering Transformation / Manipulator Hot Keys Q W E R T Y Select Tool Move Tool

More information

Advanced High Graphics

Advanced High Graphics VISUAL MEDIA FILE TYPES JPG/JPEG: (Joint photographic expert group) The JPEG is one of the most common raster file formats. It s a format often used by digital cameras as it was designed primarily for

More information

III-6Exporting Graphics (Windows)

III-6Exporting Graphics (Windows) Chapter III-6 III-6Exporting Graphics (Windows) Overview... 96 Metafile Formats... 96 BMP Format... 97 PDF Format... 97 Blurry Images in PDF... 97 Encapsulated PostScript (EPS) Format... 97 SVG Format...

More information

Rendering Grass with Instancing in DirectX* 10

Rendering Grass with Instancing in DirectX* 10 Rendering Grass with Instancing in DirectX* 10 By Anu Kalra Because of the geometric complexity, rendering realistic grass in real-time is difficult, especially on consumer graphics hardware. This article

More information

Computer Graphics. Shadows

Computer Graphics. Shadows Computer Graphics Lecture 10 Shadows Taku Komura Today Shadows Overview Projective shadows Shadow texture Shadow volume Shadow map Soft shadows Why Shadows? Shadows tell us about the relative locations

More information

UI Elements. If you are not working in 2D mode, you need to change the texture type to Sprite (2D and UI)

UI Elements. If you are not working in 2D mode, you need to change the texture type to Sprite (2D and UI) UI Elements 1 2D Sprites If you are not working in 2D mode, you need to change the texture type to Sprite (2D and UI) Change Sprite Mode based on how many images are contained in your texture If you are

More information

PART TWO Designing The Energy Drink Can Label

PART TWO Designing The Energy Drink Can Label PART TWO Designing The Energy Drink Can Label Part two of the design process involves the creating the label for the energy drink can with vector graphic techniques using Adobe Illustrator. While the creation

More information

Merits of QT for developing Imaging Applications UI

Merits of QT for developing Imaging Applications UI White Paper Merits of QT for developing Imaging Applications UI Amitkumar Sharma January 08, 2008 Trianz 2008 White Paper Page 1 Table of Contents 1.0 Executive Summary. ------------------------------------------------------------------------------------------------------------

More information

Lesson 3 Creating and Using Graphics

Lesson 3 Creating and Using Graphics Lesson What you will learn: how to delete a sprite and import a new sprite how to draw using the pen feature of Scratch how to use the pen up and pen down feature how to change the colour of the pen how

More information

Exercise 7: Graphics and drawings in Linux

Exercise 7: Graphics and drawings in Linux Exercise 7: Graphics and drawings in Linux Hanne Munkholm IT University of Copenhagen August 11, 2004 In this exercise, we will learn the basic use of two image manipulation programs: The GIMP

More information

Mac OS-Windows Porting

Mac OS-Windows Porting Mac OS-Windows Porting Mindfire Solutions www.mindfiresolutions.com July 15, 2001 Abstract: This paper talks about hand on experiences of porting of applications, involving Mac and Windows, discussing

More information

Section 5. Pictures. By the end of this Section you should be able to:

Section 5. Pictures. By the end of this Section you should be able to: Section 5 Pictures By the end of this Section you should be able to: Use the Clip Gallery Insert and Delete Pictures Import Pictures Move, Resize and Crop Pictures Add Borders and Colour Wrap Text around

More information

Object-Oriented Programming

Object-Oriented Programming iuliana@cs.ubbcluj.ro Babes-Bolyai University 2018 1 / 33 Overview 1 2 3 4 5 6 2 / 33 I Qt is a cross-platform application and UI framework in C++. Using Qt, one can write GUI applications once and deploy

More information

Paint Tutorial (Project #14a)

Paint Tutorial (Project #14a) Paint Tutorial (Project #14a) In order to learn all there is to know about this drawing program, go through the Microsoft Tutorial (below). (Do not save this to your folder.) Practice using the different

More information

eswt Requirements and High-Level Architecture Abstract Document Information Change History

eswt Requirements and High-Level Architecture Abstract Document Information Change History eswt Requirements and High-Level Architecture Abstract There is a need for a standardized UI API fit for embedded devices having fewer resources and smaller screen sizes than a desktop computer. The goal

More information

This is the vector graphics "drawing" technology with its technical and creative beauty. SVG Inkscape vectors

This is the vector graphics drawing technology with its technical and creative beauty. SVG Inkscape vectors 1 SVG This is the vector graphics "drawing" technology with its technical and creative beauty SVG Inkscape vectors SVG 2 SVG = Scalable Vector Graphics is an integrated standard for drawing Along with

More information

Using Flash Animation Basics

Using Flash Animation Basics Using Flash Contents Using Flash... 1 Animation Basics... 1 Exercise 1. Creating a Symbol... 2 Exercise 2. Working with Layers... 4 Exercise 3. Using the Timeline... 6 Exercise 4. Previewing an animation...

More information

Sparklet Embedded GUI Library User Manual

Sparklet Embedded GUI Library User Manual 1 E M B I E N T E C H N O L O G I E S Sparklet Embedded GUI Library User Manual Embien Technologies No 3, Sankarapandian Street, Madurai, India 625017 www.embien.com 2 3 Table of Contents 1 Introduction...

More information

Virtual MODELA USER'S MANUAL

Virtual MODELA USER'S MANUAL Virtual MODELA USER'S MANUAL Virtual MODELA is a program that simulates the movement of the tool on the screen. Contents Contents Part 1 Introduction 1-1 System Requirements... 4 1-2 Overview of Virtual

More information

Building your own BMC Remedy AR System v7 Applications. Maruthi Dogiparthi

Building your own BMC Remedy AR System v7 Applications. Maruthi Dogiparthi Building your own BMC Remedy AR System v7 Applications Maruthi Dogiparthi Agenda Introduction New Goodies Navigation, tree widgets Data Visualization Plug-in framework Development Guidelines Tools BMC

More information

EUROPEAN COMPUTER DRIVING LICENCE / INTERNATIONAL COMPUTER DRIVING LICENCE IMAGE EDITING

EUROPEAN COMPUTER DRIVING LICENCE / INTERNATIONAL COMPUTER DRIVING LICENCE IMAGE EDITING EUROPEAN COMPUTER DRIVING LICENCE / INTERNATIONAL COMPUTER DRIVING LICENCE IMAGE EDITING The European Computer Driving Licence Foundation Ltd. Portview House Thorncastle Street Dublin 4 Ireland Tel: +

More information

Adaptive Point Cloud Rendering

Adaptive Point Cloud Rendering 1 Adaptive Point Cloud Rendering Project Plan Final Group: May13-11 Christopher Jeffers Eric Jensen Joel Rausch Client: Siemens PLM Software Client Contact: Michael Carter Adviser: Simanta Mitra 4/29/13

More information

Open GL Framework For A Computer Graphics Course

Open GL Framework For A Computer Graphics Course Open GL Framework For A Computer Graphics Course Programmer: Daniel Odle Sponsor / Advisor: Dr. Morse University of Evansville 4-26-03 Table of Contents Introduction 3 Statement of Problem 3 Design Approach

More information

Abstract. Eye Catching Made Easy

Abstract. Eye Catching Made Easy Abstract Eye Catching Made Easy By Francis Lamotte Chrom ART Accelerator Opens New Graphics Possibilities for GUI in Microcontroller Applications Thanks to the ease of implementing touch sensing and the

More information

Getting Started with Macromedia Flash p. 1 Introducing the Development Environment p. 1 Tools Panel p. 2 Properties Panel p. 2 Timeline p.

Getting Started with Macromedia Flash p. 1 Introducing the Development Environment p. 1 Tools Panel p. 2 Properties Panel p. 2 Timeline p. Acknowledgments p. viii Introduction p. xxv Getting Started with Macromedia Flash p. 1 Introducing the Development Environment p. 1 Tools Panel p. 2 Properties Panel p. 2 Timeline p. 3 Keyframes and Animation

More information

NEXT-GENERATION MATRIX 3D IMMERSIVE USER INTERFACE [ M3D-IUI ] H Raghavendra Swamy AMD Senior Software Engineer

NEXT-GENERATION MATRIX 3D IMMERSIVE USER INTERFACE [ M3D-IUI ] H Raghavendra Swamy AMD Senior Software Engineer NEXT-GENERATION MATRIX 3D IMMERSIVE USER INTERFACE [ M3D-IUI ] H Raghavendra Swamy AMD Senior Software Engineer SESSION AGENDA Quick Keywords Abstract and Scope Introduction Current User Interface [ UI

More information

Let s Make a Front Panel using FrontCAD

Let s Make a Front Panel using FrontCAD Let s Make a Front Panel using FrontCAD By Jim Patchell FrontCad is meant to be a simple, easy to use CAD program for creating front panel designs and artwork. It is a free, open source program, with the

More information

SignGO Pro // SignGO Lite Features Listing

SignGO Pro // SignGO Lite Features Listing SignGO Pro // SignGO Lite Features Listing Features Design Text Entry SignGO Lite SignGO Pro Artistic Text Text On Arc Text On Path Frame Text AutoMerge Script Drawing Shape drawing Freehand drawing Logos

More information

GUI Output. Adapted from slides by Michelle Strout with some slides from Rick Mercer. CSc 210

GUI Output. Adapted from slides by Michelle Strout with some slides from Rick Mercer. CSc 210 GUI Output Adapted from slides by Michelle Strout with some slides from Rick Mercer CSc 210 GUI (Graphical User Interface) We all use GUI s every day Text interfaces great for testing and debugging Infants

More information

Developing the Roadmap - Director Next Survey

Developing the Roadmap - Director Next Survey Developing the Roadmap - Director Next Survey Section 1: How do you use Director? 1. My primary use of Director is (select one only): Desktop Application Development Rich Internet Application (RIA) Development

More information

Game Programming with. presented by Nathan Baur

Game Programming with. presented by Nathan Baur Game Programming with presented by Nathan Baur What is libgdx? Free, open source cross-platform game library Supports Desktop, Android, HTML5, and experimental ios support available with MonoTouch license

More information

Definition. Blending & Compositing. Front & Back Buffers. Left & Right Buffers. Blending combines geometric objects. e.g.

Definition. Blending & Compositing. Front & Back Buffers. Left & Right Buffers. Blending combines geometric objects. e.g. Blending & Compositing COMP 3003 Autumn 2005 Definition Blending combines geometric objects e.g. transparency Compositing combines entire images multi-pass textures accumulating results Both depend on

More information

LinkMotion and CorelDraw 9, 10, 11, 12, X3, X4, X5, X6, X7 and X8:

LinkMotion and CorelDraw 9, 10, 11, 12, X3, X4, X5, X6, X7 and X8: LinkMotion and CorelDraw 9, 10, 11, 12, X3, X4, X5, X6, X7 and X8: After you install LinkMotion software and set up all settings launch CorelDraw software. Important notes: Solustan s LinkMotion driver

More information

Generating Vectors Overview

Generating Vectors Overview Generating Vectors Overview Vectors are mathematically defined shapes consisting of a series of points (nodes), which are connected by lines, arcs or curves (spans) to form the overall shape. Vectors can

More information

Computer Graphics 10 - Shadows

Computer Graphics 10 - Shadows Computer Graphics 10 - Shadows Tom Thorne Slides courtesy of Taku Komura www.inf.ed.ac.uk/teaching/courses/cg Overview Shadows Overview Projective shadows Shadow textures Shadow volume Shadow map Soft

More information

5Using Drawings, Pictures. and Graphs. Drawing in ReportSmith. Chapter

5Using Drawings, Pictures. and Graphs. Drawing in ReportSmith. Chapter 5Chapter 5Using Drawings, Pictures Chapter and Graphs Besides system and custom report styles, ReportSmith offers you several means of achieving variety and impact in your reports, by: Drawing objects

More information

Fall UI Design and Implementation 1

Fall UI Design and Implementation 1 Fall 2004 6.831 UI Design and Implementation 1 1 Source: UI Hall of Shame Fall 2004 6.831 UI Design and Implementation 2 Our Hall of Shame candidate for the day is this interface for choose how a list

More information

RenderMonkey SDK Version 1.71

RenderMonkey SDK Version 1.71 RenderMonkey SDK Version 1.71 OVERVIEW... 3 RENDERMONKEY PLUG-IN ARCHITECTURE PHILOSOPHY... 3 IMPORTANT CHANGES WHEN PORTING EXISTING PLUG-INS... 3 GENERAL... 4 GENERATING A RENDERMONKEY PLUG-IN FRAMEWORK...

More information

InfoPower Support - Complete Integration with the superb InfoPower multi-record controls such as InfoPower s vertical and horizontal grid controls.

InfoPower Support - Complete Integration with the superb InfoPower multi-record controls such as InfoPower s vertical and horizontal grid controls. 1 s t C l a s s S t u d i o B e r l i n - P a g e 1 Information on 1stClass Studio 10.2 Tokyo Woll2Woll Software March 24th, 2017 http://www.woll2woll.com 1stClass Studio 10.2 Tokyo 1stClass provides the

More information

To build shapes from scratch, use the tools are the far right of the top tool bar. These

To build shapes from scratch, use the tools are the far right of the top tool bar. These 3D GAME STUDIO TUTORIAL EXERCISE #5 USE MED TO SKIN AND ANIMATE A CUBE REVISED 11/21/06 This tutorial covers basic model skinning and animation in MED the 3DGS model editor. This exercise was prepared

More information

RENDERING TECHNIQUES

RENDERING TECHNIQUES RENDERING TECHNIQUES Colors in Flash In Flash, colors are specified as numbers. A color number can be anything from 0 to 16,777,215 for 24- bit color which is 256 * 256 * 256. Flash uses RGB color, meaning

More information

How to create shapes. Drawing basic shapes. Adobe Photoshop Elements 8 guide

How to create shapes. Drawing basic shapes. Adobe Photoshop Elements 8 guide How to create shapes With the shape tools in Adobe Photoshop Elements, you can draw perfect geometric shapes, regardless of your artistic ability or illustration experience. The first step to drawing shapes

More information

Buffers, Textures, Compositing, and Blending. Overview. Buffers. David Carr Virtual Environments, Fundamentals Spring 2005 Based on Slides by E.

Buffers, Textures, Compositing, and Blending. Overview. Buffers. David Carr Virtual Environments, Fundamentals Spring 2005 Based on Slides by E. INSTITUTIONEN FÖR SYSTEMTEKNIK LULEÅ TEKNISKA UNIVERSITET Buffers, Textures, Compositing, and Blending David Carr Virtual Environments, Fundamentals Spring 2005 Based on Slides by E. Angel Compositing,

More information

JavaFX Technology Building GUI Applications With JavaFX - Tutorial Overview

JavaFX Technology Building GUI Applications With JavaFX - Tutorial Overview avafx Tutorial Develop Applications for Desktop and Mobile Java FX 2/10/09 3:35 PM Sun Java Solaris Communities My SDN Account Join SDN SDN Home > Java Technology > JavaFX Technology > JavaFX Technology

More information

Core Graphics and OpenGL ES. Dr. Sarah Abraham

Core Graphics and OpenGL ES. Dr. Sarah Abraham Core Graphics and OpenGL ES Dr. Sarah Abraham University of Texas at Austin CS329e Fall 2018 Core Graphics Apple s vector-drawing framework Previously known as Quartz or Quartz2D Includes handling for:

More information

Hardware Accelerated Graphics for High Performance JavaFX Mobile Applications

Hardware Accelerated Graphics for High Performance JavaFX Mobile Applications Hardware Accelerated Graphics for High Performance JavaFX Mobile Applications Pavel Petroshenko, Sun Microsystems Jan Valenta, Sun Microsystems Jerry Evans, Sun Microsystems Goal of this Session Demonstrate

More information

Hands-On Workshop: 3D Automotive Graphics on Connected Radios Using Rayleigh and OpenGL ES 2.0

Hands-On Workshop: 3D Automotive Graphics on Connected Radios Using Rayleigh and OpenGL ES 2.0 Hands-On Workshop: 3D Automotive Graphics on Connected Radios Using Rayleigh and OpenGL ES 2.0 FTF-AUT-F0348 Hugo Osornio Luis Olea A P R. 2 0 1 4 TM External Use Agenda Back to the Basics! What is a GPU?

More information

Data Representation From 0s and 1s to images CPSC 101

Data Representation From 0s and 1s to images CPSC 101 Data Representation From 0s and 1s to images CPSC 101 Learning Goals After the Data Representation: Images unit, you will be able to: Recognize and translate between binary and decimal numbers Define bit,

More information

Accelerating Realism with the (NVIDIA Scene Graph)

Accelerating Realism with the (NVIDIA Scene Graph) Accelerating Realism with the (NVIDIA Scene Graph) Holger Kunz Manager, Workstation Middleware Development Phillip Miller Director, Workstation Middleware Product Management NVIDIA application acceleration

More information

Visual HTML5. Human Information Interaction for Knowledge Extraction, Interaction, Utilization, Decision making HI-I-KEIUD

Visual HTML5. Human Information Interaction for Knowledge Extraction, Interaction, Utilization, Decision making HI-I-KEIUD Visual HTML5 1 Overview HTML5 Building apps with HTML5 Visual HTML5 Canvas SVG Scalable Vector Graphics WebGL 2D + 3D libraries 2 HTML5 HTML5 to Mobile + Cloud = Java to desktop computing: cross-platform

More information

Chapter Answers. Appendix A. Chapter 1. This appendix provides answers to all of the book s chapter review questions.

Chapter Answers. Appendix A. Chapter 1. This appendix provides answers to all of the book s chapter review questions. Appendix A Chapter Answers This appendix provides answers to all of the book s chapter review questions. Chapter 1 1. What was the original name for the first version of DirectX? B. Games SDK 2. Which

More information

A 2D Game Engine Using Bitmaps

A 2D Game Engine Using Bitmaps A 2D Game Engine Using Bitmaps Rahul Deore 1, Prathamesh Mujumdar 2, Rohan Gulik 3, Prof. Savita Sangam 4 1 Rahul.deore@hotmail.com, 2 prathamesh.22@gmail.com, 3 rohan.gulik@hotmail.com, 4 savita.sangam@gmail.com

More information

PowerPoint 2016 Advanced for Windows

PowerPoint 2016 Advanced for Windows 1 PowerPoint 2016 Advanced for Windows PowerPoint 2016 Advanced for Windows Training Objective To learn advanced features of PowerPoint 2016 in order to create more elaborate presentations. What you can

More information

BASICS OF MOTIONSTUDIO

BASICS OF MOTIONSTUDIO EXPERIMENT NO: 1 BASICS OF MOTIONSTUDIO User Interface MotionStudio combines draw, paint and animation in one easy easy-to-use program gram to save time and make work easy. Main Window Main Window is the

More information

FactoryLink 7. Version 7.0. Client Builder Reference Manual

FactoryLink 7. Version 7.0. Client Builder Reference Manual FactoryLink 7 Version 7.0 Client Builder Reference Manual Copyright 2000 United States Data Corporation. All rights reserved. NOTICE: The information contained in this document (and other media provided

More information

Lecture 6: Output. Fall UI Design and Implementation 1

Lecture 6: Output. Fall UI Design and Implementation 1 Lecture 6: Output Fall 2006 6.831 UI Design and Implementation 1 1 UI Hall of Fame or Shame? Fall 2006 6.831 UI Design and Implementation 2 This is Ghostview, a Unix program that displays Postscript files.

More information

Rendering & Project Management. Dillon Courts Sandy Natarajan Spencer Balogh Do Young Park

Rendering & Project Management. Dillon Courts Sandy Natarajan Spencer Balogh Do Young Park Rendering & Project Management Dillon Courts Sandy Natarajan Spencer Balogh Do Young Park PLAYBLAST PlayBlast is a short cut to check the time and frame speed of your animation before creating the final

More information

07 Animation. Multimedia Systems. Image Sequence, Interpolation

07 Animation. Multimedia Systems. Image Sequence, Interpolation Multimedia Systems 07 Animation Image Sequence, Interpolation Imran Ihsan Assistant Professor, Department of Computer Science Air University, Islamabad, Pakistan www.imranihsan.com Lectures Adapted From:

More information

Tutorial 17: Using Visual Image

Tutorial 17: Using Visual Image Tutorial 17: Using Visual Image What follows is a brief introduction to Visual Image. This tutorial does not attempt to touch on all of the capabilities of the software. Instead, it steps through a simple

More information

Introduction. QuickStart and Demo Scenes. Support & Contact info. Thank you for purchasing!

Introduction. QuickStart and Demo Scenes. Support & Contact info. Thank you for purchasing! RELEASE NOTES V.4.1 / JUNE.2017 Contents Introduction... 3 QuickStart and Demo Scenes... 3 Support & Contact info... 3 How to use the asset in your project... 4 Custom Editor Properties... 4 Grid Configuration:...

More information

Adobe Photoshop Sh S.K. Sublania and Sh. Naresh Chand

Adobe Photoshop Sh S.K. Sublania and Sh. Naresh Chand Adobe Photoshop Sh S.K. Sublania and Sh. Naresh Chand Photoshop is the software for image processing. With this you can manipulate your pictures, either scanned or otherwise inserted to a great extant.

More information

Impress Guide. Chapter 1 Introducing Impress

Impress Guide. Chapter 1 Introducing Impress Impress Guide Chapter 1 Introducing Impress Copyright This document is Copyright 2005 2009 by its contributors as listed in the section titled Authors. You may distribute it and/or modify it under the

More information

PixelSurface a dynamic world of pixels for Unity

PixelSurface a dynamic world of pixels for Unity PixelSurface a dynamic world of pixels for Unity Oct 19, 2015 Joe Strout joe@luminaryapps.com Overview PixelSurface is a small class library for Unity that lets you manipulate 2D graphics on the level

More information

Not For Sale. Glossary

Not For Sale. Glossary Glossary Actor A sprite and the role it plays as it interacts with another sprite on the stage. Animated GIF A graphic made up of two or more frames, each of which is displayed as an automated sequence

More information

Introduction to Computer Graphics (CS602) Lecture No 03 Graphics Systems

Introduction to Computer Graphics (CS602) Lecture No 03 Graphics Systems Introduction to Computer Graphics (CS602) Lecture No 03 Graphics Systems 3.1 Raster-Scan Systems Interactive raster graphics systems typically employ several processing units. In addition to the CPU, a

More information

<Insert Picture Here> JavaFX Overview April 2010

<Insert Picture Here> JavaFX Overview April 2010 JavaFX Overview April 2010 Sébastien Stormacq Sun Microsystems, Northern Europe The following is intended to outline our general product direction. It is intended for information

More information

Creating Buttons and Pop-up Menus

Creating Buttons and Pop-up Menus Using Fireworks CHAPTER 12 Creating Buttons and Pop-up Menus 12 In Macromedia Fireworks 8 you can create a variety of JavaScript buttons and CSS or JavaScript pop-up menus, even if you know nothing about

More information

Template Graphics Guidelines

Template Graphics Guidelines Contents Page Overview 1 Screensaver Formats 1 Pop-Up Formats 2 Ticker Formats 3 Banner Formats 3 Web Page Formats 4 Edge Transparency Not Supported 5 Graphics Files 5 Bitmap vs Vector 6 Bitmap Pixellation

More information

CS488. Visible-Surface Determination. Luc RENAMBOT

CS488. Visible-Surface Determination. Luc RENAMBOT CS488 Visible-Surface Determination Luc RENAMBOT 1 Visible-Surface Determination So far in the class we have dealt mostly with simple wireframe drawings of the models The main reason for this is so that

More information

College of Pharmacy Windows 10

College of Pharmacy Windows 10 College of Pharmacy Windows 10 Windows 10 is the version of Microsoft s flagship operating system that follows Windows 8; the OS was released in July 2015. Windows 10 is designed to address common criticisms

More information

Chapter 2 Operating-System Structures

Chapter 2 Operating-System Structures This chapter will discuss the following concepts: 2.1 Operating System Services 2.2 User Operating System Interface 2.3 System Calls 2.4 System Programs 2.5 Operating System Design and Implementation 2.6

More information

The Application Stage. The Game Loop, Resource Management and Renderer Design

The Application Stage. The Game Loop, Resource Management and Renderer Design 1 The Application Stage The Game Loop, Resource Management and Renderer Design Application Stage Responsibilities 2 Set up the rendering pipeline Resource Management 3D meshes Textures etc. Prepare data

More information

OpenGL View Library. Supervised by: Martin Madaras

OpenGL View Library. Supervised by: Martin Madaras View Adam Riečický Supervised by: Martin Madaras Faculty of Mathematics, Physics and Informatics Comenius University in Bratislava Bratislava/Slovakia Abstract In the paper, we propose a library for the

More information

Stanford CS193p. Developing Applications for ios. Spring CS193p. Spring 2016

Stanford CS193p. Developing Applications for ios. Spring CS193p. Spring 2016 Stanford Developing Applications for ios Today Views Custom Drawing Demo FaceView Views A view (i.e. UIView subclass) represents a rectangular area Defines a coordinate space For drawing And for handling

More information

Renderize Live Overview

Renderize Live Overview Renderize Live Overview The Renderize Live interface is designed to offer a comfortable, intuitive environment in which an operator can create projects. A project is a savable work session that contains

More information

Work with Shapes. Concepts CHAPTER. Concepts, page 3-1 Procedures, page 3-5

Work with Shapes. Concepts CHAPTER. Concepts, page 3-1 Procedures, page 3-5 3 CHAPTER Revised: November 15, 2011 Concepts, page 3-1, page 3-5 Concepts The Shapes Tool is Versatile, page 3-2 Guidelines for Shapes, page 3-2 Visual Density Transparent, Translucent, or Opaque?, page

More information

RenderMonkey 1.6. Natalya Tatarchuk ATI Research

RenderMonkey 1.6. Natalya Tatarchuk ATI Research RenderMonkey 1.6 Natalya Tatarchuk ATI Research Game Developer Conference, San Francisco, CA, March 2005 Overview > What is RenderMonkey? > What s New In RenderMonkey 1.6? 2 What is RenderMonkey? > Shader

More information

CS 4300 Computer Graphics

CS 4300 Computer Graphics CS 4300 Computer Graphics Prof. Harriet Fell Fall 2011 Lecture 8 September 22, 2011 GUIs GUIs in modern operating systems cross-platform GUI frameworks common GUI widgets event-driven programming Model-View-Controller

More information

snocad-x user guide version b

snocad-x user guide version b snocad-x user guide version 1.0.3.b www.grafsnowboards.com Introduction snocad-x is an interactive application with which you can design all sorts of boardsports equipment. The main features are intended

More information

BMP file format. Contents. Pixel storage. The BMP file format, sometimes called bitmap. or DIB file format (for device-independent

BMP file format. Contents. Pixel storage. The BMP file format, sometimes called bitmap. or DIB file format (for device-independent 1 of 7 BMP file format From Wikipedia, the free encyclopedia Windows Bitmap The BMP file format, sometimes called bitmap File extension:.bmp or.dib or DIB file format (for device-independent MIME type:

More information

UI, Graphics & EFL. Carsten Haitzler Principal Engineer Samsung Electronics Korea Founder/Leader Enlightenment / EFL

UI, Graphics & EFL. Carsten Haitzler Principal Engineer Samsung Electronics Korea Founder/Leader Enlightenment / EFL UI, Graphics & EFL Carsten Haitzler Principal Engineer Samsung Electronics Korea c.haitzler@samsung.com Founder/Leader Enlightenment / EFL Display System Overview Graphics 4 Graphics Old-School FB 5 In

More information

HUNT ENGINEERING Imaging with FPGA Demo/Framework

HUNT ENGINEERING Imaging with FPGA Demo/Framework HUNT ENGINEERING Chestnut Court, Burton Row, Brent Knoll, Somerset, TA9 4BP, UK Tel: (+44) (0)1278 760188, Fax: (+44) (0)1278 760199, Email: sales@hunteng.co.uk www.hunteng.co.uk www.hunt-dsp.com HUNT

More information

There we are; that's got the 3D screen and mouse sorted out.

There we are; that's got the 3D screen and mouse sorted out. Introduction to 3D To all intents and purposes, the world we live in is three dimensional. Therefore, if we want to construct a realistic computer model of it, the model should be three dimensional as

More information

Pl_Editor. August 24, 2017

Pl_Editor. August 24, 2017 Pl_Editor Pl_Editor ii August 24, 2017 Pl_Editor iii Contents 1 Introduction to Pl_Editor 2 2 Pl_Editor files 2 2.1 Input file and default title block........................................ 2 2.2 Output

More information

INKSCAPE BASICS. 125 S. Prospect Avenue, Elmhurst, IL (630) elmhurstpubliclibrary.org. Create, Make, and Build

INKSCAPE BASICS. 125 S. Prospect Avenue, Elmhurst, IL (630) elmhurstpubliclibrary.org. Create, Make, and Build INKSCAPE BASICS Inkscape is a free, open-source vector graphics editor. It can be used to create or edit vector graphics like illustrations, diagrams, line arts, charts, logos and more. Inkscape uses Scalable

More information

Inkscape tutorial: Donate button

Inkscape tutorial: Donate button Inkscape tutorial: Donate button By: Very Simple Designs (BDT466) Web Site: http://verysimpledesigns.com/vectors/inkscape-tutorial-donate-button.html This Inkscape beginner tutorial teaches the viewer

More information

Insight: Measurement Tool. User Guide

Insight: Measurement Tool. User Guide OMERO Beta v2.2: Measurement Tool User Guide - 1 - October 2007 Insight: Measurement Tool User Guide Open Microscopy Environment: http://www.openmicroscopy.org OMERO Beta v2.2: Measurement Tool User Guide

More information

Motic Images Plus 3.0 ML Software. Windows OS User Manual

Motic Images Plus 3.0 ML Software. Windows OS User Manual Motic Images Plus 3.0 ML Software Windows OS User Manual Motic Images Plus 3.0 ML Software Windows OS User Manual CONTENTS (Linked) Introduction 05 Menus and tools 05 File 06 New 06 Open 07 Save 07 Save

More information