Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ pinit_pick(3g) — PHIGS 5.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

pinit_pick(3g)  —  Subroutines

Name

pinit_pick − Sets the pick device to application-specific values. 

 
Operating States: PHOP, WSOP, ∗, ∗
PHIGS standard function

Syntax

void pinit_pick (
  Pint               wsid,         /∗ (I) Workstation identifier ∗/
  Pint               dev_num,      /∗ (I) Pick device number ∗/
  Pin_status         status,       /∗ (I) Initial pick status ∗/
  const Ppick_path  ∗init,         /∗ (I) Initial pick path ∗/
  Pint               pet,          /∗ (I) Prompt and echo type ∗/
  const Plimit      ∗echo_area,    /∗ (I) Echo area, in device
                                          coordinates ∗/
  const Ppick_data  ∗record,       /∗ (I) Data record ∗/
  Ppath_order        order         /∗ (I) Pick path order ∗/
)

Data Structures

typedef enum {
    PIN_STATUS_NONE,
    PIN_STATUS_OK,      /∗ Use this value if you are supplying an initial
                           pick ∗/
    PIN_STATUS_NO_IN    /∗ Use this value if you are not supplying an
                           initial pick ∗/
} Pin_status;
typedef struct {
    Pint                depth;        /∗ pick path depth ∗/
    Ppick_path_elem    ∗path_list;    /∗ pick path list ∗/
} Ppick_path;
    typedef struct {
        Pint    struct_id;    /∗ structure identifier ∗/
        Pint    pick_id;      /∗ pick identifier ∗/
        Pint    elem_pos;     /∗ element position ∗/
    } Ppick_path_elem;
typedef struct {
    Pfloat    x_min;    /∗ x minimum ∗/
    Pfloat    x_max;    /∗ x maximum ∗/
    Pfloat    y_min;    /∗ y minimum ∗/
    Pfloat    y_max;    /∗ y maximum ∗/
} Plimit;
typedef struct { /∗ pick data record ∗/
    union Ppick_pets {
        struct Ppick_pet_r1 {
            Pfloat    aperture;     /∗ pick aperture ∗/
        } pet_r1;
        struct Ppick_pet_r2 {
            Pfloat    aperture;     /∗ pick aperture ∗/
        } pet_r2;
        struct Ppick_pet_r3 {
            Pfloat    aperture;     /∗ pick aperture ∗/
        } pet_r3;
    } pets;
} Ppick_data;
typedef enum {
    PORDER_TOP_FIRST,       /∗ top first ∗/
    PORDER_BOTTOM_FIRST     /∗ bottom first ∗/
} Ppath_order;

Description

pinit_pick sets the pick device to application-specific values.  You specify the initial pick status, the initial pick path, and the pick path order.  Digital PHIGS uses the pick path order to determine the order of the pick path it returns to the pget_pick, psample_pick, and preq_pick functions. 

This function accepts the echo area in a 4-component list of x- and y-coordinates, in device coordinates.  The order of the list components is XMIN < XMAX, YMIN < YMAX.  The z-components of a previously specified echo volume remain unchanged. 

When an application calls pinit_pick, the workstation surface cannot contain the pick device’s prompt.  To remove an existing prompt from the surface, call the pset_pick_mode function and place the device in request mode. 

The size and contents of the data record depend on the prompt and echo type you specify.  If the size or contents of the data record does not match the requirements of your chosen prompt and echo type, Digital PHIGS generates an error. 

See Pick-Class PETs for information on pick-class prompt and echo types. 

See Also

pget_pick
pinit_pick3
pinq_def_pick_data
pinq_pick_st
preq_pick
psample_pick
pset_pick_filter
pe_set_pick_highl_ind
pset_pick_id
pset_pick_mode

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026