# Synopsis

PDX_MSGT gcr_Solid(long option, MDA_PTR orig_db_ptr, PDX_BOOL first_is_outer, MDA_COUNT num_of_shells, struct t_gdx_solid_shells *shells, int gdx_model, MDA_PTR *gdx_solid_ptr)

# Purpose

Create a GDX Solid.

# Description

Given the number of shells, and the shell structures, create a GDX Solid. The sense flags in the shell structures indicate the sense of the shells with respect to the solid, PDX_TRUE means the sense agrees.

The orig_db_ptr argument should contain the database pointer of the entity that the new entity was created from (usually this should be obtained by the calling routine via mda_GetOrigDbptr) or MDA_NULL_PTR. See the mda_intro man page for more information about predecessor entities.

# Input

## option

### GCR_NOVALIDATE

No validation will occur on the input data.

## orig_db_ptr

The original entities orig_db_ptr as obtained from the mda_GetOrigDbptr call, or MDA_NULL_PTR

## first_is_outer

A flag that indicates the first shell is the outer. Set to PDX_TRUE or PDX_FALSE.

## num_of_shells

Number of shells that make up the Solid, must be > 0.

## shells

MDA memory contaings structures of the senses and database pointers of shells that make up the solid. Always consumed by this function even on error.

## gdx_model

The GDX model for entity creation

# Output

## gdx_solid_ptr

Entity database pointer of the GDX Solid

# Tolerances

          .fi

# Return

          GCR_NOERR
          GCR_INVALID_MODEL
          Low level error return
          .fi