The Use of Tcl/Tk in the Anatlab Virtual Anatomy Laboratory
Total Page:16
File Type:pdf, Size:1020Kb
Load more
Recommended publications
-
The Flightgear Manual
The FlightGear Manual Michael Basler, Martin Spott, Stuart Buchanan, Jon Berndt, Bernhard Buckel, Cameron Moore, Curt Olson, Dave Perry, Michael Selig, Darrell Walisser, and others The FlightGear Manual February 22, 2010 For FlightGear version 2.0.0 2 Contents 0.1 Condensed Reading.........................6 0.2 Instructions For the Truly Impatient................6 0.3 Further Reading...........................6 I Installation9 1 Want to have a free flight? Take FlightGear! 11 1.1 Yet Another Flight Simulator?................... 11 1.2 System Requirements........................ 14 1.3 Choosing A Version......................... 15 1.4 Flight Dynamics Models...................... 16 1.5 About This Guide.......................... 16 2 Preflight: Installing FlightGear 19 2.1 Installing scenery.......................... 19 2.1.1 MS Windows Vista/7.................... 20 2.1.2 Mac OS X......................... 20 2.1.3 FG_SCENERY....................... 20 2.1.4 Fetch Scenery as you fly.................. 21 2.1.5 Creating your own Scenery................. 22 2.2 Installing aircraft.......................... 22 2.3 Installing documentation...................... 22 II Flying with FlightGear 25 3 Takeoff: How to start the program 27 3.1 Environment Variables....................... 27 3.1.1 FG_ROOT......................... 27 3.1.2 FG_SCENERY....................... 27 3.1.3 Environment Variables on Windows and Mac OS X.... 27 3.2 Launching the simulator under Unix/Linux............ 28 3.3 Launching the simulator under Windows.............. 29 3.3.1 Launching from the command line............. 30 3 4 CONTENTS 3.4 Launching the simulator under Mac OS X............. 30 3.4.1 Selecting an aircraft and an airport............. 31 3.4.2 Enabling on-the-fly scenery downloading......... 31 3.4.3 Enabling Navigation Map (Atlas)............ -
Starkits 22 II
CHAPTER 22 Tclkit and Starkits 22 II. Advanced Tcl Tclkit is a version of the Tcl/Tk interpreter that is designed to make packaging and deployment of Tcl applications easy. Tclkit includes Tcl/Tk, [incr Tcl], the Metakit database, and TclVFS. A Starkit is a special file that contains all the scripts and supporting files you need for your Tcl application. This chapter describes how to package and deploy your application as a Starkit. This Chapter is from Practical Programming in Tcl and Tk, 4th Ed. Copyright 2003 © Brent Welch http://www.beedub.com/book/ Tclkit was created by Jean-Claude Wip- pler as a way to make deploying Tcl applications easier. Tclkit is an extended Tcl interpreter that includes the Metakit database, the [incr Tcl] object-oriented sys- tem, and a Virtual File System (VFS). The database is cleverly stored as part of the Tclkit application itself, and the VFS interface is used to make the database look like a private filesystem. Tclkit puts all the scripts normally associated with Tcl and its extensions into this database. The result is a self-contained, single file distribution of Tcl that includes extensions for your GUI, object-oriented pro- gramming, a database, and a few other goodies. Metakit is a fast, transactional database with a simple programming API. Like Tcl, Metakit is a compact, efficient library designed to be embedded into applications. The Tcl interface to Metakit gives you a simple, easy way to manip- ulate persistent data. Although you do not have to program Metakit directly when using Starkits, this Chapter does provide a short introduction to using Metakit to store data for your application. -
Abstract Window Toolkit Overview
In this chapter: • Components • Peers 1 • Layouts • Containers • And the Rest • Summary Abstract Window Toolkit Overview For years, programmers have had to go through the hassles of porting software from BSD-based UNIX to System V Release 4–based UNIX, from OpenWindows to Motif, from PC to UNIX to Macintosh (or some combination thereof), and between various other alternatives, too numerous to mention. Getting an applica- tion to work was only part of the problem; you also had to port it to all the plat- forms you supported, which often took more time than the development effort itself. In the UNIX world, standards like POSIX and X made it easier to move appli- cations between different UNIX platforms. But they only solved part of the prob- lem and didn’t provide any help with the PC world. Portability became even more important as the Internet grew. The goal was clear: wouldn’t it be great if you could just move applications between different operating environments without worr yingabout the software breaking because of a different operating system, win- dowing environment, or internal data representation? In the spring of 1995, Sun Microsystems announced Java, which claimed to solve this dilemma. What started out as a dancing penguin (or Star Trek communicator) named Duke on remote controls for interactive television has become a new paradigm for programming on the Internet. With Java, you can create a program on one platform and deliver the compilation output (byte-codes/class files) to ever yother supported environment without recompiling or worrying about the local windowing environment, word size, or byte order. -
Drawing in GTK+
CSci493.70 Graphical User Interface Programming Prof. Stewart Weiss Drawing in GTK+ Drawing in GTK+ Background In order to understand how to draw in GTK, you rst have to understand something about how GTK draws widgets, because how GTK draws widgets has an important role in how you design your drawing application. An understanding of how GTK draws widgets is also required if you ever plan to build your own custom widgets. Windows and Clipping Most windowing systems are designed around the idea that an application's visual display lies within a rectangular region on the screen called its window. The windowing system, e.g. Gnome or KDE or Explorer, does not automatically save the graphical content of an application's windows; instead it asks the application itself to repaint 1 its windows whenever it is needed. For example, if a window that is stacked below other windows gets raised to the top, then a client program has to repaint the area that was previously obscured. When the windowing system asks a client program to redraw part of a window, it sends an exposure event to the program that contains that window. An exposure event is simply an event sent from the underlying windowing system to a widget to notify it that it must redraw itself. In this context, a "window" means "a rectangular region with automatic clipping", not a top-level application window. Clipping is the act of removing portions of a window that do not need to be redrawn, or looked at the other way, it is determining which are the only regions of a window that must be redrawn. -
Canvas Pocket Reference
Canvas Pocket Reference Canvas Pocket Reference David Flanagan Beijing • Cambridge • Farnham • Köln • Sebastopol • Tokyo Canvas Pocket Reference by David Flanagan Copyright © 2011 David Flanagan. All rights reserved. Printed in the United States of America. Published by O’Reilly Media, Inc., 1005 Gravenstein Highway North, Sebastopol, CA 95472. O’Reilly books may be purchased for educational, business, or sales promo- tional use. Online editions are also available for most titles (http://my.safari booksonline.com). For more information, contact our corporate/institutional sales department: (800) 998-9938 or [email protected]. Editors: Mike Loukides and Simon St. Laurent Production Editor: Teresa Elsey Proofreader: Sada Preisch Indexer: John Bickelhaupt Cover Designer: Karen Montgomery Interior Designer: David Futato Illustrator: Robert Romano Printing History: December 2010: First Edition. Nutshell Handbook, the Nutshell Handbook logo, and the O’Reilly logo are registered trademarks of O’Reilly Media, Inc. The Pocket Reference series designation, Canvas Pocket Reference, the image of a gold weaver bird, and related trade dress are trademarks of O’Reilly Media, Inc. wnload from Wow! eBook <www.wowebook.com> o D Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks. Where those designations appear in this book, and O’Reilly Media, Inc., was aware of a trademark claim, the designations have been printed in caps or initial caps. While every precaution has been taken in the preparation -
Quick Guide to Tkinter.Canvas
tkinter Reference Guide Common Usage and Functions Installation on Your Local Machine.................................. 2 Canvas Initialization .......................................... 3 The Coordinate System......................................... 3 Drawing Lines.............................................. 4 Drawing Rectangles........................................... 5 Drawing Ovals.............................................. 6 Drawing Polygons ........................................... 7 Drawing Text .............................................. 8 1 Installation on Your Local Machine It is very likely that your version of Python 3 came with tkinter already installed. You can check if your local machine has a working version of tkinter by writing and executing a simple Python program consisting of the two lines of code shown below: import tkinter tkinter._test() Upon running this program, a window similar to the one pictured below should appear. If this window appears, then you have a working version of tkinter installed and available to use in your programs! If this window does not appear, then: • Make sure that the function you called is tkinter._test(), with a period followed by an underscore as well as a set of empty parenthesis. • If you are running a version of Python 2, then upgrade your version to Python 3 (this is the standard version for 15-110). • If you cannot upgrade your version of Python, then capitalize all instances of tkinter in the above program and all programs you may write to Tkinter and try again. • -
Bioimagesuite Manual 95522 2
v2.6 c Copyright 2008 X. Papademetris, M. Jackowski, N. Rajeevan, R.T. Constable, and L.H Staib. Section of Bioimaging Sciences, Dept. of Diagnostic Radiology, Yale School of Medicine. All Rights Reserved ii Draft July 18, 2008 v2.6 Contents I A. Overview 1 1. Introduction 2 1.1. BioImage Suite Functionality . 3 1.2. BioImage Suite Software Infrastructure . 4 1.3. A Brief History . 4 2. Background 6 2.1. Applications of Medical Imaging Analysis: A Brief Overview . 6 2.2. Medical Image Processing & Analysis . 8 2.3. Software Development Related to Medical Image Analysis . 9 2.4. 3D Graphics and Volume Rendering . 11 3. Starting and Running BioImage Suite 18 3.1. Installation Overview . 18 3.2. Installation Instructions . 19 3.3. The Main BioImage Suite Menu . 22 3.4. Preferences Editor . 23 4. Application Structure 26 4.1. Application Structure Overview . 26 4.2. The File Menu . 27 4.3. The Display Menu . 31 5. Looking At Images 32 5.1. Image Formats . 32 5.2. The Viewers . 33 5.3. The Colormap Editor . 37 5.4. Coordinates for NeuroImaging . 39 5.5. Atlas Tools . 44 6. Advanced Image Visualization 47 6.1. 4D Images . 47 6.2. 3D Rendering Controls . 48 6.3. Volume Rendering . 48 6.4. Oblique Slices . 53 6.5. The Animation Tool . 54 iii Draft July 18, 2008 CONTENTS v2.6 II B. Anatomical Image Analysis 59 7. The Image Processing and Histogram Tools 60 7.1. Introduction . 60 7.2. “Image” and “Results” . 61 7.3. Histogram Control . 62 7.4. -
Tkinter GUI Programming by Example
Tkinter GUI Programming by Example Learn to create modern GUIs using Tkinter by building real-world projects in Python David Love BIRMINGHAM - MUMBAI Tkinter GUI Programming by Example Copyright © 2018 Packt Publishing All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews. Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the author, nor Packt Publishing or its dealers and distributors, will be held liable for any damages caused or alleged to have been caused directly or indirectly by this book. Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information. Commissioning Editor: Aaron Lazar Acquisition Editor: Denim Pinto Content Development Editor: Anugraha Arunagiri Technical Editor: Subhalaxmi Nadar Copy Editor: Safis Editing Project Coordinator: Ulhas Kambali Proofreader: Safis Editing Indexer: Aishwarya Gangawane Graphics: Tania Dutta Production Coordinator: Arvindkumar Gupta First published: April 2018 Production reference: 1240418 Published by Packt Publishing Ltd. Livery Place 35 Livery Street Birmingham B3 2PB, UK. ISBN 978-1-78862-748-1 www.packtpub.com mapt.io Mapt is an online digital library that gives you full access to over 5,000 books and videos, as well as industry leading tools to help you plan your personal development and advance your career. -
Swingstates: Adding State Machines to the Swing Toolkit Caroline Appert, Michel Beaudouin-Lafon
SwingStates: adding state machines to the swing toolkit Caroline Appert, Michel Beaudouin-Lafon To cite this version: Caroline Appert, Michel Beaudouin-Lafon. SwingStates: adding state machines to the swing toolkit. Symposium on User interface software and technology, 2006, Montreux, Switzerland. 10.1145/1166253.1166302. inria-00538387 HAL Id: inria-00538387 https://hal.inria.fr/inria-00538387 Submitted on 22 Nov 2010 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. SwingStates: Adding State Machines to the Swing Toolkit Caroline Appert & Michel Beaudouin-Lafon LRI (Univ. Paris-Sud & CNRS) / INRIA Futurs Bât. 490, Univ. Paris-Sud, 91405 Orsay, France [email protected], [email protected] Swing, an existing, widely used toolkit. Breaking away ABSTRACT from the traditional callback model, SwingStates uses This article describes SwingStates, a library that adds state state machines as a powerful control structure for machines to the Java Swing user interface toolkit. Unlike programming interaction. Since Newman’s seminal work traditional approaches, which use callbacks or listeners to [10], state machines have often been used to describe define interaction, state machines provide a powerful interaction but rarely to actually program it [7, 13]. -
Database Programming with Python
Database programming with Python Magnus Lyckå Thinkware AB www.thinkware.se EuroPython Conference 2004 Chalmers, Göteborg, Sweden © 2004, Magnus Lyckå In the next 30 minutes you should... ● Learn about various database solutions for Python, and what they are good for. ● Get aquainted to the Python DB-API 2.0 and see some examples of how it is used. ● Get a brief introduction to an object oriented layer on top of the DB-API. ● Get a brief introduction to the Zope Object Database (ZODB). What's a database? ● “...a logically coherent collection of data with some inherent meaning” −Fundamentals of Database Systems ● “..an information set with a regular structure” – Wikipedia ● Persistent data storage ● Structure, consistency, relationships ● Transactions (ACID, 2PC) ● Backup/Restore/Replication/Security ● Ad hoc queries – not just for one program... What's it for? ● One user – Thousands of simultaneous users ● Handheld device – Cluster of servers ● Amusement – Life support system ● Mainly lookup – Lots of transactions ● Uniform data – Widely varied kinds of data ● Simple structures – Complex relationships ● etc... Types of database systems ● Deployment ● Interface between – Embedded in application program and database – Standalone server process system ● Networked / Distributed – Dictionary-like ● Database structure – Special API – – (Hierachical/Network) Special language (SQL) – – Simple table (flat) Seamless – Relational – Object-oriented Standard modules ● Unix style dbm – anydbm, dbhash (bsddb), gdbm, dbm, dumbdbm – Embedded – Standard -
Generic Pattern Mining Via Data Mining Template Library *
Generic Pattern Mining via Data Mining Template Library ⋆ Mohammed J. Zaki, Nilanjana De, Feng Gao, Paolo Palmerini ⋆⋆, Nagender Parimi, Jeevan Pathuri, Benjarath Phoophakdee, and Joe Urban Computer Science Department, Rensselaer Polytechnic Institute, Troy NY 12180 Abstract. Frequent Pattern Mining (FPM) is a very powerful paradigm for mining informative and useful patterns in massive, complex datasets. In this paper we propose the Data Mining Template Library, a collec- tion of generic containers and algorithms for data mining, as well as persistency and database management classes. DMTL provides a sys- tematic solution to a whole class of common FPM tasks like itemset, se- quence, tree and graph mining. DMTL is extensible, scalable, and high- performance for rapid response on massive datasets. A detailed set of experiments show that DMTL is competitive with special purpose al- gorithms designed for a particular pattern type, especially as database sizes increase. 1 Introduction Frequent Pattern Mining (FPM) is a very powerful paradigm which encompasses an entire class of data mining tasks, namely those dealing with extracting infor- mative and useful patterns in massive datasets representing complex interactions between diverse entities from a variety of sources. These interactions may also span multiple-scales, as well as spatial and temporal dimensions. FPM is ideally suited for categorical datasets, which include text/hypertext data (e.g., news ar- ticles, web pages), semistructured and XML data, event or log data (e.g., network logs, web logs), biological sequences (e.g. DNA/RNA, proteins), transactional datasets, and so on. FPM techniques are able to extract patterns embedded in different subspaces within very high dimensional, massive datasets. -
Python Tkinter Canvas
PPYYTTHHOONN TTKKIINNTTEERR CCAANNVVAASS http://www.tutorialspoint.com/python/tk_canvas.htm Copyright © tutorialspoint.com The Canvas is a rectangular area intended for drawing pictures or other complex layouts. You can place graphics, text, widgets or frames on a Canvas. Syntax Here is the simple syntax to create this widget − w = Canvas ( master, option=value, ... ) Parameters: master: This represents the parent window. options: Here is the list of most commonly used options for this widget. These options can be used as key-value pairs separated by commas. Option Description bd Border width in pixels. Default is 2. bg Normal background color. confine If true thedefault, the canvas cannot be scrolled outside of the scrollregion. cursor Cursor used in the canvas like arrow, circle, dot etc. height Size of the canvas in the Y dimension. highlightcolor Color shown in the focus highlight. relief Relief specifies the type of the border. Some of the values are SUNKEN, RAISED, GROOVE, and RIDGE. scrollregion A tuple w, n, e, s that defines over how large an area the canvas can be scrolled, where w is the left side, n the top, e the right side, and s the bottom. width Size of the canvas in the X dimension. xscrollincrement If you set this option to some positive dimension, the canvas can be positioned only on multiples of that distance, and the value will be used for scrolling by scrolling units, such as when the user clicks on the arrows at the ends of a scrollbar. xscrollcommand If the canvas is scrollable, this attribute should be the .set method of the horizontal scrollbar.