[Images/tutorial.gif]

Table of Contents

Introduction

Introduction to Khoros Programming

Program 1 - A simple kroutine to convert from a specific (simple) format to KDF

Program 2 - A kroutine to process color images

Program 3 - A program which processes an image plane by plane

Program 4 - A kroutine with an associated library

Code Snippets - Introduction to the Polymorphic Data Model and Polymorphic Data Services

Code Snippets - More examples for PDM and PDS

Code Snippets - General Functions

Code Snippets - Having fun with Geometry Services

Making things run faster

Debugging Khoros code

A Small Guide to what can go wrong with Khoros programs.

Index

[bar]

Table of Figures

In Chapter Introduction:

Craftsman with a toolbox selected
Toolbox attributes, Dependencies pane.
Toolbox attributes, Dependencies pane after adding a dependency.

In Chapter Introduction to Khoros Programming:

Craftsman's window (1)
Craftsman: creating a new toolbox
Craftsman: creating a new toolbox (filled)

In Chapter Program 1 - A simple kroutine to convert from a specific (simple) format to KDF:

Creating a new object in a toolbox
Creating a new object in a toolbox (filled)
Composer editing the tutconvert kroutine
Guise Controls
Initial pane for the tutconvert kroutine
Pane for the tutconvert kroutine after adding a flag toggle variable
Toggle Selection Menuform
Set values window - default
Set values window - filled with our choices
Set values window - filled with descriptions of our choices
Toggle Selection Menuform filled with our choices
Pane for the tutconvert kroutine after edition
Composer commands
Source codes in Composer
A cantata workspace for the program 1 in the tutorial

In Chapter Program 2 - A kroutine to process color images:

Craftsman's window (2)
Creating another new kroutine in a toolbox
Creating another new kroutine in a toolbox (filled)
Craftsman showing tutorial toolbox with two objects
Composer window with the second program
Initial pane for the tutcolorop kroutine
Tutcolorop pane with three integers
Menuform for the integer variables
Filled menuform for the variable Bias R
Final pane for the tutcolorop kroutine
Composer command windows after generating code for the tutcolorop kroutine
The output for the composer commands window after compiling the second program
A cantata workspace for the second program in the tutorial

In Chapter Program 3 - A program which processes an image plane by plane:

Craftsman's window (3)
Creating a third kroutine in a toolbox
Creating a third kroutine in a toolbox (filled)
Craftsman showing tutorial toolbox with three objects
Composer window with the third program
Initial pane for the tutsimpletexture kroutine
Pane for the tutsimpletexture kroutine with a list added
List Selection Menuform for a list for the tutsimpletexture kroutine
Changing the list elements titles for the tutsimpletexture kroutine
Changing the list elements titles for the tutsimpletexture kroutine - changed
List Selection Menuform for a list for the tutsimpletexture kroutine - filled
Dialog box asking the number of toggles
Pane for the tutsimpletexture kroutine with list and toggle added
Toggle selection menuform for the tutsimpletexture pane
Toggle strings for the tutsimpletexture pane - empty
Toggle strings for the tutsimpletexture pane - filled
Toggle strings descriptions for the tutsimpletexture pane - filled
Toggle selection menuform for the tutsimpletexture pane - filled
Finished pane for the tutsimpletexture kroutine
A cantata workspace for the third program in this tutorial

In Chapter Program 4 - A kroutine with an associated library:

A kroutine without a lkroutine
A kroutine with a lkroutine
Craftsman's window (4)
Creating a fourth kroutine in a toolbox
Creating a fourth kroutine in a toolbox (filled)
Dialog window - creating a new library in the toolbox
Dialog window - making the toolbox dependent on the library
Info window - library created
Craftsman's window with the fourth object on it
Composer window with the fourth program
Initial pane for the tutsobel kroutine
Adding a toggle to the tutsobel UIS
Pane for the tutsobel kroutine with a toggle added
Menuform for the toggle for the tutsobel kroutine
Strings for the toggle for the tutsobel kroutine
Strings for the toggle for the tutsobel kroutine (filled)
Strings for the toggle for the tutsobel kroutine (descriptions)
Menuform for the toggle for the tutsobel kroutine (after editing)
Pane for the tutsobel kroutine with the second toggle added
Toggle strings for the tutsobel pane (border action) - filled
Toggle strings descriptions for the tutsobel pane (border action) - filled
Second toggle selection menuform for the tutsobel pane - filled
Finished pane for the tutsobel kroutine
Composer showing the source objects for the fourth program
Composer command window (kroutine with a lkroutine)
A Cantata workspace for the fourth program in the tutorial

In Chapter Code Snippets - Introduction to the Polymorphic Data Model and Polymorphic Data Services:

5 dimensions of the Polymorphic Data Model
Storing a signal in the PDM
Storing a signal from multiple sources in the PDM
Storing a gray-level image in the PDM
Storing a color image without a colormap in the PDM
Storing a color image with a colormap in the PDM
Storing a color animation without a colormap in the PDM
Storing a gray-level image with some regions marked as non-valid in the PDM
Storing a volume in the PDM

In Chapter Code Snippets - Having fun with Geometry Services:

A workspace to render the geometry data
Rendering of some spheres
Rendering of some spheres with different colors
Rendering of some spheres with different colors and transparencies
Rendering of some disconnected lines
Rendering of some text

[bar]

These pages copyright © Rafael Santos (e-mail valid until March 1998). Please let me know if this tutorial is useful for you, I need to justify the time I used to develop it. Comments, requests and bug reports are also welcome, but please see the section Before you e-mail me...

[bar2]

Khoros copyright © Khoral Research, Inc. (KRI) - run klicense for more information.
Khoral Research Inc. is not responsible for or is supervising these pages.

[bar2]

The latest version of this document can be found at Ejima Lab Khoros Pages at Kyushu Institute of Technology, Japan (until March 1998).
Mirrors for this tutorial can be found at Universidade do Vale do Paraíba, Brasil and PUC/RS, Brasil.

[bar2]

Generated with StructHTML, 14:18 August 30, 1997