Synopsis

PDX_MSGT gdx_FaceSplitDiscontSurf(long option, MDA_PTR gdx_face_ptr, double angle_split, double devtol, long maxits, int fitdeg, int *num_split_faces, MDA_PTR **gdx_split_face_ptrs)

Purpose

Split the face if the surface is discontinuous.

Description

Split the face if the surface is discontinuous. The arguments devtol, maxits, fitdeg are required for the generation of missing parm curves.

If the face is in a solid or shell, the shell will be updated with the correct faces. The face pointers are returned so that the calling function knows which faces are new.

If the input face is independent, it will get deleted.

Input

option

GDX_G1_CONTINUITY

Split at G1 discontinuities

GDX_C1_CONTINUITY

Split at C1 discontinuities

GDX_G2_CONTINUITY

Split at G2 discontinuities

GDX_C2_CONTINUITY

Split at C2 discontinuities

gdx_face_ptr

The database pointer for the GDX face entity

angle_split

Minimum angle of surface discontinuity to split. If the angle between the tangents at the surface discontinuity are greater than angle_split, then the surface will be split. Either the GDX_G1_CONTINUITY or GDX_C1_CONTINUITY options must be specified.

devtol

Model space tolerance used to create parm curves

maxits

Maximum iterations to use while generating parm curves

fitdeg

Degree of curves to use to generate parm curves

Output

num_split_faces

Count of number of faces that were created

gdx_split_face_ptrs

Array of GDX faces that were created.

Tolerances

      MODEL_SPACE_PNT_TOL
      PARM_SPACE_PNT_TOL
      ANGLE_TOL
      ZERO_TOL
      .fi

Return

      GDX_NOERR
      GDX_INVALIDMODEL
      Low level error return
      .fi