| 1 |
#!/bin/csh -f
|
| 2 |
# RCSid: $Id: objline.csh,v 2.5 2008/08/25 04:50:32 greg Exp $
|
| 3 |
# Create four standard views of scene and present as line drawings
|
| 4 |
#
|
| 5 |
set oblqxf="-rz 45 -ry 45"
|
| 6 |
onintr quit
|
| 7 |
set d=`mktemp -d /tmp/ol.XXXXXX`
|
| 8 |
if ($#argv) then
|
| 9 |
set origf=""
|
| 10 |
set oblqf=""
|
| 11 |
foreach f ($argv)
|
| 12 |
set fn="$f:t"
|
| 13 |
set fn="$fn:r"
|
| 14 |
xform $f:q > $d/$fn:q.orig
|
| 15 |
rad2mgf $d/$fn:q.orig > $d/$fn:q.orig.mgf
|
| 16 |
set origf=($origf:q $fn:q.orig.mgf)
|
| 17 |
echo i $fn:q.orig.mgf $oblqxf > $d/$fn:q.oblq.mgf
|
| 18 |
set oblqf=($oblqf:q $fn:q.oblq.mgf)
|
| 19 |
end
|
| 20 |
else
|
| 21 |
set origf=stdin.orig.mgf
|
| 22 |
set oblqf=stdin.oblq.mgf
|
| 23 |
xform > $d/stdin.orig
|
| 24 |
rad2mgf $d/stdin.orig > $d/stdin.orig.mgf
|
| 25 |
echo i stdin.orig.mgf $oblqxf > $d/stdin.oblq.mgf
|
| 26 |
endif
|
| 27 |
cd $d
|
| 28 |
set rce='xm=($1+$2)/2;ym=($3+$4)/2;zm=($5+$6)/2;\
|
| 29 |
max(a,b):if(a-b,a,b);r=max(max($2-$1,$4-$3),$6-$5)*.52;\
|
| 30 |
$1=xm-r;$2=xm+r;$3=ym-r;$4=ym+r;$5=zm-r;$6=zm+r'
|
| 31 |
set origdim=`getbbox -h *.orig | rcalc -e $rce:q`
|
| 32 |
set oblqdim=`xform $oblqxf *.orig | getbbox -h | rcalc -e $rce:q`
|
| 33 |
mgf2meta -t .005 x $origdim $origf > x.mta
|
| 34 |
mgf2meta -t .005 y $origdim $origf > y.mta
|
| 35 |
mgf2meta -t .005 z $origdim $origf > z.mta
|
| 36 |
mgf2meta -t .005 x $oblqdim $oblqf > o.mta
|
| 37 |
plot4 {x,y,z,o}.mta
|
| 38 |
quit:
|
| 39 |
cd
|
| 40 |
exec rm -rf $d
|