Google

SECTION 2.17 - THE SHOW UNIQUE DATA VIEW-OBJECT ROUTINES

2.17.1 INTRODUCTION

The show unique view-object is used to give a pictorial representation of sections of the reciprocal lattice showing the unique data and which parts of that data have been measured (or potentially measured) for simulated data,

The following sets of routines are available:

Creating and Handling a Show Unique Data View-Object

2.17.2 CREATING AND HANDLING A SHOW UNIQUE DATA VIEW-OBJECT

2.17.2.1 Introduction

The following routines are available:

Create a show unique view-object - xdl_show_unq
Return selected spot position - xdl_show_unq_getdata

2.17.2.2 Create a show unique view-object - xdl_show_unq

This routine is used to create a view-object for showing the coverage of the reciprocal space unique data.
 
Fortran call:
 
         CALL XDLF_SHOW_UNQ (IVH, IVHPARENT, IX, IY, ICSET, IRAD,
        +                    MINDX_UNQ, DSTMAX, BMATR, 
        +                    XDLSTR(TITLE), LENT, MINW, MINH, IERR)
 
Parameters:
 
IVH        (R)   View-object handle (see vh)
IVHPARENT  (R)   View-object handle for parent 0=none 
                 (see vh_parent)
IX         (R)   X position (may be -1 if no parent) (see x)
IY         (R)   Y position (may be -1 if no parent) (see y)
ICSET      (R)   Colorset number (see cset)
ISIZE      (R)   Half width/height for displayed pattern in 
                 pixels (see size)
MINDX_UNQ  (R)   Index to unique data list (unq.c functions)
                 (preferably sorted on 'l' to give much better
                 performance)
DSTMAX     (R)   Maximum value of d*
BMATR(3,3) (R)   Orthogonalising 'B' matrix (Fortran order
                 BMATR(1,1) BMATR(2,1) BMATR(3,1) BMATR(1,2)...)
TITLE      (R)   Title string (max 120 characters)
                 ** Pass address using the XDLSTR function **
LENT       (R)   Length of title string
MINW       (R)   Minimum width for view-object or 0 
                 (see min_width)
MINH       (R)   Minimum height for view-object or 0 
                 (see min_height)
IERR       (W)   Returns status from xdl_show_unq call
 
'C' call:
 
int xdl_show_unq (int vh, int vh_parent, int x, int y, int cset, int size, 
                  int mindx_unq, float dstmax, float bmatr[3][3], 
                  char * title, int lent, int min_width, int min_height)
 
Parameters:
 
int       vh;             User selected view-object handle (R)
int       vh_parent;      View-object handle for the parent base frame, 
                          if 0 then a base  level frame is created to
                          enclose the view-object (R)
int       x;              x coordinate for the view-object.
                          If no parent may be -1 to give default x (R)
int       y;              y coordinate for the view-object.
                          If no parent may be -1 to give default y (R)
int       cset;           Number of the colorset to be used; needs
                          at least 8 colorcells allocated  (R) 
int       size;           Pattern display area half width/height in
                          pixels (R)
int       mindx_unq;      Index to unique data list (see unq.c functions) 
                          preferably sorted on 'l' as this will give
                          much better performance (R)
float     dstmax;         Maximum d* value (R)
float     bmatr[3][3];    'B' matrix (C order) (R) 
char      *title;         Title string (max of 120 characters) (R)
int       lent;           Length of title string (may give 0 if a null 
                          terminated string is passed) (R)
int       min_width;      The program will calculate the width required
                          for the view-object based on the display area
                          width, control panel width etc. If this is
                          less than min_width then min_width will be
                          used instead and the layout altered to reflect
                          this (R)
int       min_height;     minimum height cf min_width (R)
Return:  Status flag =0 OK, >0 error
         bit 0 set: Requested parent not found in the view-objects list
         ...

2.17.2.3 Return selected spot position - xdl_show_unq_getdata

This routine returns the position of the last mouse selected (spot) position from a show unique data view-object.
 
Fortran call:
 
         CALL XDLF_SHOW_UNQ_GETDATA (IVH, X, Y, IERR)
 
Parameters:
 
IVH      (R)  View-object handle (see vh)
X        (R)  'X' coordinate
Y        (W)  'Y' coordinate
IERR     (W)  Returns status from xdl_show_unq_gedata call
 
'C' call:
 
int xdl_show_unq_getdata (int vh, float * x, float * y)
 
Parameters:
 
int vh;          View-object handle (R)
float *x;        Returned 'x' coordinate (W)
float *y;        Returned 'y' coordinate (W)
Return:  Status = 0 OK, >0 error
                  bit 0 set:  View-object handle not found
                  bit 1 set:  View handle does not match view object
                  ...



John W. Campbell
CCLRC Daresbury Laboratory
Last update 4 Feb 1998