UF_CURVE_state_s (view source)
 
Defined in: uf_curve.h
 Also known as: 
- UF_CURVE_state_t
 
- UF_CURVE_state_p_t
 
- UF_MODL_state_p_t
 
- UF_MODL_state_t
 
  
Overview
Contains data indicating the situation found in a spline curve or
surface. The same structure is used to return states for fixing and smoothing
b-spline curves and surfaces.  The following states are returned for b-spline
curves, with the noted state value contents.
UF_CURVE_STATE_DEGENERACY - a degeneracy was detected in the spline or
                            bsurface flag&2 indicates U(0) or V(1) for a
                            bsurface.  flag&1 indicates if fixed (1 indicates
                            fixed). value is a point on or near the degeneracy
UF_CURVE_STATE_G1_DISCONTINUITY - the spline or bsurface is not G1 continuous
                                  flag&2 indicates U(0) or V(1) for a bsurface
                                  flag&1 indicates if smoothed to G1 (1 indicates
                                  smoothed to G1) flag&4 indicates if smoothed to Cn
                                  (1 indicates smoothed to Cn).  value[0] indicates the
                                  knot value at the discontinuity
UF_CURVE_STATE_KNOT_NONC0 - the spline or bsurface is not C0 continuous, that
                            is, it has a gap. flag&2 indicates U(0) or V(1) for
                            a bsurface.  flag&1 indicates if fixed (1
                            indicates fixed; shape change incurred).  value[0]
                            indicates the knot value at the discontinuity.
UF_CURVE_STATE_KNOT_MULT - the spline or bsurface has an illegal knot
                           multiplicity but without a gap.  flag&2
                           indicates U(0) or V(1) for a bsurface.
                           flag&1 indicates if fixed (1 indicates fixed)
                           value[0] indicates the knot value in the illegal
                           multiplicity
UF_CURVE_STATE_KNOT_DECREASING - the spline or bsurface has a knot value that
                                 is less than the value preceding it in
                                 the knot vector.  flag&2 indicates U(0) or
                                 V(1) for a bsurface.  flag&1 indicates if
                                 fixed (1 indicates fixed).  value[0] indicates
                                 the first knot value of the decreasing series
UF_CURVE_STATE_CLOSED - the spline or bsurface is closed but not Cn
                        flag&2 indicates U(0) or V(1) for a bsurface
UF_CURVE_STATE_PERIODIC - the spline or bsurface is closed and Cn at the
                          closure.  flag&2 indicates U(0) or V(1) for a
                          bsurface.
UF_CURVE_STATE_KNOT_TOOCLOSE - the spline or bsurface has a knot value that is
                               too close to the knot preceding it in the knot
                               vector.  flag&2 indicates U(0) or V(1) for a
                               bsurface.  flag&1 indicates if fixed (1
                               indicates fixed).  value[0] indicates the first
                               knot value that is too close to its preceding
                               knot
UF_CURVE_STATE_NOT_TRIMMED - the spline was not trimmed to the parameter values
                             given.  flag&2 indicates U(0) or V(1) for a
                             bsurface.
UF_CURVE_STATE_KNOTS_UNNORMALIZED - the splines or bsurfaces knots were
                                    normalized to meet Open API requirements
                                    flag&2 indicates U(0) or V(1) for a bsurface
                                    value[0] contains the factor for converting
                                    spline data parameters to values suitable
                                    for using with the NX object. Let
                                    td be a parameter value in the range defined
                                    by the spline data.  Let t0 be the
                                    corresponding parameter value to use when
                                    evaluating the NX spline. Then
                                      t0 = tdv0 + v1
                                    Apply to both directions of a bsurface as
                                    needed.
UF_CURVE_STATE_CLAMPED - the spline or bsurface end knots are of
                         multiplicity order. value[0] indicates the knot
                         value, value[1] contains the minimum distance change,
                         value[2] indicates the maximum angle change.
UF_CURVE_STATE_SMOOTHED_TO_CN - the spline or bsurface is not G1 continuous
                                and has been smoothed. For further definition
                                of the structure values see UF_CURVE_STATE_G1_DISCONTINUITY.
Data Members
state_code
 int
flag
 int
value [ 3 ] 
 double
 
Depending on the code, the next two values will
contain different values.