Synopsis

PDX_MSGT gdx_SolidImproveInOutLoopDir(long option, double devtol, long maxits, int fitdeg, MDA_PTR gdx_db_ptr, int *num_open_face_ptrs, MDA_PTR **open_face_ptrs)

Purpose

Improve the Inner/Outer loops for each face of the solid.

Description

This function will improve the inner/outer loops for each face in solid. See gdx_FaceImproveInOutLoopDir for more description.

An option is required. If GDX_FIX_LOOP_DIRS option is set, then the loop directions will be improved after inner/outer loop order is fixed. If the GDX_NO_FIX_LOOP_DIRS option is set, just the inner/outer loop order will be fixed.

Input

option

GDX_FIX_LOOP_DIRS

Fix the loop directions after in/out sorting

GDX_NO_FIX_LOOP_DIRS

Do not Fix the loop directions

devtol

Sampled points on the model space curve, M(t), should not deviate from the surface or from the image under S(u,v) of P(s) more than this value. This tolerance should be larger than MODEL_SPACE_PNT_TOL, at least by 1 to 2 orders of magnitude. This will be used if parm curves need to be generated.

maxits

Maximum number of iterations when generating parm curves. Iteration will be stopped if this number is exceeded.

fitdeg

Degree used for fitting.

gdx_db_ptr

The database pointer for the GDX solid entity

Output

gdx_db_ptr

An updated GDX solid with correct sense informatiovnn

num_open_face_ptrs

Number of unclosed faces in parm space in the solid

open_face_ptrs

Unclosed faces in parm space in the solid. The caller must free it if it is not NULL.

Return

      GDX_NOERR
      GDX_INVALIDMODEL
      Low level error return
      .fi