SunPHIGS 3.0 Extensions Reference Manual
  Buscar sólo este libro
Descargar este libro en PDF

NAME

INQUIRE EDGE REPRESENTATION PLUS - inquire for extended edge representation on a workstation

SYNOPSIS

C Syntax

void
pinq_edge_rep_plus ( ws, index, type, error_ind, rep )
Pint                  ws;            workstation identifier
Pint                  index;         edge index
Pinq_type             type;          type of returned value
Pint                  * error_ind;   OUT error indicator
Pedge_bundle_plus     * rep;         OUT edge representation

FORTRAN Syntax

SUBROUTINE pqeer ( WKID, INDEX, ITYPE, ERRIND, EFLAG, ETYPE, EWIDTH, COLMOD, IECOLR, ECOLR )
INTEGER      WKID         workstation identifier
INTEGER      INDEX        edge bundle index
INTEGER      ITYPE        type of returned values (PSET, PREALI )
INTEGER      ERRIND       OUT error indicator
INTEGER      EFLAG        OUT edge flag (PON/POFF)
INTEGER      ETYPE        OUT edge type
REAL         EWIDTH       OUT edge width scale factor
INTEGER      COLMOD       OUT colour model
INTEGER      IECOLR       OUT indirect colour
REAL         ECOLR(3)     OUT array of colour

Required PHIGS Operating States

(PHOP, WSOP, * ,* )

DESCRIPTION

Purpose

INQUIRE EDGE REPRESENTATION PLUS inquires for an extended edge representation on a workstation.
This is a SunPHIGS Extension function based on PHIGS PLUS and is not part of the PHIGS standard.

C Input Parameters

ws
The workstation identifier.
index
The edge index.
type
An enumerated value specifying whether the values to be returned are those originally specified by the application (PINQ_SET), or those resulting after PHIGS mapped them to ones available on the workstation (PINQ_REALIZED). A Pinq_type structure is defined as:
typedef enum {
PINQ_SET,
PINQ_REALIZED
} Pinq_type;

C Output Parameters

error_ind
A pointer to the location to store the error number of any error detected by this function.
rep
A pointer to a Pedge_bundle_plus structure which returns the specified extended edge representation. Pedge_bundle_plus is defined as:
typedef struct {
Pedge_flag    flag;     /* edge flag * /
Pint         type;    /* edgetype * /
Pfloat        width;   /* edgewidth scale factor * /
Pgcolr       colr;    /* edge colour * /

} Pedge_bundle_plus;
Pedge_flag is defined in phigs.h as:
typedef enum {
PEDGE_OFF,
PEDGE_ON
} Pedge_flag;
Pgcolr is defined as:
typedef struct {
Pint
type;
/* indirect, RGB, CIE, HSV, HLS * /
union {
Pint
ind;
/* index in workstation colour
bundle table * /
struct {
                        Pfloat   x;      /* red, hue, and so on * /
                        Pfloat   y;      /* green, saturation, lightness,
                                           and so on * /
                        Pfloat   z;      /* blue, value, saturation, and
                                           so on * /
                } general;
        } val;
} Pgcolr;

FORTRAN Input Parameters

All of the following data types are predefined in phigs77.h.
WKID
The identifier of the workstation for which the extended edge representation is being inquired.
INDEX The index into the specified workstation edge bundle table.
ITYPE
An enumerated value specifying whether the values to be returned are those originally specified by the application (Set), or those resulting after PHIGS mapped them to ones available on the workstation (Realized). Valid values are:
0   PSET      Set
1   PREALI    Realized

FORTRAN Output Parameters

ERRIND
The error number of any error detected by this function.
EFLAG The edge flag.
ETYPE The edge type.
EWIDTH
The edge width scale factor.
COLMOD
The colour model.
IECOLR
An integer containing the index into the workstation colour table for the edge colour.
ECOLR(3)
An array of reals containing the edge colour.

Execution

If the inquired information is available, the error indicator is returned as zero and values are returned in the output parameters.
If the specified edge index is not present in the edge bundle table on the workstation and the specified type of returned value is Realized, the representation for edge index one is returned.
If the inquired information is not available, then the values returned in the output parameters are undefined, and the error indicator is set to one of the following error numbers to indicate the reason for non-availability.
Since this is an inquiry function, ERROR HANDLING is not invoked when an error is detected by this function.

ERRORS

003
Ignoring function, function requires state (PHOP, WSOP, * ,* )
054
Ignoring function, the specified workstation is not open
059
Ignoring function, the specified workstation does not have output capability (that is, the workstation category is not OUTPUT, OUTIN, or MO)
100
Ignoring function, the bundle index value is less than one
101
Ignoring function, the specified representation has not been defined

SEE ALSO

INQUIRE EDGE REPRESENTATION (3P)
SET EDGE REPRESENTATION PLUS (3PP)
INQUIRE PREDEFINED EDGE REPRESENTATION PLUS (3PP)