PiXCL 10 Quick Tour

Welcome to the quick tour of PiXCL 10, the image acquisition, display, processing and analysis language development solution for Windows 10.

PiXCL 10 Downloading and Installation...

PiXCL 10 is completely free as soon as you register as a user .


What does writing a utility or application with PiXCL offer you ?

This is esspecially so for imaging and image processing applications, because of the high level, self documenting nature of the PiXCL syntax. For example, to display any of the 15 supported bitmap formats in the client area, create and position a histogram, and report the filename to a statusbar pane each require one line of code:

 
DrawBitmap(10,10,ImageName$)
Histogram(300,50,POPUP,Handle,NONCUM, ExtraTitleData$,Hist_ID)
DrawStatusWinText(3,ImageName$)

PiXCL will look in its local memory list for the bitmap file, and if not found, will automatically identify the image format, load it from the disk and draw it in the client area. The histogram is calculated from the bitmap loaded into memory.

These include commands for dynamic color composite creation and channel replacement, and transparent overlay using any of the fifteen supported bitmap formats.

PiXCL also provides direct command support for TWAIN-compatible image input devices such as scanners, digital cameras, USB video cams, and can accept input from digitizer tables or other devices attached to a serial port.

Coupled with the image processing functions are color space and pixel depth adjustment functions, and the ability to automate image file format conversion, resampling and resizing, and output to printers.

Click here for a full list of the image processing functions.

Useful program development requires both, and PiXCL includes 26 string handling functions that can solve just about any problem, plus 34 integer and floating point math operations and standard math library functions (trig and trancendentals).

With If-Else-Endif, For-Next, While-EndWhile, Switch-Case, GoSub and GoTo operations, you can write well documented and understandable code that will be easy to maintain.

All the necessary functions are available to create, move, rename and delete files and directories, using the standard Windows dialogs where appropriate. You can read and write INI files, standard ASCII files and binary files to fully control your PiXCL applications, and other applications as well. You can also print files and bitmaps as needed.

A useful Windows program will require access to the Registry for storage of operating parameters like main window position, recent file lists, popup window position, pen and brush colors and similar.

When you need to access or update other application parameters, you have to access the Registry.

If you have different needs at different times for the same program, you can write a PiXCL application that starts the program with the desired parameters.

A PiXCL program lets you control any main application window so your PiXCL programs can be closely integrated with your other software. You can close, move, hide, restore and if you want, rename a window. You can list the child windows of many applications as well.

PiXCL can create and control windows on multiple monitor screens.

A PiXCL program will work at some level with just about any other Windows application. This can as simple as ASCII transfers via the clipboard, sending virtual keystrokes, or via COM if the other application is an Automation server. For example, PiXCL can become an Automation client with MS-Office applications such as Word and Excel. That is, a PiXCL application can start up Excel, and cause it to create worksheets and results tables with images, under direct program control.

You can also pass messages among several running PiXCL applications to have them process according to specific programmed events in other application processes. You can also write programs in C/C++/C# (e.g. additional image processing or math functions) that can simply communicate with a PiXCL process, providing a means to extend the capabilities of PiXCL.

One simple command, WinHelp, with argument variations enables you to access any topic in any help file. For example, if you use PiXCL to write a helper application for another program, you can access the other program's help files by setting the Topic string you need. If you are familiar with Help macros, you can also create these in a PiXCL program and run them in the Help file.

PiXCL is fully compatible with Help files written in HTML / JavaScript / VBscript that is displayed in a browser. With a bit of programming effort, you can create HTML / JavaScript / VBscript within a PiXCL application and pass it to a browser.

You can create a completely autonomous EXE program, named as you require, with the PiXCL Compiler. If you want to build a large application on a CD, DVD or USB stick, PiXCL can run completely from it and still provide all the image display and image processing options.

Most other Windows scripting languages require a separate player or interpreter program. This includes HTML / JavaScript / VBscript based programs that need a browser.

We have been developing and extending PiXCL since 1992, and have government, commercial and university clients in Canada, USA, Europe, Japan, Saudi Arabia and Australia using our image processing and language related software. We are committed to answering most technical support enquiries from our registered users within two to three business days, and we welcome requests for additional functionality.


Creating a PiXCL source file...

Let's start with the PiXCL Code Studio. A snapshot is loading in your browser below. The PiXCL Code Studio simply integrates program code development, context sensitive help for commands and user manual, testing, debugging and final EXE production.


PiXCL Code Editor snapshot

Looking at the snapshot, you can see that two PiXCL sources are open for editting. Also shown are the visual Helper application windows used to assist in creating Toolbar, ToolWindow, MessageBox commands, and commands needing RGB color codes e.g. UsePen, UseBrush, UseFont, UseBackground . This Helper application is written in PiXCL, and the source code is provided so you can extend it to support your own needs. You are encouraged to write your own Helper applications as well.

Toolbar buttons on the PIXCL Code Studio

