*get,prkey_,active,0,prkey
/nopr
ar_=arg1
dirovr_=arg2
distf_=arg3
*if,distf_,eq,0,then
distf_=1
*else
distf_=abs(nint(distf_))
*endif
*if,dirovr_,eq,0,then
df_=distf_*10
*elseif,dirovr_,eq,1,then
df_=-distf_*10
*endif
*get,acs1_,active,,csys
csys,0
cm,aset1_,area
cm,lset1_,line
cm,kset1_,kp
cm,vset1_,volu
vsum
*get,vcx_,volu,,cent,x
*get,vcy_,volu,,cent,y
*get,vcz_,volu,,cent,z
k,,vcx_,vcy_,vcz_
init_entity_num
kvcent_=km
init_entity_num
cmsel,s,aset1_
cmsel,s,lset1_
cmsel,s,kset1_
cmsel,s,vset1_
*if,ar_,eq,0,then
entity_array,'a','arprof_','array'
numars_=ecount
*do,abc_,1,numars_,1
asel,s,area,,arprof_(abc_,1)
lsla,s
cm,proflns_,line
*get,plcnt_,line,,count
ksll,s
get_max_entity
kstrt_=km
get_min_entity
*get,kcnt_,kp,k_min,nxth
cskp,csn+5,0,kcnt_,k_min,kstrt_
k,,kx(km),ky(km),df_*kz(kvcent_)
get_max_entity
lstr,kstrt_,km
get_max_entity
pthln_=lm
adrag,proflns_,,,,,,pthln_
ldele,pthln_,,,1
init_entity_num
asel,s,area,,am-(plcnt_-1),am
*if,abc_,eq,1,then
cm,newars_,area
*else
cmsel,a,newars_
cm,newars_,area
*endif
*enddo
init_entity_num
vsba,vset1_,newars_,,delete,delete
init_entity_num
lplot
*set,numars_,
*set,ecount,
*set,arprof_(1),
*else
asel,s,area,,ar_
lsla,s
cm,proflns_,line
*get,plcnt_,line,,count
ksll,s
get_max_entity
kstrt_=km
get_min_entity
*get,kcnt_,kp,k_min,nxth
cskp,csn+5,0,kcnt_,k_min,kstrt_
k,,kx(km),ky(km),df_*kz(kvcent_)
get_max_entity
lstr,kstrt_,km
get_max_entity
pthln_=lm
adrag,proflns_,,,,,,pthln_
ldele,pthln_,,,1
init_entity_num
asel,s,area,,am-(plcnt_-1),am
cm,newars_,area
init_entity_num
vsba,vset1_,newars_,,delete,delete
init_entity_num
lplot
*endif
kdele,kvcent_
init_entity_num
csdele,csn+5
csys,acs1_
lplot
*set,ar_,
*set,dirovr_,
*set,kcnt_,
*set,kstrt_,
*set,df_,
*set,acs1_,
*set,proflns_,
*set,kvcent_,
*set,vcx_,
*set,vcy_,
*set,vcz_,
*set,plcnt_,
*set,pthln_,
*set,abc_,
cmdele,aset1_
cmdele,lset1_
cmdele,kset1_
cmdele,vset1_
cmdele,newars_
*if,prkey_,eq,1,then
/go
*endif