179 lines
5.1 KiB
Plaintext
Executable File
179 lines
5.1 KiB
Plaintext
Executable File
# LaGriT Test 2D smooth and massage
|
|
|
|
# read the line polygon and triangulate
|
|
# mesh object must be planar
|
|
# uncomment dump/avs for further evaluations
|
|
|
|
read avs input_polygon.inp moin
|
|
cmo / printatt/ moin / -xyz- / minmax
|
|
cmo create cmotri///triplane
|
|
copypts cmotri moin
|
|
cmo /delete/ moin
|
|
cmo select cmotri
|
|
|
|
# RUN 00 triangulate
|
|
# triangulate inside the polygon
|
|
triangulate/clockwise
|
|
cmo setatt cmotri imt 1
|
|
cmo setatt cmotri itetclr 1
|
|
resetpts/ itp
|
|
|
|
# CHECK 00 coarse triangulation
|
|
quality
|
|
quality edge_max y
|
|
# dump avs out_tri00.inp cmotri
|
|
|
|
# RUN 01 refine edge 1000
|
|
# break into triangles of nicer sizes
|
|
define EDGELEN 1000.
|
|
refine rivara///edge/1,0,0/EDGELEN///inclusive
|
|
|
|
# CHECK 01 refine edge 1000
|
|
quality
|
|
quality edge_max y
|
|
cmo printatt cmotri edgemax minmax
|
|
# dump avs out_tri01a.inp cmotri
|
|
|
|
# RUN 01b smooth
|
|
# smooth to make nice distribution
|
|
cmo select cmotri
|
|
smooth/position/esug/1 0 0
|
|
recon 0
|
|
smooth/position/esug/1 0 0
|
|
recon 0
|
|
smooth/position/esug/1 0 0
|
|
recon 0
|
|
filter/1,0,0
|
|
rmpoint compress
|
|
resetpts / itp
|
|
# dump avs out_tri01b.inp cmotri
|
|
|
|
# CHECK 01b smooth esug
|
|
quality
|
|
quality edge_max y
|
|
cmo printatt cmotri edgemax minmax
|
|
|
|
# RUN 02 massage 200
|
|
define MAXEDGE 300.
|
|
define MINEDGE 100.
|
|
define DAMAGE .01
|
|
massage/MAXEDGE MINEDGE DAMAGE /1,0,0/
|
|
rmpoint compress
|
|
|
|
# CHECK 02 massage 200
|
|
quality
|
|
quality edge_max y
|
|
cmo printatt cmotri edgemax minmax
|
|
# dump avs out_tri02a.inp cmotri
|
|
|
|
# RUN 02b smooth 200
|
|
smooth/position/esug/1 0 0
|
|
recon 0
|
|
smooth/position/esug/1 0 0
|
|
recon 0
|
|
smooth/position/esug/1 0 0
|
|
recon 0
|
|
|
|
# CHECK 02b smooth after massage
|
|
quality
|
|
quality edge_max y
|
|
cmo printatt cmotri edgemax minmax
|
|
# dump avs out_tri02b.inp cmotri
|
|
|
|
rmpoint compress
|
|
resetpts itp
|
|
pset/pedge/attribute itp/1,0,0/ ge 10
|
|
cmo create cmotmp; copypts/cmotmp/cmotri/0 0/pset,get,pedge
|
|
compute/distance_field/cmotri/ cmotmp/ dfield
|
|
cmo / delete/ cmotmp
|
|
cmo select cmotri
|
|
|
|
# RUN 03 massage de-refine 600
|
|
# select nodes inside mesh to massage
|
|
define MAXEDGE 1200.
|
|
define MINEDGE 600.
|
|
define DAMAGE .01
|
|
pset/pmass/attribute dfield/1,0,0/ gt 800.
|
|
massage /MAXEDGE MINEDGE DAMAGE /pset,get,pmass/ nosmooth
|
|
rmpoint compress
|
|
|
|
# CHECK 03 massage de-refine
|
|
quality
|
|
quality edge_max y
|
|
cmo printatt cmotri edgemax minmax
|
|
# dump avs out_tri03a.inp cmotri
|
|
|
|
# RUN 03b smooth after de-refine
|
|
cmo select cmotri
|
|
smooth/position/esug/1 0 0
|
|
recon 0
|
|
smooth/position/esug/1 0 0
|
|
recon 0
|
|
|
|
# CHECK 03b smooth after de-refine
|
|
quality
|
|
quality edge_max y
|
|
quality aspect y
|
|
cmo/addatt/ cmotri / ang_mind / ang_mind
|
|
cmo printatt cmotri edgemax minmax
|
|
cmo printatt cmotri aratio minmax
|
|
cmo printatt cmotri ang_mind minmax
|
|
# dump avs out_tri03b.inp cmotri
|
|
|
|
# RUN 04 massage merge small edges
|
|
define MAXEDGE 1.e+20
|
|
define MINEDGE .1
|
|
define DAMAGE .1
|
|
massage /MAXEDGE MINEDGE DAMAGE /1,0,0/
|
|
rmpoint compress
|
|
resetpts itp
|
|
|
|
# CHECK 04 massage merge small edges
|
|
quality
|
|
quality edge_max y
|
|
quality aspect y
|
|
cmo/addatt/ cmotri / ang_mind / ang_mind
|
|
cmo printatt cmotri edgemax minmax
|
|
cmo printatt cmotri aratio minmax
|
|
cmo printatt cmotri ang_mind minmax
|
|
# dump avs out_tri04a.inp cmotri
|
|
|
|
# RUN 04b smooth after massage merge
|
|
cmo select cmotri
|
|
smooth/position/esug/1 0 0
|
|
recon 0
|
|
smooth/position/esug/1 0 0
|
|
recon 0
|
|
filter/1,0,0
|
|
rmpoint compress
|
|
resetpts / itp
|
|
|
|
# CHECK 04b smooth after massage merge
|
|
quality
|
|
quality edge_max y
|
|
quality aspect y
|
|
cmo/addatt/ cmotri / ang_mind / ang_mind
|
|
cmo printatt cmotri edgemax minmax
|
|
cmo printatt cmotri aratio minmax
|
|
cmo printatt cmotri ang_mind minmax
|
|
|
|
cmo printatt cmotri edgemax minmax
|
|
# dump avs out_tri04b.inp cmotri
|
|
|
|
# RUN FINAL reconnect delaunay
|
|
recon/ 1 /
|
|
|
|
# CHECK FINAL triangulation
|
|
quality
|
|
quality edge_max y
|
|
quality aspect y
|
|
cmo/addatt/ cmotri / ang_mind / ang_mind
|
|
cmo printatt cmotri edgemax minmax
|
|
cmo printatt cmotri aratio minmax
|
|
cmo printatt cmotri ang_mind minmax
|
|
|
|
dump avs out_final.inp cmotri
|
|
cmo printatt cmotri -all- minmax
|
|
|
|
finish
|