#
# Unix makefile to convert IRIT dat files to postscript. used to create
# the figures of the user manual of the IRIT solid modeller.
#
#				Gershon Elber, October 1994.
#

all:	dat_files all_figures

dat_files: doc_figs.irt
	irit -t doc_figs.irt
	touch dat_files

arc1cnst.ps: arc1cnst.dat
	irit2ps -u -p F 0.02 -M arc1cnst.dat > arc1cnst.ps

boolone.ps: boolone.dat
	irit2ps -u -p F 0.02 boolone.dat > boolone.ps

boolsum.ps: boolsum.dat
	irit2ps -u -p F 0.02 boolsum.dat > boolsum.ps

caoffset.ps: caoffset.dat
	irit2ps -u -p F 0.02 caoffset.dat > caoffset.ps

cbisectc.ps: cbisectc.dat
	irit2ps -u -p F 0.02 cbisectc.dat > cbisectc.ps

cbisects.ps: cbisects.dat
	illustrt -l 0.01 -t 0.02 cbisects.dat view0mat.dat | irit2ps -d -u - > cbisects.ps

cci.ps: cci.dat
	irit2ps -u -p F 0.02 cci.dat > cci.ps

ccrvtr.ps: ccrvtr.dat
	irit2ps -u -p F 0.02 ccrvtr.dat > ccrvtr.ps

cderive.ps: cderive.dat
	irit2ps -u -p F 0.02 cderive.dat > cderive.ps

cdivide.ps: cdivide.dat
	irit2ps -u -p F 0.02 cdivide.dat > cdivide.ps

cenvoff.ps: cenvoff.dat
	irit2ps -u -p F 0.02 -f 0 128 cenvoff.dat > cenvoff.ps

cevolute.ps: cevolute.dat
	irit2ps -u -p F 0.02 cevolute.dat > cevolute.ps

cextreme.ps: cextreme.dat
	irit2ps -u -p F 0.02 cextreme.dat > cextreme.ps

cinflect.ps: cinflect.dat
	irit2ps -u -p F 0.02 cinflect.dat > cinflect.ps

cinterp.ps: cinterp.dat
	irit2ps -u -p F 0.02 cinterp.dat > cinterp.ps

circular.ps: circular.dat
	irit2ps -u -p F 0.02 circular.dat > circular.ps

cmultres.ps: cmultres.dat
	irit2ps -u -p F 0.02 -f 0 256 cmultres.dat > cmultres.ps

cmorph.ps: cmorph.dat
	irit2ps -u -p F 0.02 cmorph.dat > cmorph.ps

cmorph2.ps: cmorph2.dat
	irit2ps -u -p F 0.02 -f 0 128 cmorph2.dat > cmorph2.ps

cnvxhull.ps: cnvxhull.dat
	irit2ps -u -p F 0.02 -f 0 128 cnvxhull.dat > cnvxhull.ps

crv2tans.ps: crv2tans.dat
	irit2ps -u -p F 0.02 -f 0 128 crv2tans.dat > crv2tans.ps

crvpttan.ps: crvpttan.dat
	irit2ps -u -p F 0.02 -f 0 128 crvpttan.dat > crvpttan.ps

coffset.ps: coffset.dat
	irit2ps -u -p F 0.02 coffset.dat > coffset.ps

compose.ps: compose.dat
	irit2ps -u -p F 0.02 compose.dat > compose.ps

cones.ps: cones.dat
	irit2ps -u -p F 0.02 cones.dat > cones.ps

coverpt.ps: coverpt.dat
	illustrt -l 0.01 -t 0.02 coverpt.dat view1mat.dat | irit2ps -d -u -p F 0.02 - > coverpt.ps

coveriso.ps: coveriso.dat
	illustrt -l 0.01 -t 0.02 coveriso.dat view0mat.dat | irit2ps -d -u -p F 0.02 - > coveriso.ps

cubes1.ps: cubes1.dat
	irit2ps -u -p F 0.02 cubes1.dat > cubes1.ps

cubes2.ps: cubes2.dat
	irit2ps -u -p F 0.02 cubes2.dat > cubes2.ps

cubes3.ps: cubes3.dat
	irit2ps -u -p F 0.02 cubes3.dat > cubes3.ps

silhouet.ps: silhouet.dat
	irit2ps -u -p F 0.02 silhouet.dat > silhouet.ps

cperiod.ps: cperiod.dat
	irit2ps -u -p F 0.02 -M -C- cperiod.dat > cperiod.ps

craise.ps: craise.dat
	irit2ps -u -p F 0.02 -M craise.dat > craise.ps

crefine.ps: crefine.dat
	irit2ps -u -p F 0.02 -M crefine.dat > crefine.ps

