Synopsis

PDX_MSGT gdb_MeasureECComplexity(long option, MDA_PTR gdx_ec_ptr, double tolerance, double *score, GDB_EC_COMPLEXITY *gdb_ec_scores)

Purpose

Measures the complexity of a GDX Edge curve

Description

Measures the complexity of a GDX Edge curve. Analyzes EC and assigns score based on the geometric, parametric, and data complexity of the Edge curve.

Input

option

GDB_LEAST_ACCURACY

Use the least accurate but fastest method.

GDB_MID_ACCURACY

Use middle accuracy method.

GDB_MOST_ACCURACY

Use most accurate but slowest method.

gdx_ec_ptr

The EC to be analyzed.

tolerance

Tolerance used to determine curve closure and curve degeneracy.

Output

score

The complexity score.

gdb_ec_scores

If this pointer is NULL, then it is not used. Otherwise, the individual scores for each category are returned.

Return

      GDB_NOERR
      Low level error return
      .fi
                         Point Preferrence
                        ~~~~~~~~~~~~~~~~~~
   int   curve_no_exist ;    25 points if no model and parm curves
   int   surf_no_exist  ;    25 points if no surface   
   int   num_faces      ;    25 points if no.of faces is zero   
   int   mc_no_exist    ;    1 point if no model curve   
   int   mc_discont     ;    1 point for discontinuous model curve   
   int   mc_on_surf     ;    1 point for model curve not on the surf   
   int   mc_complex     ;    VAL points Measured Curve Complexity Score
   int   mc_cc          ;    10 point for composite model curve   
   int   mc_pref        ;    5 points with no model curve when it is pref
   int   not_cbs_surf   ;    Not Tested
   int   parm_no_exist  ;    1 point if no Parm curve   
   int   parm_uv_discont;    1 point with discontinuous UV parm curve   
   int   parm_no_xy_planar;  1 point if parm curve is not XY_planar
   int   parm_on_surf   ;    2 points if parm curve not on the surf   
   int   parm_cc        ;    1 point if parm curve is composite curve   
   int   parm_complex   ;    VAL points Measured Curve Complexity Score   
   gdb_ec_score is calculated by adding up all the points and divided 
   with normalizer which is "5". gdb_ec_score heigher than its normalizer 
   is considered as FATAL and score heigher than 1.0 is considered as 
   complex Edge Curve.