Code Studio Toolbar Buttons

The toolbar buttons, which include tooltips as shown above, provide immediate access to test and debug your programs, build the Runtime EXE files, and provide context sensitive command reference into the Help files. Code Studio Window position and the current working project directory are stored in the Registry so you can pick up a project where you left off.

PiXCL source files are created, opened, saved and printed with the new open save print buttons, as you are familiar with in many other text editor programs.

Once you have set a working directory from the working directory button , you can start creating your PiXCL programs. There is a wide variety of sample programs that come with PiXCL, and it is very easy to cut and paste blocks of code between documents.

The PiXCL Code Studio has essentially the same edit functions as NotePad, but provides these as edit button functions as well, so you will find that using the source code editor is very familiar. The major extension is the MDI feature, and the way on-line help is accessed.

When you need to look up a PiXCL command syntax, you can either press the PiXCL help button to search the Help index for the command keyword, or if you know the keyword, highlight it in the source code, and press the F1 key. This will start the help and jump to the specific command reference topic.

The PiXCL Code Studio can be used to edit any unformatted text file, including HTML code.

There are also ten user programmable buttons, icon button for an Icon handler tool, paint button for a paint program, six helper#1 
button buttons for additional PiXCL Helper applications or other utilities you may wish to use. To use the icon handler, paint program or helper application of your choice, you fill out a File:Preferences dialog box with the location of the tool in your system. For example, you could set the paint tool button to MS-Paint, but you may prefer to use something more comprehensive like PaintShopPro or Photoshop. The selected tools are stored in the Registry so they are available each time you start the Code Studio Editor.

You could also set the Helper#1 button to start the Helper Application (above), which could in turn start any number of additional utilities or Help files.

Testing and Debugging...

To test a script, you simply save the script file, then press the the test button to invoke the PiXCL interpreter. If the interpreter finds a syntax error, it displays an error message which is largely self explanatory. More detail can be looked up in the Help file if desired.

To make an EXE file, press the make EXE button to invoke the PiXCL Compiler. Answer a few questions and you have the EXE file ready to run.


OK ... let's look at some sample program snapshots ...

PiXCL includes the most commonly needed dialog boxes built-in, and makes use of the Windows common dialog and common controls you see in every Windows application.

PiXCL provides you all the commonly used Windows user interface functions. In the snapshots loading below, you will see menus, toolbars and toolwindows with tooltips, buttons in various styles, plus edit controls and comboboxes.

Hokkaido overlays

This example show the toolbars, floating toolwindows, and right mouse popup menus available in PiXCL. Toolbars and Toolwindows support tooltip description display when the mouse hovers over a button. If you work with remote sensing and GIS data sets, there is also built-in support for transparent overlay of images using any of the 14 supported bitmap formats. You can also connect digitizing tables to serial ports and input co-ordinate data to a PiXCL program.


interactive legend displays

This application was created using image display, transparent class overlay and grid overlay. Legend colors can be solid, for the classes, or can be interactively grabbed from the displayed image and stored on disk as a pattern. A text description is entered into a dialog box, for immediate display. Legend details can be saved into an INI type file, or a formatted ASCII file as desired. Some or all of the client area can be saved into a bitmap in any of the supported writable formats. The code that displays this image was developed in about 3 hours.


Acquire images from TWAIN devices

PiXCL supports image acquisition from all TWAIN-compatible devices e.g. USB scanners, digital cameras and frame grabbers. If your TWAIN driver supports UI-off mode (most do, but not all), you can turn off the user interface and acquire images in batch mode, and control your TWAIN device directly.


image processing functions

This application snapshot shows some of the image processing programmability possible with PiXCL. Image processing matrix operations include programmable emboss and edge-detect levels. Geometric operations include resample, resize, rotate, skew and affine transform. Images can be loaded in one format, processed, and saved back to disk in other formats and other colorspaces if you want. The push buttons, radio buttons and edit controls provide you with the means to enter text into, and control, your program. The source file that creates this program is 18KB in length, and took an experienced PiXCL programmer about four hours from concept to completion of the working EXE file.

PiXCL supports trackbar controls that can be used to interact with the image processing commands such as TuneImage, to adjust brightness and contrast, or Red, Green and Blue levels. Trackbars can be in various styles, and can also horizontally and vertically displayed.


When you need more detailed image statistics display, you can create and display popup histograms and scan line profiles under program control. Histograms can be displayed in either non-cumulative or cumulative mode, and if you process an image, for example with a normalization function, you can automatically update the histogram.

 profiling pixels and displaying histograms


PiXCL 10 is available now. You will need your user ID code and password to access the download area. If you have an older PiXCL 4/5/6/8 code/password, email us with these and we will issue you new ones for PiXCL 10.

PiXCL 10 is completely free as soon as you register as a user.

Copyright 2011-2019 PiXCL Automation Technologies Inc, CANADA. All Rights Reserved.