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