uf_fltr.h (²é¿´Ô´´úÂë)
¸ÅÊö
The Open API interface to the creation and manipulation of
zone and filter objects.
Zone objects are used to isolate regions of interest in a part.
Currently, they are used exclusively as part of component filters and
allow manipulation of assemblies and components by region. Zones
can be created in two forms: box and plane.
Box zones are specified by a centroid and corner vector. The centroid
is given in Absolute coordinates and represents the center-point of
the box. The corner vector is the vector which represents the
most-positive corner of the box from the centroid (see diagram in
UF_FLTR_create_box_zone).
Plane zones are specified in the same way that ordinary planes are
specified in NX, with an origin and orientation.
Filter objects are used to inquire as to whether an object specifies
certain conditions.
A name must be specified when creating zones. For this reason, name arguments
are also provided for "edit" and "ask" routines which concern zones. Note
that the User function methods for naming and renaming objects will also work.
To delete a zone object, use the User Function routine which deletes an object.
Filters are specified with a name and a condition. For instance, a
filter could be named "FLT1" and its condition could be
"Within(0,ZONE1)" which means any part occurrence which falls
within 0 units of ZONE1 satisfies the filter FLT1.
These functions enable you to:
. output the parameters of the box zone specified by box_zone.
. return the name and condition of a given filter.
. outputs the parameters of the plane zone referred to by plane_zone.
. automatically generates box zones along all 3 axes of the WCS in a part.
. automatically generate plane zones along the Z axis of the WCS in a part.
. create a box zone and obtain its tag.
. create a filter object given the name and condition.
. create a plane zone given the origin and orientation.
. modify the box zone referred to by zone to have the values
passed in by name, centroid, corner, and matrix.
. Give filter a new name and condition.
. modify the plane zone referred to by zone to have the values
passed in by name, origin and matrix.
. evaluate whether object matches the given filter.
. test whether an object is within some distance of a zone.
. test whether an object is further than some distance of a zone.
. test whether a part occurrence is above a planar zone.
Errors:
-------
Errors that can be encountered when using UF_FLTR are:
. UF_FLTR_ERR_NULL_PART - A null part tag has been passed into the routine
. UF_FLTR_ERR_NULL_FLTR_TAG - A null filter tag has been passed into
the routine.
. UF_FLTR_ERR_NULL_ZONE_TAG - A null zone tag has been passed into
the routine.
. UF_FLTR_ERR_AUTO_NAME_CLASH - When an auto-create option attempts to
create a zone whose name conflicts with other zone names in the part,
this error occurs.
. UF_FLTR_ERR_NULL_CHAR - A null character string has been passed into
the function.
. UF_FLTR_ERR_NULL_OBJ_TAG - A null object tag has been passed into
the function. This would be encountered during any of the comparison
functions.
. UF_FLTR_ERR_INVALID_FILTER - When an invalid filter is encountered
(usually this means the condition of the filter is erroneous),
this value is returned.