Experiences with 2-D and 3-D Mathematical Plots on the Java Platform
|
|
- Sabrina Palmer
- 8 years ago
- Views:
Transcription
1 Experiences with 2-D and 3-D Mathematical Plots on the Java Platform David Clayworth Maplesoft
2 What you will learn > Techniques for writing software that plots mathematical and scientific data > How to apply Java tools to these tasks: Java2D for 2D graphs JOGL for 3D graphs > How to make best use of these toolkits, especially JOGL 2
3 History > Maple is a symbolic math application: Performs math on symbols as well as numbers A huge number of mathematical operations > User interface is all Java (~1M lines) Outputs math as mathematicians, scientists or engineers expect it > Previous toolkit lacked speed, quality, controllability and economy. > Two stage rewrite:2d and then 3D 3
4 Demo > Maple before 4
5 Requirements > New Features Interactive annotation Mathematical labels part of the plot Speed and memory improvements Try to use few Java components > Notable Existing Features Plots embeddable in a worksheet Export to bitmap and vector Run on Windows, Linux, Mac and Solaris 5
6 Design Overview Model View Controller > Maple GUI uses Model-View-Controller > Each symbol, plot, component, axis etc. has a model > Each model has a view > Model update view layout view draw > Mapping from plot to pixel coordinates during layout 6
7 Design Plot Atoms > Atoms are small objects that store elements in a form that is quick to draw > They may store pixel positions, or a Shape object, or a symbol image and location > Created at layout time and stored in the MVC view > To draw itself a component just draws all its atoms 7
8 Design Plot Atoms interface Atom { void draw(graphics g); } class PolygonAtom implements Atom { GeneralPath poly; PolygonAtom(float x[],float y[]) { // create the path } void draw(graphics g) { ((Graphics2D)g).fill(poly); } } 8
9 Design Math in Labels > Mathematical expressions are drawn directly by positioning the view within the plot > Annotations use an existing package which draws over the plot with Java2D 9
10 Optimizations: float v int coordinates > drawpolyline(int[],int[],int) v draw(shape) > In theory ints are faster but floats more accurate > You need float coordinates for printing or vector graphics (e.g. Postscript) > Considered using int-based calls on screen and float-based for print > Ended using floats throughout: the differences in both accuracy and performance were small (except for printing). 10
11 Optimizations: Sprites > Rendering performance was acceptable, except when drawing many symbols > Sprites are small images which can be drawn to the screen instead of lines and shapes > Faster to draw an image than even a simple shape > Create a Sprite object which holds an image for the symbol > Sprites are indexed by symbol, size and colour. 11
12 Optimizations: Sprites Backgrounds of Sprites must be transparent You need to make sure that symbols are symmetric 12
13 2D Plots The results > The 2D plots were released in > Speeded up by a factor of 7 > Memory used less than 1/10 th > The new features were appreciated by customers > Spurred demand for the same features in 3D 13
14 Requirements 3D Project > New Features Interactive annotation, drawn in Java2D over 3D Mathematical labels part of the plot, embedded at 3D positions Other improvements as before > Notable Existing Features as before 14
15 Toolkits Candidate toolkits for 3D > The choices: Java3D: a complete scenegraph tool written in Java JOGL: a thin Java layer over OpenGL LWJGL: a Java layer over OpenGL designed for games A game engine, such as JMonkeyEngine > LWJGL eliminated as it uses a single window. > Many game engines have LWJGL underneath 15
16 Toolkits JOGL v Java3D > Java3D advantages: A complete OO toolkit Simpler to learn than OpenGL > JOGL advantages: If you know OpenGL you know JOGL Virtually full OpenGL functionality Known portability Wide use Doesn t impose it s own framework 16
17 Toolkits JOGL > GLCanvas (heavyweight AWT) or GLJPanel (lightweight Swing) accelerated components > GLEventListener is attached to the component render the scene > GL object passed to the listener provides Java equivalents for OpenGL calls. > You can (and must) use OpenGL documentation. > Each view object has a method to draw itself with GL calls. 17
18 Design Mixing 2D labels into 3D > Labels are positioned in 3D space > Math is drawn into an image with a transparent background > Set a raster position in 3D, then shift it in 2D to get the alignment right > Image drawn into the scene with JOGL > gl.glrasterpos3fv(arrayxyz, 0); gl.glbitmap(0, 0, 0, 0,xOff, yoff, null); gl.gldrawpixels(w,h,, image); 18
19 Design Mixing 2D labels into 3D What we expect What we get (without alpha-clipping) 19
20 Design Mixing 2D labels into 3D (cont.) > When OpenGL writes shape it sets the depth at which it is written (depth buffer) > Subsequent shapes at a greater depth are not written i.e. surfaces behind a surface aren t seen. > But the depth buffer is written even for transparent pixels > We have to use two passes: Write solid pixels and set the depth buffer Write transparent pixels without the depth buffer 20
21 Design Mixing 2D labels into 3D (cont.) gl.gldepthmask(true); gl.glalphafunc(gl.gl_gequal,alpha); drawallcomponents(); gl.glalphafunc(gl.gl_less, alpha); gl.gldepthmask(false); drawallcomponents(); > OpenGL Programming Guide Alpha Test (p477 Sixth Edition) 21
22 Rendering Mechanism Limitations of GLJPanel > Started with one GLJPanel per plot > A Maple document may have many plots. > But GLJPanels take resources (video RAM) > After creating so many they stop rendering > JOGL Issue
23 Rendering Mechanism Reusing a GLJPanel > Reuse GLJPanel, stealing them from plots that are offscreen. > But you can t reposition and draw a GLJPanel in the same event > There are other problems with writing plots for export. > A complex and impractical solution 23
24 Rendering Mechanism GLPBuffers > GLPBuffers allow for drawing hardware accelerated graphics offscreen > Render 3D to the GLPBuffer, then the image to the screen > Now easy to draw 2D annotations over the PBuffer image > We have fewer components > We still need to reuse GLPBuffers since they use video memory 24
25 Rendering Mechanism Creating a GLPBuffer GLDrawableFactory factory = GLDrawableFactory.getFactory(); GLPbuffer buf = factory.createglpbuffer(, width,height, ); GLContext glcontext = buf.createcontext(null); 25
26 Rendering Mechanism Drawing to a GLPBuffer void draw(graphics g) { try { glcontext.makecurrent(); GL gl = glcontext.getgl(); // make GL calls BufferedImage img = Screenshot.readToBufferedImage(w,h); g.drawimage(img, x, y null); } finally { if (GLContext.getCurrent()==glContext) {glcontext.release();} } } 26
27 Rendering Mechanism GLPBuffers (cont) > Not all displays support GLPBuffers: GLDrawableFactory. cancreateglpbuffer(); > Creation can still fail, because they need video resources > Catch GLException when creating; and RuntimeException because of JOGL bugs > Some performance cost 27
28 Rendering Mechanism Offscreen drawable > There is also a unaccelerated offscreen drawable > This is outside the published interface: it is used by GLJPanel. > See GLJPanel source GLDrawableImpl offscreendrawable = GLDrawableFactoryImpl.getFactoryImpl(). createoffscreendrawable(glcap, ); 28
29 Platform issues: > Not all machine configurations will work with JOGL out of the box. > Working OpenGL doesn t mean working JOGL > Need to call glgeterror() (or use DebugGL) > Catch GLException and process it > Check your display capabilities with GLDrawable.getChosenGLCapabilities(); > Don t make GL calls when your GLContext is not current 29
30 Platform issues: Mac > None 30
31 Platform issues: Windows > Few > ATI drivers: need at least v8.231 (Catalyst 8) > Remote Desktop Connection and some laptop external monitors: May not be able to use the 2-pass transparency algorithm Check the supported alpha bits > Some drivers draw bad plots 31
32 Platform issues: Linux > Some > Many default Linux installs don t work with JOGL > Proprietary video drivers needed ATI Catalyst 8.12 nvidia version 177 > Some drivers crash 32
33 Demo > The new plots 33
34 Summary: 2D > Favour precision over speed > Store presentation data close to the Java drawing format > Use sprites for symbols > Java2D provides all you need for this task 34
35 Summary: 3D > JOGL: Provides all your 3D needs Is good if you already have structure May not be best if you need to create structure > Programming JOGL is programming OpenGL > Write math as images directly to the 3D scene Requires transparency handling > Manage video drivers, esp. Linux 35
36 Summary: 3D (cont) > PBuffers: Simplify 2D/3D mixing Allow many plots in an app Have little performance cost Reduce component count Need to go outside the spec for unaccelerated images 36
37 Resources: > Jumping into JOGL: > JOGL documentatation: > JOGL forum: > PBuffers: > OpenGL Programming Guide 37
38 David Clayworth Senior GUI Developer Maplesoft 38
How To Teach Computer Graphics
Computer Graphics Thilo Kielmann Lecture 1: 1 Introduction (basic administrative information) Course Overview + Examples (a.o. Pixar, Blender, ) Graphics Systems Hands-on Session General Introduction http://www.cs.vu.nl/~graphics/
More informationIntroduction to Computer Graphics
Chapter 1 Objectives Introduction to Computer Graphics To understand the basic objectives and scope of computer graphics To identify computer graphics applications To understand the basic structures of
More informationMaster Thesis. Document : Thesis Version : 1.0 Date : 27 March 2006 Document nr. : 546
Master Thesis Atlantis 3D Document : Thesis Version : 1.0 Date : 27 March 2006 Document nr. : 546 Student Author : Jeroen Broekhuizen Email : j.broekhuizen@hef.ru.nl Student nr. : 0219428 Education : Science
More informationSilverlight for Windows Embedded Graphics and Rendering Pipeline 1
Silverlight for Windows Embedded Graphics and Rendering Pipeline 1 Silverlight for Windows Embedded Graphics and Rendering Pipeline Windows Embedded Compact 7 Technical Article Writers: David Franklin,
More informationLecture 1 Introduction to Android
These slides are by Dr. Jaerock Kwon at. The original URL is http://kettering.jrkwon.com/sites/default/files/2011-2/ce-491/lecture/alecture-01.pdf so please use that instead of pointing to this local copy
More informationGood FORTRAN Programs
Good FORTRAN Programs Nick West Postgraduate Computing Lectures Good Fortran 1 What is a Good FORTRAN Program? It Works May be ~ impossible to prove e.g. Operating system. Robust Can handle bad data e.g.
More information3D Application and Game Development With OpenGL
3D Application and Game Development With OpenGL java.sun.com/javaone/sf Daniel Petersen Kenneth Russell Sun Microsystems, Inc. 1 Presentation Goal Show how to build leading-edge 3D applications and games
More informationThe MaXX Desktop. Workstation Environment. Revised Road Map Version 0.7. for Graphics Professionals
The MaXX Desktop Workstation Environment for Graphics Professionals Revised Road Map Version 0.7 Document History Author Date Version Comments Eric Masson 01/11/2007 0.5 First Draft Eric Masson 18/11/2007
More informationLittleCMS: A free color management engine in 100K.
LittleCMS: A free color management engine in 100K. Background One of the main components of a color management solution is the Color Matching Module, or CMM, which is the software engine in charge of controlling
More informationJavaFX Session Agenda
JavaFX Session Agenda 1 Introduction RIA, JavaFX and why JavaFX 2 JavaFX Architecture and Framework 3 Getting Started with JavaFX 4 Examples for Layout, Control, FXML etc Current day users expect web user
More informationPrinting Guide. MapInfo Pro Version 15.0. Contents:
MapInfo Pro Version 15.0 The purpose of this guide is to assist you in getting the best possible output from your MapInfo Pro software. We begin by covering the new print, import, and export features and
More informationMapInfo Professional Version 12.5. Printing Guide
MapInfo Professional Version 12.5 Printing Guide The purpose of this guide is to assist you in getting the best possible output from your MapInfo Professional software. We begin by covering the new print,
More informationAndroid Architecture. Alexandra Harrison & Jake Saxton
Android Architecture Alexandra Harrison & Jake Saxton Overview History of Android Architecture Five Layers Linux Kernel Android Runtime Libraries Application Framework Applications Summary History 2003
More informationComputer Graphics Hardware An Overview
Computer Graphics Hardware An Overview Graphics System Monitor Input devices CPU/Memory GPU Raster Graphics System Raster: An array of picture elements Based on raster-scan TV technology The screen (and
More informationJava game programming. Game engines. Fayolle Pierre-Alain
Java game programming Game engines 2010 Fayolle Pierre-Alain Plan Some definitions List of (Java) game engines Examples of game engines and their use A first and simple definition A game engine is a (complex)
More information2: Introducing image synthesis. Some orientation how did we get here? Graphics system architecture Overview of OpenGL / GLU / GLUT
COMP27112 Computer Graphics and Image Processing 2: Introducing image synthesis Toby.Howard@manchester.ac.uk 1 Introduction In these notes we ll cover: Some orientation how did we get here? Graphics system
More informationTest Specification. Introduction
Test Specification Introduction Goals and Objectives GameForge is a graphical tool used to aid in the design and creation of video games. A user with little or no experience with Microsoft DirectX and/or
More informationDefiniens XD 1.2.1. Release Notes
Definiens XD 1.2.1 Release Notes Imprint and Version Document Version Copyright 2010 Definiens AG. All rights reserved. This document may be copied and printed only in accordance with the terms of the
More informationFinger Paint: Cross-platform Augmented Reality
Finger Paint: Cross-platform Augmented Reality Samuel Grant Dawson Williams October 15, 2010 Abstract Finger Paint is a cross-platform augmented reality application built using Dream+ARToolKit. A set of
More informationElectronic Records Management Guidelines - File Formats
Electronic Records Management Guidelines - File Formats Rapid changes in technology mean that file formats can become obsolete quickly and cause problems for your records management strategy. A long-term
More informationNVPRO-PIPELINE A RESEARCH RENDERING PIPELINE MARKUS TAVENRATH MATAVENRATH@NVIDIA.COM SENIOR DEVELOPER TECHNOLOGY ENGINEER, NVIDIA
NVPRO-PIPELINE A RESEARCH RENDERING PIPELINE MARKUS TAVENRATH MATAVENRATH@NVIDIA.COM SENIOR DEVELOPER TECHNOLOGY ENGINEER, NVIDIA GFLOPS 3500 3000 NVPRO-PIPELINE Peak Double Precision FLOPS GPU perf improved
More informationSystem Requirements G E N E R A L S Y S T E M R E C O M M E N D A T I O N S
System Requirements General Requirements These requirements are common to all platforms: A DVD drive for installation. If you need to install the software using CD-ROM media, please contact your local
More informationGame Programming with Groovy. James Williams @ecspike Sr. Software Engineer, BT/Ribbit
Game Programming with Groovy James Williams @ecspike Sr. Software Engineer, BT/Ribbit About Me Sr. Software Engineer at BT/Ribbit Co-creator of Griffon, a desktop framework for Swing using Groovy Contributer
More informationChapter 2 - Graphics Programming with JOGL
Chapter 2 - Graphics Programming with JOGL Graphics Software: Classification and History JOGL Hello World Program 2D Coordinate Systems in JOGL Dealing with Window Reshaping 3D Coordinate Systems in JOGL
More informationGUI and Web Programming
GUI and Web Programming CSE 403 (based on a lecture by James Fogarty) Event-based programming Sequential Programs Interacting with the user 1. Program takes control 2. Program does something 3. Program
More informationDATA VISUALIZATION OF THE GRAPHICS PIPELINE: TRACKING STATE WITH THE STATEVIEWER
DATA VISUALIZATION OF THE GRAPHICS PIPELINE: TRACKING STATE WITH THE STATEVIEWER RAMA HOETZLEIN, DEVELOPER TECHNOLOGY, NVIDIA Data Visualizations assist humans with data analysis by representing information
More informationEqualizer. Parallel OpenGL Application Framework. Stefan Eilemann, Eyescale Software GmbH
Equalizer Parallel OpenGL Application Framework Stefan Eilemann, Eyescale Software GmbH Outline Overview High-Performance Visualization Equalizer Competitive Environment Equalizer Features Scalability
More informationLecture Notes, CEng 477
Computer Graphics Hardware and Software Lecture Notes, CEng 477 What is Computer Graphics? Different things in different contexts: pictures, scenes that are generated by a computer. tools used to make
More informationJava (12 Weeks) Introduction to Java Programming Language
Java (12 Weeks) Topic Lecture No. Introduction to Java Programming Language 1 An Introduction to Java o Java as a Programming Platform, The Java "White Paper" Buzzwords, Java and the Internet, A Short
More information3D VIRTUAL DESKTOP APPLICATION Of UNSW. Introduction. What we propose to do 2/4. What we propose to do 1/4. What we propose to do 4/4
3D VIRTUAL DESKTOP APPLICATION Of UNSW Introduction Objective To build a stand alone or web based interactive virtual 3D map of the UNSW Kensington campus. What do we have to start off with? An existing
More informationRelease Notes Tecplot, Inc. Bellevue, WA 2012
Release Notes Tecplot, Inc. Bellevue, WA 2012 COPYRIGHT NOTICE Tecplot 360 TM Release Notes is for use with Tecplot 360 TM 2012. Copyright 1988-2012 Tecplot, Inc. All rights reserved worldwide. Except
More informationMaple Quick Start. Introduction. Talking to Maple. Using [ENTER] 3 (2.1)
Introduction Maple Quick Start In this introductory course, you will become familiar with and comfortable in the Maple environment. You will learn how to use context menus, task assistants, and palettes
More informationKeith Packard. keithp@keithp.com July 29, 2005
Keith Packard keithp@keithp.com July 29, 2005 Experience HP (via Compaq) (12/01-present) Member of the Cambridge Research Laboratory. Research projects focused on user interfaces in all guises, from tiny
More informationNVIDIA GeForce GTX 580 GPU Datasheet
NVIDIA GeForce GTX 580 GPU Datasheet NVIDIA GeForce GTX 580 GPU Datasheet 3D Graphics Full Microsoft DirectX 11 Shader Model 5.0 support: o NVIDIA PolyMorph Engine with distributed HW tessellation engines
More informationApplication of Android OS as Real-time Control Platform**
AUTOMATYKA/ AUTOMATICS 2013 Vol. 17 No. 2 http://dx.doi.org/10.7494/automat.2013.17.2.197 Krzysztof Ko³ek* Application of Android OS as Real-time Control Platform** 1. Introduction An android operating
More informationInstallation Guide. (Version 2014.1) Midland Valley Exploration Ltd 144 West George Street Glasgow G2 2HG United Kingdom
Installation Guide (Version 2014.1) Midland Valley Exploration Ltd 144 West George Street Glasgow G2 2HG United Kingdom Tel: +44 (0) 141 3322681 Fax: +44 (0) 141 3326792 www.mve.com Table of Contents 1.
More informationIntroduction to Computer Graphics
Introduction to Computer Graphics Torsten Möller TASC 8021 778-782-2215 torsten@sfu.ca www.cs.sfu.ca/~torsten Today What is computer graphics? Contents of this course Syllabus Overview of course topics
More informationGame Development in Android Disgruntled Rats LLC. Sean Godinez Brian Morgan Michael Boldischar
Game Development in Android Disgruntled Rats LLC Sean Godinez Brian Morgan Michael Boldischar Overview Introduction Android Tools Game Development OpenGL ES Marketing Summary Questions Introduction Disgruntled
More informationComputer Graphics on Mobile Devices VL SS2010 3.0 ECTS
Computer Graphics on Mobile Devices VL SS2010 3.0 ECTS Peter Rautek Rückblick Motivation Vorbesprechung Spiel VL Framework Ablauf Android Basics Android Specifics Activity, Layouts, Service, Intent, Permission,
More informationOptimizing AAA Games for Mobile Platforms
Optimizing AAA Games for Mobile Platforms Niklas Smedberg Senior Engine Programmer, Epic Games Who Am I A.k.a. Smedis Epic Games, Unreal Engine 15 years in the industry 30 years of programming C64 demo
More informationOptimisation of a Graph Visualization Tool: Vizz3D
School of Mathematics and Systems Engineering Reports from MSI - Rapporter från MSI Optimisation of a Graph Visualization Tool: Vizz3D Johan Carlsson Apr 2006 MSI Report 06045 Växjö University ISSN 1650-2647
More informationIntroducing. Markus Erlacher Technical Solution Professional Microsoft Switzerland
Introducing Markus Erlacher Technical Solution Professional Microsoft Switzerland Overarching Release Principles Strong emphasis on hardware, driver and application compatibility Goal to support Windows
More informationRunning Windows on a Mac. Why?
Running Windows on a Mac Why? 1. We still live in a mostly Windows world at work (but that is changing) 2. Because of the abundance of Windows software there are sometimes no valid Mac Equivalents. (Many
More informationChapter 5: System Software: Operating Systems and Utility Programs
Understanding Computers Today and Tomorrow 12 th Edition Chapter 5: System Software: Operating Systems and Utility Programs Learning Objectives Understand the difference between system software and application
More informationLow power GPUs a view from the industry. Edvard Sørgård
Low power GPUs a view from the industry Edvard Sørgård 1 ARM in Trondheim Graphics technology design centre From 2006 acquisition of Falanx Microsystems AS Origin of the ARM Mali GPUs Main activities today
More informationGeant4 Visualization. Andrea Dotti April 19th, 2015 Geant4 tutorial @ M&C+SNA+MC 2015
Geant4 Visualization Andrea Dotti April 19th, 2015 Geant4 tutorial @ M&C+SNA+MC 2015 HepRep/HepRApp Slides from Joseph Perl (SLAC) and Laurent Garnier (LAL/IN2P3) DAWN OpenGL OpenInventor RayTracer HepRep/FRED
More informationIntroduction to GPU hardware and to CUDA
Introduction to GPU hardware and to CUDA Philip Blakely Laboratory for Scientific Computing, University of Cambridge Philip Blakely (LSC) GPU introduction 1 / 37 Course outline Introduction to GPU hardware
More informationThe BSN Hardware and Software Platform: Enabling Easy Development of Body Sensor Network Applications
The BSN Hardware and Software Platform: Enabling Easy Development of Body Sensor Network Applications Joshua Ellul jellul@imperial.ac.uk Overview Brief introduction to Body Sensor Networks BSN Hardware
More informationACE: Illustrator CC Exam Guide
Adobe Training Services Exam Guide ACE: Illustrator CC Exam Guide Adobe Training Services provides this exam guide to help prepare partners, customers, and consultants who are actively seeking accreditation
More informationThe Most Popular UI/Apps Framework For IVI on Linux
The Most Popular UI/Apps Framework For IVI on Linux About me Tasuku Suzuki Qt Engineer Qt, Developer Experience and Marketing, Nokia Have been using Qt since 2002 Joined Trolltech in 2006 Nokia since 2008
More information2D Art and Animation. [ COGS Meeting 02/18/2015 ] [ Andrew ]
2D Art and Animation [ COGS Meeting 02/18/2015 ] [ Andrew ] Raster Art Vector Art Pixel Art Types of Images Raster Art These are the standard image types you re familiar with: PNG, JPEG, BMP, etc. Internally
More informationVisualization à la Unix TM
Visualization à la Unix TM Hans-Peter Bischof (hpb [at] cs.rit.edu) Department of Computer Science Golisano College of Computing and Information Sciences Rochester Institute of Technology One Lomb Memorial
More informationFlash Is Your Friend An introductory level guide for getting acquainted with Flash
Flash Is Your Friend An introductory level guide for getting acquainted with Flash by Tom Krupka A Brief History: Adobe Flash, which was previously called Macromedia Flash, is a set of multimedia technologies
More informationQuickSpecs. NVIDIA Quadro K5200 8GB Graphics INTRODUCTION. NVIDIA Quadro K5200 8GB Graphics. Technical Specifications
J3G90AA INTRODUCTION The NVIDIA Quadro K5200 gives you amazing application performance and capability, making it faster and easier to accelerate 3D models, render complex scenes, and simulate large datasets.
More informationNVIDIA IndeX Enabling Interactive and Scalable Visualization for Large Data Marc Nienhaus, NVIDIA IndeX Engineering Manager and Chief Architect
SIGGRAPH 2013 Shaping the Future of Visual Computing NVIDIA IndeX Enabling Interactive and Scalable Visualization for Large Data Marc Nienhaus, NVIDIA IndeX Engineering Manager and Chief Architect NVIDIA
More informationInteractive Visualization of Genomic Data
Interactive Visualization of Genomic Data Interfacing Qt and R Michael Lawrence November 17, 2010 1 Introduction 2 Qt-based Interactive Graphics Canvas Design Implementation 3 Looking Forward: Integration
More informationVirtualization with VMWare
Virtualization with VMWare When it comes to choosing virtualization solutions for your business, you need to choose a company that you can trust. Out of all the respected virtualization solutions available,
More informationGenerate Android App
Generate Android App This paper describes how someone with no programming experience can generate an Android application in minutes without writing any code. The application, also called an APK file can
More informationIDL. Get the answers you need from your data. IDL
Get the answers you need from your data. IDL is the preferred computing environment for understanding complex data through interactive visualization and analysis. IDL Powerful visualization. Interactive
More informationStream Processing on GPUs Using Distributed Multimedia Middleware
Stream Processing on GPUs Using Distributed Multimedia Middleware Michael Repplinger 1,2, and Philipp Slusallek 1,2 1 Computer Graphics Lab, Saarland University, Saarbrücken, Germany 2 German Research
More informationFastboot Techniques for x86 Architectures. Marcus Bortel Field Application Engineer QNX Software Systems
Fastboot Techniques for x86 Architectures Marcus Bortel Field Application Engineer QNX Software Systems Agenda Introduction BIOS and BIOS boot time Fastboot versus BIOS? Fastboot time Customizing the boot
More informationTips & Tricks Using HP Designjet Printers with AutoCAD Applications
Tips & Tricks Using HP Designjet Printers with AutoCAD Applications 2009 Hewlett-Packard Development Company, L.P. Printing to HP Designjet printers... 3 Choosing the right driver... 3 Using plotter configuration
More informationComparison of Open Source Virtual Globes
FOSS4G 2010 Comparison of Open Source Virtual Globes Mathias Walker Pirmin Kalberer Sourcepole AG, Bad Ragaz www.sourcepole.ch About Sourcepole GIS-Knoppix: first GIS live-cd QGIS Core developer QGIS Mapserver
More informationDevelopment of Java ME
Y39PDA Development of Java ME application České vysoké učení technické v Praze Fakulta Elektrotechnická Content What is Java ME Low Level a High Level API What is JSR LBS Java ME app. life-cycle 2/29 Is
More informationProgramming Languages & Tools
4 Programming Languages & Tools Almost any programming language one is familiar with can be used for computational work (despite the fact that some people believe strongly that their own favorite programming
More informationINSTALLATION GUIDE ENTERPRISE DYNAMICS 9.0
INSTALLATION GUIDE ENTERPRISE DYNAMICS 9.0 PLEASE NOTE PRIOR TO INSTALLING On Windows 8, Windows 7 and Windows Vista you must have Administrator rights to install the software. Installing Enterprise Dynamics
More informationQuickSpecs. NVIDIA Quadro K5200 8GB Graphics INTRODUCTION. NVIDIA Quadro K5200 8GB Graphics. Overview. NVIDIA Quadro K5200 8GB Graphics J3G90AA
Overview J3G90AA INTRODUCTION The NVIDIA Quadro K5200 gives you amazing application performance and capability, making it faster and easier to accelerate 3D models, render complex scenes, and simulate
More informationMMGD0203 Multimedia Design MMGD0203 MULTIMEDIA DESIGN. Chapter 3 Graphics and Animations
MMGD0203 MULTIMEDIA DESIGN Chapter 3 Graphics and Animations 1 Topics: Definition of Graphics Why use Graphics? Graphics Categories Graphics Qualities File Formats Types of Graphics Graphic File Size Introduction
More informationA Modular Approach to Teaching Mobile APPS Development
2014 Hawaii University International Conferences Science, Technology, Engineering, Math & Education June 16, 17, & 18 2014 Ala Moana Hotel, Honolulu, Hawaii A Modular Approach to Teaching Mobile APPS Development
More informationECWM511 MOBILE APPLICATION DEVELOPMENT Lecture 1: Introduction to Android
Why Android? ECWM511 MOBILE APPLICATION DEVELOPMENT Lecture 1: Introduction to Android Dr Dimitris C. Dracopoulos A truly open, free development platform based on Linux and open source A component-based
More informationMinueto, a Game Development Framework for Teaching Object- Oriented Software Design Techniques
Minueto, a Game Development Framework for Teaching Object- Oriented Software Design Techniques Alexandre Denault Jörg Kienzle School of Computer Science, McGill University This paper presents Minueto,
More informationGraphical Processing Units to Accelerate Orthorectification, Atmospheric Correction and Transformations for Big Data
Graphical Processing Units to Accelerate Orthorectification, Atmospheric Correction and Transformations for Big Data Amanda O Connor, Bryan Justice, and A. Thomas Harris IN52A. Big Data in the Geosciences:
More informationFreescale Semiconductor, I
nc. Application Note 6/2002 8-Bit Software Development Kit By Jiri Ryba Introduction 8-Bit SDK Overview This application note describes the features and advantages of the 8-bit SDK (software development
More informationGETTING STARTED WITH ANDROID DEVELOPMENT FOR EMBEDDED SYSTEMS
Embedded Systems White Paper GETTING STARTED WITH ANDROID DEVELOPMENT FOR EMBEDDED SYSTEMS September 2009 ABSTRACT Android is an open source platform built by Google that includes an operating system,
More informationMiniDraw Introducing a framework... and a few patterns
MiniDraw Introducing a framework... and a few patterns What is it? [Demo] 2 1 What do I get? MiniDraw helps you building apps that have 2D image based graphics GIF files Optimized repainting Direct manipulation
More informationComputers Are Your Future Eleventh Edition Chapter 5: Application Software: Tools for Productivity
Computers Are Your Future Eleventh Edition Chapter 5: Application Software: Tools for Productivity Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall 1 All rights reserved. No part of this
More informationAdvanced analytics at your hands
2.3 Advanced analytics at your hands Neural Designer is the most powerful predictive analytics software. It uses innovative neural networks techniques to provide data scientists with results in a way previously
More informationVisualization @ SUN. Linda Fellingham, Ph. D Manager, Visualization and Graphics Sun Microsystems
Visualization @ SUN Shared Visualization 1.1 Software Scalable Visualization 1.1 Solutions Linda Fellingham, Ph. D Manager, Visualization and Graphics Sun Microsystems The Data Tsunami Visualization is
More informationIntegrated Open-Source Geophysical Processing and Visualization
Integrated Open-Source Geophysical Processing and Visualization Glenn Chubak* University of Saskatchewan, Saskatoon, Saskatchewan, Canada gdc178@mail.usask.ca and Igor Morozov University of Saskatchewan,
More informationShader Model 3.0. Ashu Rege. NVIDIA Developer Technology Group
Shader Model 3.0 Ashu Rege NVIDIA Developer Technology Group Talk Outline Quick Intro GeForce 6 Series (NV4X family) New Vertex Shader Features Vertex Texture Fetch Longer Programs and Dynamic Flow Control
More informationQuickSpecs. NVIDIA Quadro M6000 12GB Graphics INTRODUCTION. NVIDIA Quadro M6000 12GB Graphics. Overview
Overview L2K02AA INTRODUCTION Push the frontier of graphics processing with the new NVIDIA Quadro M6000 12GB graphics card. The Quadro M6000 features the top of the line member of the latest NVIDIA Maxwell-based
More informationWhat is ArcGIS Comprised Of?
ArcGIS Server 9.1 What is ArcGIS Comprised Of? ArcGIS Desktop Integrated suite of GIS applications ArcGIS Engine Embeddable developer components Server GIS ArcSDE, ArcIMS, ArcGIS Server Mobile GIS ArcPad
More informationArcGIS Pro. James Tedrick, Esri
ArcGIS Pro James Tedrick, Esri What you already know Why ArcGIS PRO? Vision The next generation ArcGIS desktop application for the GIS community who need a clean and comprehensive user experience which
More informationAbout Parallels Desktop 7 for Mac
About Parallels Desktop 7 for Mac Parallels Desktop 7 for Mac is a major upgrade to Parallels' award-winning software for running Windows on a Mac. About this Update This update for Parallels Desktop for
More informationTable of Content RELEASE INFORMATION... 2 ORDERING AND INSTALLATION... 3 CHANGES IN CUTTING POWERPAC 5.15.00.01... 4
Table of Content 1/6 RELEASE INFORMATION... 2 Release Name... 2 Release Information... 2 Release Time... 2 ORDERING AND INSTALLATION... 3 Supported Platforms... 3 Required Software... 3 Supported Operating
More informationANDROID DEVELOPER TOOLS TRAINING GTC 2014. Sébastien Dominé, NVIDIA
ANDROID DEVELOPER TOOLS TRAINING GTC 2014 Sébastien Dominé, NVIDIA AGENDA NVIDIA Developer Tools Introduction Multi-core CPU tools Graphics Developer Tools Compute Developer Tools NVIDIA Developer Tools
More informationGUI GRAPHICS AND USER INTERFACES. Welcome to GUI! Mechanics. Mihail Gaianu 26/02/2014 1
Welcome to GUI! Mechanics 26/02/2014 1 Requirements Info If you don t know C++, you CAN take this class additional time investment required early on GUI Java to C++ transition tutorial on course website
More informationAutodesk Inventor on the Macintosh
Autodesk Inventor on the Macintosh FREQUENTLY ASKED QUESTIONS 1. Can I install Autodesk Inventor on a Mac? 2. What is Boot Camp? 3. What is Parallels? 4. How does Boot Camp differ from Virtualization?
More informationCatDV Pro Workgroup Serve r
Architectural Overview CatDV Pro Workgroup Server Square Box Systems Ltd May 2003 The CatDV Pro client application is a standalone desktop application, providing video logging and media cataloging capability
More informationSTART TEACHER'S GUIDE
START TEACHER'S GUIDE Introduction A complete summary of the GAME:IT Junior curriculum. Welcome to STEM Fuse's GAME:IT Junior Course Whether GAME:IT Junior is being taught as an introductory technology
More informationIntroduction to GPGPU. Tiziano Diamanti t.diamanti@cineca.it
t.diamanti@cineca.it Agenda From GPUs to GPGPUs GPGPU architecture CUDA programming model Perspective projection Vectors that connect the vanishing point to every point of the 3D model will intersecate
More informationEclipse Exam Scripting
Static Analysis For Improved Application Performance And Quality Eric Cloninger (ericc@motorola.com) Product Line Manager, Development Tools Motorola Mobility Housekeeping bit.ly bundle for all content
More informationIBM Deep Computing Visualization Offering
P - 271 IBM Deep Computing Visualization Offering Parijat Sharma, Infrastructure Solution Architect, IBM India Pvt Ltd. email: parijatsharma@in.ibm.com Summary Deep Computing Visualization in Oil & Gas
More informationDesktop Virtualization. The back-end
Desktop Virtualization The back-end Will desktop virtualization really fit every user? Cost? Scalability? User Experience? Beyond VDI with FlexCast Mobile users Guest workers Office workers Remote workers
More informationPlanning Your Installation or Upgrade
Planning Your Installation or Upgrade Overview This chapter contains information to help you decide what kind of Kingdom installation and database configuration is best for you. If you are upgrading your
More informationWHAT WOULD IT MEAN IF YOU COULD VISUALISE ALL YOUR DATA IN LESS THAN A SECOND FROM WHEREVER YOU ARE?
WHAT WOULD IT MEAN IF YOU COULD VISUALISE ALL YOUR DATA IN LESS THAN A SECOND FROM WHEREVER YOU ARE? ACCURATE, REAL-TIME 3D DATA VISUALISATION. Geoverse delivers instant, interactive access to your entire
More informationArcGIS ArcMap: Printing, Exporting, and ArcPress
Esri International User Conference San Diego, California Technical Workshops July 25th, 2012 ArcGIS ArcMap: Printing, Exporting, and ArcPress Michael Grossman Jeremy Wright Workshop Overview Output in
More informationNinJo Project Status June 2004 DWD. NinJo Project Status. The NinJo Team at the last team meeting. Status of Software Development
NinJo Project Status June 2004 NinJo Project Status The NinJo Team at the last team meeting Overview User Input Layers Diagram based applications Servers Batch Hard- and Software-Benchmarks NinJo Hardware
More informationTeaching Introductory Computer Graphics Via Ray Tracing
Teaching Introductory Computer Graphics Via Ray Tracing Helen H. Hu Westminster College, Salt Lake City, UT hhu@westminstercollege.edu Figure 1. Examples of student work. For fun, enthusiastic students
More informationMasters of Science in Software & Information Systems
Masters of Science in Software & Information Systems To be developed and delivered in conjunction with Regis University, School for Professional Studies Graphics Programming December, 2005 1 Table of Contents
More information