!   TITLE:  create_vols-areas.mac (SM_TOOL)
!
!
!   OBJECTIVE:
!
!   This sub-macro creates a set of volumes from a newly created set of
!   unattached areas (i.e., not attached to any volumes).
!
!
!   COMMAND SYNTAX:
!
!                           (1)
!       CREATE_VOLS-AREAS, d_ext
!
!
!   ARGUMENTS:
!
!       (1) d_ext = distance to extrude the set of areas.
!
!
!   DESCRIPTION:
!
!   The algorithm isolates the newly created set of areas and extrudes them
!   a given distance, D_EXT. This command utilizes the EXTRUDE_ASET command
!   for the multiple-area extrusion.
!
!   The extrusion will be in the positive outward normal direction if D_EXT
!   is positive, and in the negative normal direction if D_EXT is negative.
!   Therefore, the extrude directions may differ for each area if the
!   positive outward normal is different for each area.
!
!   In the case that it is desired to retain the base area that is extruded
!   to form the new volume, this area number is stored in the parameter
!   'base_as', returned to the main part macro for use in future operations.
!
!   *** IMPORTANT: The newly created volumes are stored in a component group
!   for use in subsequent boolean operations. The volumes are stored in a
!   component group named:
!                                   new_vols
!
!
!
*get,prkey_,active,0,prkey
/nopr
!
dext__=arg1
!
init_entity_num
isolate_areas
cm,base_as,area         ! create component group containing base areas
!
extrude_aset,dext__
!
lplot
!
*set,dext__,
*set,xvcnt_,
!
*if,prkey_,eq,1,then
    /go
*endif