summaryrefslogtreecommitdiff
path: root/texmf-dist/scripts/ketpic/ketlib/ketpic2escifiles6/Expr.sci
diff options
context:
space:
mode:
Diffstat (limited to 'texmf-dist/scripts/ketpic/ketlib/ketpic2escifiles6/Expr.sci')
-rwxr-xr-xtexmf-dist/scripts/ketpic/ketlib/ketpic2escifiles6/Expr.sci100
1 files changed, 100 insertions, 0 deletions
diff --git a/texmf-dist/scripts/ketpic/ketlib/ketpic2escifiles6/Expr.sci b/texmf-dist/scripts/ketpic/ketlib/ketpic2escifiles6/Expr.sci
new file mode 100755
index 00000000..5b9df24b
--- /dev/null
+++ b/texmf-dist/scripts/ketpic/ketlib/ketpic2escifiles6/Expr.sci
@@ -0,0 +1,100 @@
+//
+// 09.12.25
+
+function Expr(varargin)
+ global Wfile FID MEMORI;
+ Nargs=length(varargin);
+ for I=1:3:Nargs
+ Tmp=varargin(I);
+ P=Doscaling(Tmp);
+ X=P(1);
+ Y=P(2);
+ Houkou=varargin(I+1);
+ Mojiretu='$'+varargin(I+2)+'$';
+ Hset=Houkou;
+ Vhoko='c';
+ if mtlb_findstr(Hset,'n')~=[]
+ Vhoko='n'; Y=Y+MEMORI;
+ end
+ if mtlb_findstr(Hset,'s')~=[]
+ Vhoko='s'; Y=Y-MEMORI;
+ end
+ Hhoko='c';
+ if mtlb_findstr(Hset,'e')~=[]
+ Hhoko='e'; X=X+MEMORI;
+ end
+ if mtlb_findstr(Hset,'w')~=[]
+ Hhoko='w'; X=X-MEMORI;
+ end
+ Hoko=Vhoko+Hhoko;
+ Suu='+-.0123456789';
+ SuuL=Suu;
+ Hcode=ascii(Houkou);
+ J=1; Dstr='';
+ while J<=length(Houkou)
+ Tmp=char(Hcode(J));
+ if mtlb_findstr(SuuL,Tmp)~=[]
+ if Dstr==''
+ Hk=char(Hcode(J-1));
+ end
+ Dstr=Dstr+Tmp;
+ else
+ if Dstr~=''
+ Nmbr=msscanf(Dstr,'%f');
+ D=Nmbr*MEMORI;
+ if Hk=='n'
+ Y=Y+D;
+ end
+ if Hk=='s'
+ Y=Y-D;
+ end
+ if Hk=='e'
+ X=X+D;
+ end
+ if Hk=='w'
+ X=X-D;
+ end
+ Dstr='';
+ end
+ end
+ J=J+1;
+ end
+ if Dstr~=''
+ Nmbr=msscanf(Dstr,'%f');
+ D=Nmbr*MEMORI;
+ if Hk=='n'
+ Y=Y+D;
+ end
+ if Hk=='s'
+ Y=Y-D;
+ end
+ if Hk=='e'
+ X=X+D;
+ end
+ if Hk=='w'
+ X=X-D;
+ end
+ end
+ CalcWidth(Hoko,Mojiretu);
+ CalcHeight(Hoko,Mojiretu);
+ Tmp='){\hspace*{\Width}';
+ Str=Tmp+'\raisebox{\Height}{'+Mojiretu+'}}';
+ if Wfile=='default'
+ mprintf('%s','\put(');
+ mprintf('%6.4f%s%6.4f',X,',',Y);
+ mprintf('%s%s\n',Str,'%');
+ mprintf('%s\n','%');
+ else
+ mfprintf(FID,'%s','\put(');
+ mfprintf(FID,'%6.4f%s%6.4f',X,',',Y);
+ mfprintf(FID,'%s%s\n',Str,'%');
+ mfprintf(FID,'%s\n','%');
+ end
+ if Wfile=='default'
+ mprintf('%s\n','%');
+ else
+ mfprintf(FID,'%s\n','%');
+ end
+ end
+endfunction
+