cregion.ps: cregion.dat
	irit2ps -u -p F 0.02 -M cregion.dat > cregion.ps

crvlndst.ps: crvlndst.dat
	irit2ps -u -p F 0.02 crvlndst.dat > crvlndst.ps

crvptdst.ps: crvptdst.dat
	irit2ps -u -p F 0.02 crvptdst.dat > crvptdst.ps

csg.ps: csg.dat
	illustrt -l 0.01 -t 0.02 csg.dat view0mat.dat | irit2ps -D -u - > csg.ps

csurface.ps: csurface.dat
	irit2ps -u -p F 0.02 csurface.dat > csurface.ps

ctrimsrf.ps: ctrimsrf.dat
	irit2ps -u -p F 0.02 ctrimsrf.dat > ctrimsrf.ps

cylinder.ps: cylinder.dat
	irit2ps -u -p F 0.02 cylinder.dat > cylinder.ps

czeros.ps: czeros.dat
	irit2ps -u -p F 0.02 czeros.dat > czeros.ps

extrude.ps: extrude.dat
	irit2ps -u -p F 0.02 extrude.dat > extrude.ps

ffptdst1.ps: ffptdst1.dat
	irit2ps -u -p F 0.01 ffptdst1.dat > ffptdst1.ps

ffptdst2.ps: ffptdst2.dat
	irit2ps -u -p F 0.01 ffptdst2.dat > ffptdst2.ps

gbox.ps: gbox.dat
	irit2ps -u -p F 0.02 gbox.dat > gbox.ps

mrchcube.ps: mrchcube.dat
	poly3d-h -q mrchcube.dat view0mat.dat | irit2ps -d -0.15 4 -u - > mrchcube.ps

mergpoly.ps: mergpoly.dat
	irit2ps -u -p F 0.02 mergpoly.dat > mergpoly.ps

orthotmc.ps: orthotmc.dat
	irit2ps -u -p F 0.02 orthotmc.dat > orthotmc.ps

smorph.ps: smorph.dat
	irit2ps -u -p F 0.02 smorph.dat > smorph.ps

pdecimat.ps: pdecimat.dat
	irit2ps -d 0.0 0.5 -u -p F 0.02 pdecimat.dat > pdecimat.ps

poly.ps: poly.dat
	irit2ps -u -p F 0.02 poly.dat > poly.ps

prim_box.ps: prim_box.dat
	irit2ps -u -p F 0.02 prim_box.dat > prim_box.ps

prisa.ps: prisa.dat
	irit2ps -u -d prisa.dat > prisa.ps

ruledsrf.ps: ruledsrf.dat
	irit2ps -u -p F 0.02 ruledsrf.dat > ruledsrf.ps

sbisect.ps: sbisect.dat
	illustrt -l 0.02 -t 0.01 sbisect.dat view1mat.dat | irit2ps -W 0.01 -d -p f 0.02 -u - > sbisect.ps

scrvtr.ps: scrvtr.dat
	irit2ps -u -p F 0.02 scrvtr.dat > scrvtr.ps

sdivide.ps: sdivide.dat
	irit2ps -u -p F 0.02 sdivide.dat > sdivide.ps

sfocal.ps: sfocal.dat
	irit2ps -u -p F 0.02 sfocal.dat > sfocal.ps

sfromcrvs.ps: sfromcrvs.dat
	irit2ps -u -p F 0.02 sfromcrvs.dat > sfromcrvs.ps

sgauss.ps: sgauss.dat
	irit2ps -u -p F 0.02 sgauss.dat > sgauss.ps

sinterp.ps: sinterp.dat
	irit2ps -u -p F 0.01 sinterp.dat > sinterp.ps

smeansqr.ps: smeansqr.dat
	irit2ps -u -p F 0.02 smeansqr.dat > smeansqr.ps

snrmlsrf.ps: snrmlsrf.dat
	irit2ps -u -d -f 0 128 snrmlsrf.dat > snrmlsrf.ps

sregion.ps: sregion.dat
	irit2ps -u -p F 0.02 sregion.dat > sregion.ps

surface.ps: surface.dat
	irit2ps -u -p F 0.02 surface.dat > surface.ps

surfrev.ps: surfrev.dat
	irit2ps -u -p F 0.02 surfrev.dat > surfrev.ps

svisible.ps: svisible.dat
	illustrt -l 0.02 -t 0.01 svisible.dat view0mat.dat | irit2ps -W 0.005 -d -p f 0.02 -u - > svisible.ps

strivar.ps: strivar.dat
	irit2ps -u -p F 0.02 -I 4 strivar.dat > strivar.ps

sweepsrf.ps: sweepsrf.dat
	irit2ps -u -p F 0.02 sweepsrf.dat > sweepsrf.ps

