Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ pincr_spa_search3(3g) — PHIGS 5.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

pincr_spa_search3(3g)  —  Subroutines

Name

pincr_spa_search3 − Searches the structure, beginning at the specified element. 

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

Syntax

void pincr_spa_search3 (
  const Ppoint3         ∗ref_pt,              /∗ (I) Search reference
                                                     point ∗/
  Pfloat                 dist,                /∗ (I) Search distance ∗/
  const Pelem_ref_list  ∗sp,                  /∗ (I) Starting path list ∗/
  Pclip_ind              clip_ind,            /∗ (I) Modeling clip
                                                     indicator ∗/
  Pint                   ceiling,             /∗ (I) Search ceiling
                                                     index ∗/
  const Pfilter_list    ∗norm,                /∗ (I) Normal filter list ∗/
  const Pfilter_list    ∗inv,                 /∗ (I) Inverted filter
                                                     list ∗/
  Pint                   num_elems_appl_list, /∗ (I) Number of elements
                                                     in the application
                                                     list ∗/
  Pint                   start_ind,           /∗ (I) Starting index ∗/
  Pint                  ∗err_ind,             /∗ (O) Error indicator ∗/
  Pelem_ref_list        ∗fp,                  /∗ (O) Found path ∗/
  Pint                  ∗num_elems_impl_list  /∗ (O) Number of elements in
                                                     the PHIGS list ∗/
)

Data Structures

typedef struct {
    Pfloat    x;    /∗ x coordinate ∗/
    Pfloat    y;    /∗ y coordinate ∗/
    Pfloat    z;    /∗ z coordinate ∗/
} Ppoint3;
typedef struct {
    Pint         num_elem_refs;   /∗ number of execute references ∗/
    Pelem_ref   ∗elem_refs;       /∗ list of execute references ∗/
} Pelem_ref_list;
    typedef struct {
        Pint     struct_id;    /∗ structure identifier ∗/
        Pint     elem_pos;     /∗ element number ∗/
    } Pelem_ref;
typedef enum {
    PIND_NO_CLIP,    /∗ clipping disabled ∗/
    PIND_CLIP        /∗ clipping enabled ∗/
} Pclip_ind;
typedef struct {
    Pint       num_filters;   /∗ number of filters ∗/
    Pfilter   ∗filters;       /∗ list of filters ∗/
} Pfilter_list;
    typedef struct {
        Pint_list     incl_set;   /∗ inclusion set ∗/
        Pint_list     excl_set;   /∗ exclusion set ∗/
    } Pfilter;
        typedef struct {
            Pint    num_ints;   /∗ number of Pints in the list ∗/
            Pint   ∗ints;       /∗ list of integers ∗/
        } Pint_list;

Description

pincr_spa_search3 searches the structure beginning at the element following the position specified by the starting path.  The search succeeds if the function finds an output structure element that satisfies the search filter and part of the output structure element lies within the world coordinate distance of the search reference point. 

If the clipping indicator is PIND_NO_CLIP, Digital PHIGS does not perform any clipping.  If the clipping indicator is PIND_CLIP, Digital PHIGS performs modeling clipping during the incremental spatial search.  If the search distance is less than or equal to 0, the output structure element intersects the reference point.  The function returns the complete path to the element as the found path. 

The search ceiling index defines a structure in the starting path.  Traversal ends when the function reaches the end of the structure.  If traversal stops because of the search ceiling, the function returns a null path.  If the ceiling index is 1, the topmost structure of the search path is the ceiling, and the search operates without a ceiling. 

Digital PHIGS Version 4.1 does not support this function.

See Also

padd_names_set
pincr_spa_search
premove_names_set

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