From: Jaime E. V. <vi...@us...> - 2006-06-27 14:07:54
|
Update of /cvsroot/maxima/maxima/src In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv14780/src Modified Files: plot.lisp Log Message: omplotdata is no longer needed. xmaxima is now used to plot openmath graphs. A slight change was introduced to the syntax of the maxout.openmath file, which makes it incompatible with older versions, but compatible with the eval command of xmaxima's web browser. Index: plot.lisp =================================================================== RCS file: /cvsroot/maxima/maxima/src/plot.lisp,v retrieving revision 1.65 retrieving revision 1.66 diff -u -d -r1.65 -r1.66 --- plot.lisp 29 Apr 2006 13:36:41 -0000 1.65 +++ plot.lisp 27 Jun 2006 14:07:51 -0000 1.66 @@ -16,6 +16,7 @@ (defvar *maxima-plotdir* "") (defvar *maxima-tempdir*) +(defvar *maxima-prefix*) (defvar *z-range* nil) (defvar *original-points* nil) @@ -1125,7 +1126,7 @@ (defvar $mgnuplot_command "mgnuplot") (defvar $geomview_command "geomview") -(defvar $openmath_plot_command "omplotdata") +(defvar $openmath_plot_command "xmaxima") (defun plot-temp-file (file) (if *maxima-tempdir* @@ -1325,17 +1326,18 @@ (or ($listp fun ) (setf fun `((mlist) ,fun))) (show-open-plot (with-output-to-string - (st ) - (format st "~%{plot2d ~%") + (st ) + (cond ($show_openplot (format st "plot2d -data {~%")) + (t (format st "{plot2d ~%"))) (loop for f in (cdr fun) do (incf i) - (format st " {label \"~a\"}~% " + (format st " {label \"~a\"}~%" (let ((string (coerce (mstring f) 'string))) (cond ((< (length string) 9) string) (t (format nil "Fun~a" i)))) ) - (format st "{xversusy ~%") + (format st " {xversusy~%") (let ((lis (cdr (draw2d f range )))) (loop while lis @@ -1356,8 +1358,8 @@ ) (setq lis (cddr lis)) )) - (format st "~%}")) - (format st "~%} ~%")))) + (format st "}")) + (format st "} ")))) (eval-when (load) @@ -1455,8 +1457,10 @@ (declare (special linel)) (show-open-plot (with-output-to-string - (st ) - (format st "{plot2d ~%") + (st ) + (cond + ($show_openplot (format st "plot2d -data {~%")) + (t (format st "{plot2d ~%"))) (or (and ($listp lis) ($listp (nth 1 lis))) (merror "Need a list of curves, [[x1,y1,x2,y2,...],[u1,v1,u2,v2,...]] or [[[x1,y1],[x2,y2],...]")) @@ -1907,7 +1911,7 @@ (cond ($show_openplot (with-open-file (st1 (plot-temp-file "maxout.openmath") :direction :output :if-exists :supersede) (princ ans st1)) - ($system (concatenate 'string *maxima-plotdir* "/" $openmath_plot_command) + ($system (concatenate 'string *maxima-prefix* "/bin/" $openmath_plot_command) (format nil " \"~a\"" (plot-temp-file "maxout.openmath")))) (t (princ ans) ""))) @@ -2008,7 +2012,10 @@ (output-points pl (nth 2 grid))) ($openmath (progn - (format $pstream "{plot3d {matrix_mesh ~%") + (cond + ($show_openplot + (format $pstream "plot3d -data {{matrix_mesh ~%")) + (t (format $pstream "{plot3d {matrix_mesh ~%"))) ;; we do the x y z separately: (loop for off from 0 to 2 with ar = (polygon-pts pl) @@ -2029,7 +2036,10 @@ #+old (progn ; orig (print (list 'grid grid)) - (format $pstream "{plot3d {variable_grid ~%") + (cond + ($show_openplot + (format $pstream "plot3d -data {{variable_grid ~%")) + (t (format $pstream "{plot3d {{variable_grid ~%"))) (let* ((ar (polygon-pts pl)) (x-coords (loop for i to (nth 2 grid) @@ -2083,7 +2093,7 @@ ($zic ($view_zic)) ($ps ($viewps)) ($openmath - ($system (concatenate 'string *maxima-plotdir* "/" $openmath_plot_command) + ($system (concatenate 'string *maxima-prefix* "/bin/" $openmath_plot_command) (format nil " \"~a\"" file))) ($geomview ($system $geomview_command |