swpsclsrf.ps: swpsclsrf.dat
	irit2ps -u -p F 0.02 -I 20 swpsclsrf.dat > swpsclsrf.ps

tbezier.ps: tbezier.dat
	irit2ps -u -p F 0.02 -I 4 tbezier.dat > tbezier.ps

tdivide.ps: tdivide.dat
	irit2ps -u -p F 0.02 -I 3 tdivide.dat > tdivide.ps

tfromsrf.ps: tfromsrf.dat
	irit2ps -u -p F 0.02 -I 3 tfromsrf.dat > tfromsrf.ps

torus.ps: torus.dat
	irit2ps -u -p F 0.02 torus.dat > torus.ps

trimsrf.ps: trimsrf.dat
	irit2ps -u -p F 0.02 trimsrf.dat > trimsrf.ps

tregion.ps: tregion.dat
	irit2ps -u -p F 0.02 -I 3 tregion.dat > tregion.ps

tsbezier.ps: tsbezier.dat
	irit2ps -d -u tsbezier.dat > tsbezier.ps

booleans.ps: booleans.dat
	poly3d-h -H -q booleans.dat | irit2ps -u - > booleans.ps

dodechdr.ps: dodechdr.dat
	poly3d-h -W 0.02 -H -q dodechdr.dat view1mat.dat | irit2ps -d -0.59 0.59 - > dodechdr.ps

molecule.ps: molecule.dat
	poly3d-h -W 0.01 -H -q molecule.dat view2mat.dat | irit2ps - > molecule.ps

solid2h.ps: solid2h.dat
	poly3d-h -W 0.02 -q solid2h.dat view2mat.dat | irit2ps - > solid2h.ps

solid1.ps: solid1.dat
	poly3d-h -q -H solid1.dat view1mat.dat | illustrt -s -l 0.1 -t 0.0 - | irit2ps -W 0.05 -D -1 2 -p h 0.05 -u - > solid1.ps

icosahdr.ps: icosahdr.dat
	illustrt -p -s -l 0.05 -t 0.05 icosahdr.dat view1mat.dat | irit2ps -W 0.05 -d -1 1 -p f 0.06 -u - > icosahdr.ps

#
# Assumes you have the Utah Raster Toolkit
#
molecul2.ps: molecule.dat
	echo "[OBJECT [SHADOW] [LIGHT_SOURCE] [TYPE POINT_INFTY] L1" > lsrc.dat
	echo "    [POINT 1 1.2 1]" >> lsrc.dat
	echo "]" >> lsrc.dat
	irender -s 350 350 -b 255 255 255 -S -A sync -i rle lsrc.dat molecule.dat view2mat.dat | crop 48 0 320 308 | rletops -h 4 -s > molecul2.ps

glass.ps: glass.dat
	irender -s 700 700 -F 0 64 -M Flat -b 255 255 255 -T -A sync -i rle glass.dat view2mat.dat | crop 180 270 540 654 | rletops -h 4 -s > glass.ps

all_figures:	 arc1cnst.ps boolone.ps boolsum.ps caoffset.ps \
	cbisectc.ps cbisects.ps cci.ps ccrvtr.ps cderive.ps \
	cdivide.ps cenvoff.ps cevolute.ps cextreme.ps \
	cinflect.ps cinterp.ps circular.ps cmultres.ps \
	cmorph.ps cmorph2.ps cnvxhull.ps crv2tans.ps crvpttan.ps csg.ps \
	coffset.ps compose.ps cones.ps cubes1.ps cubes2.ps cubes3.ps \
	silhouet.ps cperiod.ps coveriso.ps coverpt.ps\
	craise.ps crefine.ps cregion.ps crvlndst.ps crvptdst.ps \
	csurface.ps ctrimsrf.ps cylinder.ps czeros.ps \
	extrude.ps ffptdst1.ps ffptdst2.ps gbox.ps mrchcube.ps \
	mergpoly.ps orthotmc.ps smorph.ps pdecimat.ps poly.ps prim_box.ps \
	prisa.ps ruledsrf.ps sbisect.ps scrvtr.ps sdivide.ps \
	sfocal.ps sfromcrvs.ps \
	sgauss.ps sinterp.ps smeansqr.ps snrmlsrf.ps \
	sregion.ps strivar.ps surface.ps surfrev.ps svisible.ps \
	sweepsrf.ps swpsclsrf.ps tbezier.ps tdivide.ps tfromsrf.ps torus.ps \
	tregion.ps trimsrf.ps tsbezier.ps \
	booleans.ps solid1.ps solid2h.ps molecule.ps icosahdr.ps \
	dodechdr.ps molecul2.ps glass.ps

