# 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