Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package octave-forge-vrml for
openSUSE:Factory checked in at 2025-09-14 18:50:55
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/octave-forge-vrml (Old)
and /work/SRC/openSUSE:Factory/.octave-forge-vrml.new.1977 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "octave-forge-vrml"
Sun Sep 14 18:50:55 2025 rev:3 rq:1304555 version:1.0.14
Changes:
--------
--- /work/SRC/openSUSE:Factory/octave-forge-vrml/octave-forge-vrml.changes
2025-01-07 20:52:02.609498847 +0100
+++
/work/SRC/openSUSE:Factory/.octave-forge-vrml.new.1977/octave-forge-vrml.changes
2025-09-14 18:51:51.778339375 +0200
@@ -1,0 +2,12 @@
+Sat Sep 6 17:51:35 UTC 2025 - Stefan BrĂ¼ns <[email protected]>
+
+- Update to version 1.0.14:
+ * The following functions are new:
+ + vrml_Shape
+ + vrml_set_browser
+ * Alternative vrml browsers are now supported with
+ `vrml_set_browser'. Default support for whitedune is now
+ included in addition to freewrl.
+- Drop upstream fix-octave9-line-continuation.patch
+
+-------------------------------------------------------------------
Old:
----
fix-octave9-line-continuation.patch
vrml-1.0.13.tar.gz
New:
----
vrml-1.0.14.tar.gz
----------(Old B)----------
Old: included in addition to freewrl.
- Drop upstream fix-octave9-line-continuation.patch
----------(Old E)----------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ octave-forge-vrml.spec ++++++
--- /var/tmp/diff_new_pack.B0UtqM/_old 2025-09-14 18:51:52.290360832 +0200
+++ /var/tmp/diff_new_pack.B0UtqM/_new 2025-09-14 18:51:52.290360832 +0200
@@ -18,14 +18,13 @@
%define octpkg vrml
Name: octave-forge-%{octpkg}
-Version: 1.0.13
+Version: 1.0.14
Release: 0
Summary: 3D graphics using VRML for Octave
License: GPL-3.0-or-later
Group: Productivity/Scientific/Math
URL: https://gnu-octave.github.io/packages/vrml/
Source0:
https://downloads.sourceforge.net/project/octave/Octave%20Forge%20Packages/Individual%20Package%20Releases/%{octpkg}-%{version}.tar.gz
-Patch0:
https://file.savannah.gnu.org/file/octave-9.patch?file_id=55689#/fix-octave9-line-continuation.patch
BuildRequires: octave-devel
Requires: octave-cli >= 2.9.7
Requires: octave-forge-linear-algebra
@@ -40,9 +39,6 @@
%prep
%setup -c %{name}-%{version}
-(cd vrml
-%patch -P0 -p1
-)
%octave_pkg_src
%build
++++++ vrml-1.0.13.tar.gz -> vrml-1.0.14.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/vrml/DESCRIPTION new/vrml/DESCRIPTION
--- old/vrml/DESCRIPTION 2012-06-18 13:08:21.000000000 +0200
+++ new/vrml/DESCRIPTION 2025-02-10 16:08:41.000000000 +0100
@@ -1,6 +1,6 @@
-Name: Vrml
-Version: 1.0.13
-Date: 2012-06-18
+Name: vrml
+Version: 1.0.14
+Date: 2025-02-10
Author: Etienne Grossmann <[email protected]>
Maintainer: Etienne Grossmann <[email protected]>
Title: VRML.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/vrml/Makefile new/vrml/Makefile
--- old/vrml/Makefile 2012-06-11 18:51:02.000000000 +0200
+++ new/vrml/Makefile 1970-01-01 01:00:00.000000000 +0100
@@ -1,24 +0,0 @@
-sinclude ../../Makeconf
-
-
-PKG_FILES = COPYING DESCRIPTION INDEX $(wildcard src/*) \
- $(wildcard inst/*) $(wilcard data/*) doc/*.pdf doc/*.tex \
- doc/*.lyx doc/Makefile $(wildcard doc/figures/*)
-SUBDIRS = doc/
-
-.PHONY: $(SUBDIRS)
-
-pre-pkg::
- @for _dir in $(SUBDIRS); do \
- $(MAKE) -C $$_dir all; \
- done
-
-clean:
- @for _dir in $(SUBDIRS); do \
- $(MAKE) -C $$_dir clean ; \
- done
- find . \( -name \*~ -o -name \*.bak -o -name \#\* -o -name \.\#\* -\)
-exec rm -f {} \;
-
-documentation:
- make -C ./doc all
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/vrml/NEWS new/vrml/NEWS
--- old/vrml/NEWS 2012-06-12 03:51:29.000000000 +0200
+++ new/vrml/NEWS 2025-02-10 16:08:41.000000000 +0100
@@ -1,3 +1,19 @@
+
+Summary of important user-visible changes for vrml 1.X.X:
+-------------------------------------------------------------------
+
+Summary of important user-visible changes for vrml 1.0.14:
+-------------------------------------------------------------------
+
+ ** The following functions are new:
+
+ vrml_Shape
+ vrml_set_browser
+
+ ** Alternative vrml browsers are now supported with `vrml_set_browser'.
+ Default support for whitedune is now included in addition to freewrl.
+
+
Summary of important user-visible changes for vrml 1.0.13:
-------------------------------------------------------------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/vrml/inst/best_dir_cov.m new/vrml/inst/best_dir_cov.m
--- old/vrml/inst/best_dir_cov.m 2012-04-16 11:01:20.000000000 +0200
+++ new/vrml/inst/best_dir_cov.m 2025-02-10 16:08:41.000000000 +0100
@@ -90,8 +90,8 @@
## d2wx(W+i,(i-1)*P+1:i*P) = \
## 2*x'*(kron(y(i,:))
- d2wx(W+i,:) = \
- 2*x'*kron(y(i,:),kron(d,isig)) - \
+ d2wx(W+i,:) = ...
+ 2*x'*kron(y(i,:),kron(d,isig)) - ...
w'*a'*isig*kron(y(i,:),eye(P)) ;
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/vrml/inst/save_vrml.m new/vrml/inst/save_vrml.m
--- old/vrml/inst/save_vrml.m 2012-04-16 11:50:24.000000000 +0200
+++ new/vrml/inst/save_vrml.m 2025-02-10 16:08:41.000000000 +0100
@@ -54,15 +54,15 @@
bg_node = sprintf (["Background {\n",...
" skyColor %8.3g %8.3g %8.3g\n",...
- "}\n"],\
+ "}\n"],...
bg_col);
bg_node = "";
-lightstr = sprintf (["PointLight {\n",\
- " intensity %8.3g\n",\
- " ambientIntensity %8.3g\n",\
- " direction %8.3g %8.3g %8.3g\n",\
- "}\n"],\
+lightstr = sprintf (["PointLight {\n",...
+ " intensity %8.3g\n",...
+ " ambientIntensity %8.3g\n",...
+ " direction %8.3g %8.3g %8.3g\n",...
+ "}\n"],...
l_intensity, l_ambientIntensity, l_direction);
lightstr = "";
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/vrml/inst/test_moving_surf.m
new/vrml/inst/test_moving_surf.m
--- old/vrml/inst/test_moving_surf.m 2012-06-12 03:45:45.000000000 +0200
+++ new/vrml/inst/test_moving_surf.m 2025-02-10 16:08:41.000000000 +0100
@@ -59,7 +59,7 @@
s4 = vrml_anim ("Coordinate",[a,b,a],"foo.set_point",[0 0.5 1],tn);
- s3 = vrml_faces ([-1 -1 1 1;-1 1 1 -1;0.1 0.1 0.1 0.1],\
+ s3 = vrml_faces ([-1 -1 1 1;-1 1 1 -1;0.1 0.1 0.1 0.1],...
{[1 2 3 4]},"tran",0.4,"col",[0.9 0.4 0.4]);
vrml_browse ([s1,s2,s3,s4])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/vrml/inst/test_vmesh.m new/vrml/inst/test_vmesh.m
--- old/vrml/inst/test_vmesh.m 2012-04-16 11:01:20.000000000 +0200
+++ new/vrml/inst/test_vmesh.m 2025-02-10 16:08:41.000000000 +0100
@@ -46,14 +46,14 @@
printf ("Press a key.\n"); pause;
-printf (["The same surface, with checkered stripes ",\
+printf (["The same surface, with checkered stripes ",...
"(see the 'checker' option).\n"]);
vmesh (z,"checker",-[6,5]);
printf ("Press a key.\n"); pause;
-printf (["The same surface, with z-dependent coloring (see 'zrb', 'zgrey'\n",\
+printf (["The same surface, with z-dependent coloring (see 'zrb',
'zgrey'\n",...
" and 'zcol' options)\n"]);
vmesh (z,"zrb");
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/vrml/inst/test_vrml_faces.m
new/vrml/inst/test_vrml_faces.m
--- old/vrml/inst/test_vrml_faces.m 2012-04-16 11:01:20.000000000 +0200
+++ new/vrml/inst/test_vrml_faces.m 2025-02-10 16:08:41.000000000 +0100
@@ -36,7 +36,7 @@
printf ("Going to show a tetrahedron\n");
- printf (["\n If nothing appears, it may be due to problems",\
+ printf (["\n If nothing appears, it may be due to problems",...
"\n with your FreeWRL installation\n"]);
vrml_browse ([slight, s1]);
printf ("Press a key in this terminal when done\n");pause;
@@ -47,7 +47,7 @@
printf ("Going to show almost the same tetrahedron\n");
- printf (["\n If nothing appears, it may be due to problems",\
+ printf (["\n If nothing appears, it may be due to problems",...
"\n with your FreeWRL installation\n"]);
vrml_browse ([slight, s1]);
printf ("Press a key in this terminal when done\n");pause;
@@ -104,15 +104,15 @@
s1 = vrml_faces (x, trg, "tex",texfile,"imsz",[H,W]);
s2 = vrml_faces (x, trg, "tex",texfile);
- printf (["Tetrahedrons should appear like (R=red, G=green, B=blue)\n\n",\
- " R 2\n",\
- " /\n",\
- " / G\n",\
- " G B /\n",\
- " 3--------4 B\n",\
- " R B \\\n",\
- " \\ R\n",\
- " G \\\n",\
+ printf (["Tetrahedrons should appear like (R=red, G=green, B=blue)\n\n",...
+ " R 2\n",...
+ " /\n",...
+ " / G\n",...
+ " G B /\n",...
+ " 3--------4 B\n",...
+ " R B \\\n",...
+ " \\ R\n",...
+ " G \\\n",...
" 1\n"]);
vrml_browse ([slight, s1, vrml_transfo(s2,[2,0,0])]);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/vrml/inst/vmesh.m new/vrml/inst/vmesh.m
--- old/vrml/inst/vmesh.m 2012-04-17 05:08:54.000000000 +0200
+++ new/vrml/inst/vmesh.m 2025-02-10 16:08:41.000000000 +0100
@@ -108,7 +108,7 @@
if numel (varargin)
- op1 = [" tran col checker creaseAngle emit colorPerVertex tex zcol frame ",\
+ op1 = [" tran col checker creaseAngle emit colorPerVertex tex zcol frame
",...
" level lcol ltran bwid "];
op0 = " smooth zgray zrb normalize steps bars ";
@@ -120,8 +120,8 @@
# all_surf_opts = list ("tran", "col", "checker", "creaseAngle", "emit", \
# "colorPerVertex", "smooth", "tex",\
# "zgray","zrb","zcol");
- all_surf_opts = {"tran", "col", "checker", "creaseAngle", "emit", \
- "colorPerVertex", "smooth", "steps", "bars", "bwid", "tex",\
+ all_surf_opts = {"tran", "col", "checker", "creaseAngle", "emit", ...
+ "colorPerVertex", "smooth", "steps", "bars", "bwid",
"tex",...
"zgray","zrb","zcol"};
for i = 1:length(all_surf_opts)
@@ -187,10 +187,10 @@
# pl = [pl1 pl2];
-pl = [vrml_DirectionalLight("direction",[-1,-1,-1],"intensity",0.75),\
- vrml_DirectionalLight("direction",[-1, 1,-1],"intensity",0.5),\
- vrml_DirectionalLight("direction",[ 1,-1,-1],"intensity",0.5),\
- vrml_DirectionalLight("direction",[ 1, 1,-1],"intensity",0.33),\
+pl = [vrml_DirectionalLight("direction",[-1,-1,-1],"intensity",0.75),...
+ vrml_DirectionalLight("direction",[-1, 1,-1],"intensity",0.5),...
+ vrml_DirectionalLight("direction",[ 1,-1,-1],"intensity",0.5),...
+ vrml_DirectionalLight("direction",[ 1, 1,-1],"intensity",0.33),...
vrml_DirectionalLight("direction",[ 0, 0, 1],"intensity",0.5)];
# distance = max ([max (x(:)) - min (x(:)),\
@@ -205,7 +205,7 @@
ptssz = (maxpts - minpts);
ptssz = max (ptssz, max (ptssz/10));
-if frame, fr = vrml_frame (minpts-ptssz/10,\
+if frame, fr = vrml_frame (minpts-ptssz/10,...
"scale", ptssz * 1.2, "col",(ones(3)+eye(3))/2);
else fr = "";
end
@@ -235,10 +235,10 @@
if prod (size (ltran)) == 1 , ltran = ltran*ones(1,nlev); end
for i = 1:nlev
- slevel = [slevel, \
- vrml_parallelogram([xmin xmin xmax xmax;\
- ymin ymax ymax ymin;\
- level(i) level(i) level(i) level(i)],\
+ slevel = [slevel, ...
+ vrml_parallelogram([xmin xmin xmax xmax;...
+ ymin ymax ymax ymin;...
+ level(i) level(i) level(i) level(i)],...
"col",lcol(i,:),"tran",ltran(i))];
end
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/vrml/inst/vrml_DirectionalLight.m
new/vrml/inst/vrml_DirectionalLight.m
--- old/vrml/inst/vrml_DirectionalLight.m 2012-04-17 07:02:15.000000000
+0200
+++ new/vrml/inst/vrml_DirectionalLight.m 2025-02-10 16:08:41.000000000
+0100
@@ -39,10 +39,10 @@
hash = setfield(hash,varargin{k:k+1});
end
-tpl = struct ("ambientIntensity", "%8.3f",\
- "intensity", "%8.3f",\
- "direction", "%8.3f",\
- "on", "%s",\
+tpl = struct ("ambientIntensity", "%8.3f",...
+ "intensity", "%8.3f",...
+ "direction", "%8.3f",...
+ "on", "%s",...
"color", "%8.3f %8.3f %8.3f");
body = "";
@@ -55,7 +55,7 @@
error (sprintf ("vrml_PointLight : unknown field '%s'",key));
end
- body = [body,\
+ body = [body,...
sprintf(" %-20s %s\n",key,
sprintf(getfield (tpl,key), val))];
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/vrml/inst/vrml_PointLight.m
new/vrml/inst/vrml_PointLight.m
--- old/vrml/inst/vrml_PointLight.m 2012-04-16 11:53:45.000000000 +0200
+++ new/vrml/inst/vrml_PointLight.m 2025-02-10 16:08:41.000000000 +0100
@@ -40,12 +40,12 @@
if mod(nargin,2) != 0, print_usage; end
h = struct (varargin{:});
-tpl = struct ("ambientIntensity", "%8.3f",\
- "intensity", "%8.3f",\
- "radius", "%8.3f",\
- "on", "%s",\
- "attenuation", "%8.3f %8.3f %8.3f",\
- "color", "%8.3f %8.3f %8.3f",\
+tpl = struct ("ambientIntensity", "%8.3f",...
+ "intensity", "%8.3f",...
+ "radius", "%8.3f",...
+ "on", "%s",...
+ "attenuation", "%8.3f %8.3f %8.3f",...
+ "color", "%8.3f %8.3f %8.3f",...
"location", "%8.3f %8.3f %8.3f");
body = "";
@@ -61,8 +61,8 @@
end
- body = [body,\
- sprintf(" %-20s %s\n",key, \
+ body = [body,...
+ sprintf(" %-20s %s\n",key, ...
sprintf (getfield (tpl,key), val))];
end
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/vrml/inst/vrml_Shape.m new/vrml/inst/vrml_Shape.m
--- old/vrml/inst/vrml_Shape.m 1970-01-01 01:00:00.000000000 +0100
+++ new/vrml/inst/vrml_Shape.m 2025-02-10 16:08:41.000000000 +0100
@@ -0,0 +1,45 @@
+## Copyright (C) 2012 Etienne Grossmann <[email protected]>
+##
+## This program is free software; you can redistribute it and/or modify it
under
+## the terms of the GNU General Public License as published by the Free
Software
+## Foundation; either version 3 of the License, or (at your option) any later
+## version.
+##
+## This program is distributed in the hope that it will be useful, but WITHOUT
+## ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
more
+## details.
+##
+## You should have received a copy of the GNU General Public License along with
+## this program; if not, see <http://www.gnu.org/licenses/>.
+##
+## s = vrml_Shape (s_geometry, s_appearance) - VRML code for a shape node
+##
+## Example: An orange flat box
+##
+## vrml_browse (vrml_Shape (vrml_Box ([3 2 0.2]),vrml_material([1 .5 0])))
+function s = vrml_Shape (s_geometry, s_appearance)
+
+if nargin < 1, s_geometry = ""; end
+if nargin < 2, s_appearance = ""; end
+
+if !isempty (s_geometry),
+ s_geometry = ["\n geometry ",s_geometry];
+end
+if !isempty (s_appearance),
+
+ # Check whether a "material" is passed. If yes,
+ # wrap it in an Appearance
+ is_material = strfind (s_appearance,"material");
+ if !isempty (is_material),
+ is_material = is_material(1) != 1 || all (s_appearance(1:is_material(1)-1)
== " ");
+ end
+ if is_material
+ s_appearance = ["Appearance {\n",s_appearance,"}\n"];
+ end
+
+ s_appearance = ["\n appearance ",s_appearance];
+
+end
+
+s = ["Shape {",s_appearance,s_geometry,"}\n"];
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/vrml/inst/vrml_TimeSensor.m
new/vrml/inst/vrml_TimeSensor.m
--- old/vrml/inst/vrml_TimeSensor.m 2012-06-08 20:12:34.000000000 +0200
+++ new/vrml/inst/vrml_TimeSensor.m 2025-02-10 16:08:41.000000000 +0100
@@ -42,10 +42,10 @@
verbose = 0;
-tpl = struct ("cycleInterval", "SFTime",\
-"startTime", "SFTime",\
-"stopTime", "SFTime",\
-"enabled", "SFBool",\
+tpl = struct ("cycleInterval", "SFTime",...
+"startTime", "SFTime",...
+"stopTime", "SFTime",...
+"enabled", "SFBool",...
"loop", "SFBool"
);
@@ -55,7 +55,7 @@
# Transform varargin into key-value pairs
i = j = k = 1; # i:pos in new varargin, j:pos in headpar,
# k:pos is old varargin.
-while i <= length (varargin) && \
+while i <= length (varargin) && ...
! (ischar (varargin{i}) && isfield (tpl, varargin{i}))
if j <= length (headpar)
@@ -70,7 +70,7 @@
i += 2;
k++;
else
- error ("vrml_TimeSensor : Argument %i should be string, not '%s'",\
+ error ("vrml_TimeSensor : Argument %i should be string, not '%s'",...
k,typeinfo (varargin{i}));
end
end
@@ -86,11 +86,11 @@
k = varargin{i++}; # Read key
if ! ischar (k)
- error ("vrml_TimeSensor : Arg n. %i should be a string, not a %s.",\
+ error ("vrml_TimeSensor : Arg n. %i should be a string, not a %s.",...
i-1, typeinfo (k));
end
if ! isfield (tpl, k) && ! strcmp (k,"DEF")
- error ("vrml_TimeSensor : Unknown field '%s'. Should be one of :\n%s",\
+ error ("vrml_TimeSensor : Unknown field '%s'. Should be one of :\n%s",...
k, sprintf (" '%s'\n",fieldnames (tpl)'{:}));
end
@@ -107,7 +107,7 @@
else # Add data field
if verbose
- printf ("vrml_TimeSensor : Adding '%s' of type %s, with arg of type
%s\n",\
+ printf ("vrml_TimeSensor : Adding '%s' of type %s, with arg of type
%s\n",...
k,getfield(tpl,k),typeinfo (v));
end
tmp = getfield(tpl,k);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/vrml/inst/vrml_Viewpoint.m
new/vrml/inst/vrml_Viewpoint.m
--- old/vrml/inst/vrml_Viewpoint.m 2012-04-16 11:53:45.000000000 +0200
+++ new/vrml/inst/vrml_Viewpoint.m 2025-02-10 16:08:41.000000000 +0100
@@ -42,12 +42,12 @@
h = struct (varargin{:});
-tpl = struct ("fieldOfView", "%8.3f",\
- "jump", "%s",\
- "orientation", "%8.3f %8.3f %8.3f %8.3f",\
- "orientation0", "%8.3f %8.3f %8.3f %8.3f",\
- "position", "%8.3f %8.3f %8.3f",\
- "description", "\"%s\"",\
+tpl = struct ("fieldOfView", "%8.3f",...
+ "jump", "%s",...
+ "orientation", "%8.3f %8.3f %8.3f %8.3f",...
+ "orientation0", "%8.3f %8.3f %8.3f %8.3f",...
+ "position", "%8.3f %8.3f %8.3f",...
+ "description", "\"%s\"",...
"DEF", "");
DEF = "";
defaultPos = [0 0 10];
@@ -113,8 +113,8 @@
body = "";
for [val, key] = h
- body = [body,\
- sprintf(" %-20s %s\n",key, \
+ body = [body,...
+ sprintf(" %-20s %s\n",key, ...
sprintf (getfield (tpl,key), val))];
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/vrml/inst/vrml_arrow.m new/vrml/inst/vrml_arrow.m
--- old/vrml/inst/vrml_arrow.m 2012-04-16 11:01:20.000000000 +0200
+++ new/vrml/inst/vrml_arrow.m 2025-02-10 16:08:41.000000000 +0100
@@ -76,43 +76,43 @@
smat1 = vrml_material (col(:,1), emit);
smat2 = vrml_material (col(:,2), emit);
-v = sprintf (["Group {\n",\
- " children [\n",\
- " Transform {\n",\
- " translation %8.3g %8.3g %8.3g\n",\
- " children [\n",\
- " Shape {\n",\
- " appearance Appearance {\n",\
- smat1,\
- " }\n"\
- " geometry Cylinder {\n",\
- " radius %8.3g\n",\
- " height %8.3g\n",\
- " }\n",\
- " }\n",\
- " ]\n",\
- " }\n",\
- " Transform {\n",\
- " translation %8.3g %8.3g %8.3g\n",\
- " children [\n",\
- " Shape {\n",\
- " appearance Appearance {\n",\
- smat2,\
- " }\n",\
- " geometry Cone { \n",\
- " bottomRadius %8.3g \n",\
- " height %8.3g\n",\
- " }\n",\
- " }\n",\
- " ]\n",\
- " }\n",\
- " ]\n",\
- "}\n"],\
- [0,(sz(1)-sz(2))/2,0],\
- sz(4),\
- sz(1)-sz(2),\
- [0,sz(2)/2+sz(1)-sz(2),0],\
- sz(3),\
+v = sprintf (["Group {\n",...
+ " children [\n",...
+ " Transform {\n",...
+ " translation %8.3g %8.3g %8.3g\n",...
+ " children [\n",...
+ " Shape {\n",...
+ " appearance Appearance {\n",...
+ smat1,...
+ " }\n"...
+ " geometry Cylinder {\n",...
+ " radius %8.3g\n",...
+ " height %8.3g\n",...
+ " }\n",...
+ " }\n",...
+ " ]\n",...
+ " }\n",...
+ " Transform {\n",...
+ " translation %8.3g %8.3g %8.3g\n",...
+ " children [\n",...
+ " Shape {\n",...
+ " appearance Appearance {\n",...
+ smat2,...
+ " }\n",...
+ " geometry Cone { \n",...
+ " bottomRadius %8.3g \n",...
+ " height %8.3g\n",...
+ " }\n",...
+ " }\n",...
+ " ]\n",...
+ " }\n",...
+ " ]\n",...
+ "}\n"],...
+ [0,(sz(1)-sz(2))/2,0],...
+ sz(4),...
+ sz(1)-sz(2),...
+ [0,sz(2)/2+sz(1)-sz(2),0],...
+ sz(3),...
sz(2));
endfunction
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/vrml/inst/vrml_browse.m new/vrml/inst/vrml_browse.m
--- old/vrml/inst/vrml_browse.m 2012-04-16 11:01:20.000000000 +0200
+++ new/vrml/inst/vrml_browse.m 2025-02-10 16:08:41.000000000 +0100
@@ -32,7 +32,7 @@
## 's' : Save a snapshot in files 'octave.snapshot.NNNN.ppm'
## 'q' : Quit
##
-## WARNING : FreeWRL >0.25 (http://www.crc.ca/FreeWRL/) must be installed.
+## WARNING: vrml_browse() only works if a vrml browser is available. See
vrml_set_browser().
##
## BUG : The vrml browser is not killed when octave exits. Sometimes the
## vrml browser does not get raised or gets raised improperly
@@ -85,9 +85,11 @@
s = [s, vrml_Background("skyColor",[.7 .7 .9])];
end
+if isempty (vrml_b_name)
+ vrml_set_browser();
+endif
-vrml_b_name = "freewrl" ;
-##vrml_b_name = "/home/etienne/bin/my_freewrl.sh";
+## vrml_b_name = "freewrl" ;
##b_opt = [out_option," ",bop," ",best_option," --server --snapb octave.snap "]
##;
@@ -113,7 +115,7 @@
end
else
if verbose
- printf ( ["vrml_browse : ",\
+ printf ( ["vrml_browse : ",...
"browser pid=%d died. I'll spawn another\n"], vrml_b_pid);
end
vrml_b_pid = -1 ;
@@ -165,7 +167,7 @@
# ####################################
# ####################################
- # Eventually start browser ###########
+ # If needed, start browser ###########
if vrml_b_pid <= 0
new_browser = 1 ;
if verbose,
@@ -194,7 +196,7 @@
## cmd
if status,
- printf("vrml_browse : Can't start browser '%s'. Is it installed?\n",\
+ printf("vrml_browse : Can't start browser '%s'. Is it installed?\n",...
vrml_b_name);
p = vrml_b_pid ;
return ;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/vrml/inst/vrml_cyl.m new/vrml/inst/vrml_cyl.m
--- old/vrml/inst/vrml_cyl.m 2012-04-16 11:01:20.000000000 +0200
+++ new/vrml/inst/vrml_cyl.m 2025-02-10 16:08:41.000000000 +0100
@@ -48,7 +48,7 @@
op1 = " rad tran col hcol brad emit " ;
op0 = " verbose balls noemit arrow " ;
- df = tars (rad, tran, col, hcol, verbose, balls, noemit, arrow, brad, \
+ df = tars (rad, tran, col, hcol, verbose, balls, noemit, arrow, brad, ...
emit);
@@ -97,36 +97,36 @@
smat = vrml_material (col(:,i-1), emitcol(:,i-1), tran(i-1));
# Do a cylinder
- s = [s,sprintf(["Transform {\n",\
- " translation %8.3f %8.3f %8.3f\n",\
- " children [\n",\
- " Transform {\n",\
- " rotation %8.3f %8.3f %8.3f %8.3f\n",\
- " children [\n",\
- " Shape {\n",\
- " appearance Appearance {\n",\
- " %s",\
- " }\n",\
- " geometry Cylinder {\n",\
- " height %8.3f\n",\
- " radius %8.3f\n",\
- " }\n",\
- " }\n",\
- " ]\n",\
- " }\n",\
- " ]\n",\
- "}\n"],\
- t,\
- ax,an,\
- smat,\
- n,\
+ s = [s,sprintf(["Transform {\n",...
+ " translation %8.3f %8.3f %8.3f\n",...
+ " children [\n",...
+ " Transform {\n",...
+ " rotation %8.3f %8.3f %8.3f %8.3f\n",...
+ " children [\n",...
+ " Shape {\n",...
+ " appearance Appearance {\n",...
+ " %s",...
+ " }\n",...
+ " geometry Cylinder {\n",...
+ " height %8.3f\n",...
+ " radius %8.3f\n",...
+ " }\n",...
+ " }\n",...
+ " ]\n",...
+ " }\n",...
+ " ]\n",...
+ "}\n"],...
+ t,...
+ ax,an,...
+ smat,...
+ n,...
rad)];
else
t = x(:,i-1) ;
if isnan (hcol), hcol = col(:,i); end
arrowcol = [col(:,i) hcol(1:3)(:)];
- s = [s,\
- vrml_transfo(vrml_arrow ([n,nan,2*rad/n,rad/n],arrowcol,emit),\
+ s = [s,...
+ vrml_transfo(vrml_arrow ([n,nan,2*rad/n,rad/n],arrowcol,emit),...
t, ax*an)];
end
end
@@ -137,7 +137,7 @@
s = [s, vrml_points(x,"balls","col",col, "rad",brad,"emit",emit)];
elseif columns(x)>2,
# Make a rounded junction
- s = [s, vrml_points(x(:,2:columns(x)-1),"balls","col",col,"rad",rad, \
+ s = [s, vrml_points(x(:,2:columns(x)-1),"balls","col",col,"rad",rad, ...
"emit", emit)];
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/vrml/inst/vrml_demo_tutorial_1.m
new/vrml/inst/vrml_demo_tutorial_1.m
--- old/vrml/inst/vrml_demo_tutorial_1.m 2012-04-16 11:01:20.000000000
+0200
+++ new/vrml/inst/vrml_demo_tutorial_1.m 2025-02-10 16:08:41.000000000
+0100
@@ -13,19 +13,19 @@
## You should have received a copy of the GNU General Public License along with
## this program; if not, see <http://www.gnu.org/licenses/>.
-printf (["\n",\
- " VRML Mini-HOWTO's first listing\n",\
+printf (["\n",...
+ " VRML Mini-HOWTO's first listing\n",...
" Display a quadratic surface w/ 31 x 31 points\n\n"]);
-printf ([" Reminder of FreeWRL keystrokes and mouse actions :\n"\
- " q : quit\n",\
- " w : switch to walk mode\n",\
- " e : switch to examine mode\n",\
- " h : toggle headlights on or off\n",\
- " drag left mouse : rotate (examine mode) or translate\n",\
- " (walk mode).\n",\
- " drag right mouse : zoom (examine mode) or translate\n",\
- " (walk mode).\n",\
+printf ([" Reminder of FreeWRL keystrokes and mouse actions :\n"...
+ " q : quit\n",...
+ " w : switch to walk mode\n",...
+ " e : switch to examine mode\n",...
+ " h : toggle headlights on or off\n",...
+ " drag left mouse : rotate (examine mode) or translate\n",...
+ " (walk mode).\n",...
+ " drag right mouse : zoom (examine mode) or translate\n",...
+ " (walk mode).\n",...
"\n"]);
## Listing 1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/vrml/inst/vrml_demo_tutorial_2.m
new/vrml/inst/vrml_demo_tutorial_2.m
--- old/vrml/inst/vrml_demo_tutorial_2.m 2012-04-17 07:02:15.000000000
+0200
+++ new/vrml/inst/vrml_demo_tutorial_2.m 2025-02-10 16:08:41.000000000
+0100
@@ -16,19 +16,19 @@
printf("vrml_select_points does not work any more. Sorry\n");
return
-printf (["\n",\
- " VRML Mini-HOWTO's second listing\n",\
+printf (["\n",...
+ " VRML Mini-HOWTO's second listing\n",...
" Show 3D points and select some with the mouse\n\n"]);
-printf ([" Reminder of FreeWRL keystrokes and mouse actions :\n"\
- " q : quit\n",\
- " w : switch to walk mode\n",\
- " e : switch to examine mode\n",\
- " drag left mouse : rotate (examine mode) or translate\n",\
- " (walk mode).\n",\
- " drag right mouse : zoom (examine mode) or translate\n",\
- " (walk mode).\n",\
- " click on box : toggle selection\n",\
+printf ([" Reminder of FreeWRL keystrokes and mouse actions :\n"...
+ " q : quit\n",...
+ " w : switch to walk mode\n",...
+ " e : switch to examine mode\n",...
+ " drag left mouse : rotate (examine mode) or translate\n",...
+ " (walk mode).\n",...
+ " drag right mouse : zoom (examine mode) or translate\n",...
+ " (walk mode).\n",...
+ " click on box : toggle selection\n",...
"\n"]);
## Listing 2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/vrml/inst/vrml_demo_tutorial_3.m
new/vrml/inst/vrml_demo_tutorial_3.m
--- old/vrml/inst/vrml_demo_tutorial_3.m 2012-04-17 07:02:15.000000000
+0200
+++ new/vrml/inst/vrml_demo_tutorial_3.m 2025-02-10 16:08:41.000000000
+0100
@@ -13,18 +13,18 @@
## You should have received a copy of the GNU General Public License along with
## this program; if not, see <http://www.gnu.org/licenses/>.
-printf (["\n",\
- " VRML Mini-HOWTO's second listing\n",\
+printf (["\n",...
+ " VRML Mini-HOWTO's second listing\n",...
" Show a XYZ frame with a background\n\n"]);
-printf ([" Reminder of FreeWRL keystrokes and mouse actions :\n"\
- " q : quit\n",\
- " w : switch to walk mode\n",\
- " e : switch to examine mode\n",\
- " drag left mouse : rotate (examine mode) or translate\n",\
- " (walk mode).\n",\
- " drag right mouse : zoom (examine mode) or translate\n",\
- " (walk mode).\n",\
+printf ([" Reminder of FreeWRL keystrokes and mouse actions :\n"...
+ " q : quit\n",...
+ " w : switch to walk mode\n",...
+ " e : switch to examine mode\n",...
+ " drag left mouse : rotate (examine mode) or translate\n",...
+ " (walk mode).\n",...
+ " drag right mouse : zoom (examine mode) or translate\n",...
+ " (walk mode).\n",...
"\n"]);
## Listing 3
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/vrml/inst/vrml_demo_tutorial_4.m
new/vrml/inst/vrml_demo_tutorial_4.m
--- old/vrml/inst/vrml_demo_tutorial_4.m 2012-04-16 11:01:20.000000000
+0200
+++ new/vrml/inst/vrml_demo_tutorial_4.m 2025-02-10 16:08:41.000000000
+0100
@@ -13,19 +13,19 @@
## You should have received a copy of the GNU General Public License along with
## this program; if not, see <http://www.gnu.org/licenses/>.
-printf (["\n",\
- " VRML Mini-HOWTO's second listing\n",\
+printf (["\n",...
+ " VRML Mini-HOWTO's second listing\n",...
" Show a helix of ellipsoids and one consisting of
cylinders\n\n"]);
-printf ([" Reminder of FreeWRL keystrokes and mouse actions :\n"\
- " q : quit\n",\
- " w : switch to walk mode\n",\
- " e : switch to examine mode\n",\
- " h : toggle headlights on or off\n",\
- " drag left mouse : rotate (examine mode) or translate\n",\
- " (walk mode).\n",\
- " drag right mouse : zoom (examine mode) or translate\n",\
- " (walk mode).\n",\
+printf ([" Reminder of FreeWRL keystrokes and mouse actions :\n"...
+ " q : quit\n",...
+ " w : switch to walk mode\n",...
+ " e : switch to examine mode\n",...
+ " h : toggle headlights on or off\n",...
+ " drag left mouse : rotate (examine mode) or translate\n",...
+ " (walk mode).\n",...
+ " drag right mouse : zoom (examine mode) or translate\n",...
+ " (walk mode).\n",...
"\n"]);
## Listing 4
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/vrml/inst/vrml_ellipsoid.m
new/vrml/inst/vrml_ellipsoid.m
--- old/vrml/inst/vrml_ellipsoid.m 2012-04-16 11:01:20.000000000 +0200
+++ new/vrml/inst/vrml_ellipsoid.m 2025-02-10 16:08:41.000000000 +0100
@@ -48,26 +48,26 @@
[r,a] = rotparams (u');
-v = sprintf (["Transform {\n",\
- " translation 0 0 0\n",\
- " rotation %8.3g %8.3g %8.3g %8.3g\n",\
- " scale %8.3g %8.3g %8.3g\n",\
- " children [\n",\
- " Shape {\n",\
- " appearance Appearance {\n",\
- " material Material {\n",\
- " diffuseColor %8.3g %8.3g %8.3g\n",\
- " emissiveColor %8.3g %8.3g %8.3g\n",\
- " }\n",\
- " }\n",\
- " geometry Sphere {}\n",\
- " }\n",\
- " ]\n",\
- "}\n",\
- ],\
- r,a,\
- d,\
- col,\
+v = sprintf (["Transform {\n",...
+ " translation 0 0 0\n",...
+ " rotation %8.3g %8.3g %8.3g %8.3g\n",...
+ " scale %8.3g %8.3g %8.3g\n",...
+ " children [\n",...
+ " Shape {\n",...
+ " appearance Appearance {\n",...
+ " material Material {\n",...
+ " diffuseColor %8.3g %8.3g %8.3g\n",...
+ " emissiveColor %8.3g %8.3g %8.3g\n",...
+ " }\n",...
+ " }\n",...
+ " geometry Sphere {}\n",...
+ " }\n",...
+ " ]\n",...
+ "}\n",...
+ ],...
+ r,a,...
+ d,...
+ col,...
col/20);
endfunction
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/vrml/inst/vrml_faces.m new/vrml/inst/vrml_faces.m
--- old/vrml/inst/vrml_faces.m 2012-04-17 07:02:15.000000000 +0200
+++ new/vrml/inst/vrml_faces.m 2025-02-10 16:08:41.000000000 +0100
@@ -153,11 +153,11 @@
texcoord_point_str = sprintf (" %8.5f %8.5f\n", tcoord);
- col_str_2 = sprintf ([" texCoord TextureCoordinate {\n",\
- " point [\n %s]\n",\
- " }\n"\
- ],\
- texcoord_point_str\
+ col_str_2 = sprintf ([" texCoord TextureCoordinate {\n",...
+ " point [\n %s]\n",...
+ " }\n"...
+ ],...
+ texcoord_point_str...
);
# If texture has been provided
@@ -187,14 +187,14 @@
tcoord = tcoord (:,1:3*nfaces);
end
- col_str_2 = sprintf ([" texCoord TextureCoordinate {\n",\
- " point [\n %s]\n",\
- " }\n",\
- " texCoordIndex [\n %s]\n",\
- " coordIndex [\n %s]\n",\
- ],\
- sprintf ("%10.8f %10.8f,\n ",tcoord),\
- sprintf ("%-4d, %-4d, %-4d, -1,\n ",0:3*nfaces-1),\
+ col_str_2 = sprintf ([" texCoord TextureCoordinate {\n",...
+ " point [\n %s]\n",...
+ " }\n",...
+ " texCoordIndex [\n %s]\n",...
+ " coordIndex [\n %s]\n",...
+ ],...
+ sprintf ("%10.8f %10.8f,\n ",tcoord),...
+ sprintf ("%-4d, %-4d, %-4d, -1,\n
",0:3*nfaces-1),...
sprintf ("%-4d, %-4d, %-4d, -1,\n ",f-1)
);
@@ -205,7 +205,7 @@
# surface
col_str_1 = [" appearance Appearance {\n",...
- vrml_material(col, emit, tran,DEFcol),\
+ vrml_material(col, emit, tran,DEFcol),...
" }\n"];
col_str_2 = "";
@@ -219,7 +219,7 @@
if tran, ts = sprintf ("transparency %8.3f",tran);
else ts = "";
end
- col_str_1 = ["appearance Appearance {\n",\
+ col_str_1 = ["appearance Appearance {\n",...
" material Material {",ts,"}\n}\n"];
end
if isnan (colorPerVertex)
@@ -229,13 +229,13 @@
end
if colorPerVertex, cPVs = "TRUE"; else cPVs = "FALSE"; end
- col_str_2 = sprintf ([" colorPerVertex %s\n",\
- " color %s Color {\n",\
- " color [\n%s\n",\
- " ]\n",\
- " }"],\
- cPVs,\
- col_def_str,\
+ col_str_2 = sprintf ([" colorPerVertex %s\n",...
+ " color %s Color {\n",...
+ " color [\n%s\n",...
+ " ]\n",...
+ " }"],...
+ cPVs,...
+ col_def_str,...
sprintf(" %8.3f %8.3f %8.3f,\n",col));
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/vrml/inst/vrml_frame.m new/vrml/inst/vrml_frame.m
--- old/vrml/inst/vrml_frame.m 2012-04-16 11:35:51.000000000 +0200
+++ new/vrml/inst/vrml_frame.m 2025-02-10 16:08:41.000000000 +0100
@@ -65,12 +65,12 @@
verbose = 0;
## df = tars (col, hcol, diam, scale, verbose);
- df = struct ("dc", dc, \ # Diameter of cone (absolute)
- "dr", dr, \ # Diameter of rod (absolute)
- "col", col, \ # Color
- "hcol", hcol, \ # Color of head (if different)
- "diam", diam, \ # Diameter of cone relative to branch length
- "scale", scale, \ # Lenght of branches
+ df = struct ("dc", dc, ... # Diameter of cone (absolute)
+ "dr", dr, ... # Diameter of rod (absolute)
+ "col", col, ... # Color
+ "hcol", hcol, ... # Color of head (if different)
+ "diam", diam, ... # Diameter of cone relative to branch length
+ "scale", scale, ... # Lenght of branches
"verbose",verbose);
op1 = " col hcol diam scale dc dr ";
op0 = " verbose ";
@@ -127,17 +127,17 @@
tmp = [r2(:,1), null(r2(:,1)')](:,[2,1,3])';
if det (tmp) < 0, tmp(3,:) *= -1; end
-a1 = vrml_transfo (vrml_arrow(sz(:,1),[col(1,:);hcol(1,:)],0),\
+a1 = vrml_transfo (vrml_arrow(sz(:,1),[col(1,:);hcol(1,:)],0),...
[0,0,0],tmp);
## keyboard
tmp = [r2(:,2), null(r2(:,2)')](:,[2,1,3])';
if det (tmp) < 0, tmp(3,:) *= -1; end
-a2 = vrml_transfo (vrml_arrow(sz(:,2),[col(2,:);hcol(2,:)],0),\
+a2 = vrml_transfo (vrml_arrow(sz(:,2),[col(2,:);hcol(2,:)],0),...
[0,0,0],tmp);
tmp = [r2(:,3), null(r2(:,3)')](:,[2,1,3])';
if det (tmp) < 0, tmp(3,:) *= -1; end
-a3 = vrml_transfo (vrml_arrow(sz(:,3),[col(3,:);hcol(3,:)],0),\
+a3 = vrml_transfo (vrml_arrow(sz(:,3),[col(3,:);hcol(3,:)],0),...
[0,0,0],tmp);
f0 = vrml_group (a1, a2, a3);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/vrml/inst/vrml_group.m new/vrml/inst/vrml_group.m
--- old/vrml/inst/vrml_group.m 2012-04-16 11:50:24.000000000 +0200
+++ new/vrml/inst/vrml_group.m 2025-02-10 16:08:41.000000000 +0100
@@ -34,11 +34,11 @@
ni = 4;
s = [blanks(ni), strrep(s,"\n",["\n",blanks(ni)])(:)'];
-v = sprintf (["Group {\n",\
- " children [\n",\
- "%s",\
- " ]\n",\
- "}\n"],\
+v = sprintf (["Group {\n",...
+ " children [\n",...
+ "%s",...
+ " ]\n",...
+ "}\n"],...
s);
endfunction
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/vrml/inst/vrml_material.m
new/vrml/inst/vrml_material.m
--- old/vrml/inst/vrml_material.m 2012-04-16 11:01:20.000000000 +0200
+++ new/vrml/inst/vrml_material.m 2025-02-10 16:08:41.000000000 +0100
@@ -53,10 +53,10 @@
else sd = ["DEF ",DEF];
end
-s = sprintf ([" material ",sd," Material {\n",\
- se,st,\
- " diffuseColor %8.3g %8.3g %8.3g \n",\
- " }\n"],\
+s = sprintf ([" material ",sd," Material {\n",...
+ se,st,...
+ " diffuseColor %8.3g %8.3g %8.3g \n",...
+ " }\n"],...
dc);
endfunction
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/vrml/inst/vrml_parallelepiped.m
new/vrml/inst/vrml_parallelepiped.m
--- old/vrml/inst/vrml_parallelepiped.m 2012-04-16 11:01:20.000000000 +0200
+++ new/vrml/inst/vrml_parallelepiped.m 2025-02-10 16:08:41.000000000 +0100
@@ -66,15 +66,15 @@
end
end
-x = [bnds([1 2 2 1 1 2 2 1],1)';\
- bnds([1 1 2 2 1 1 2 2],2)';\
+x = [bnds([1 2 2 1 1 2 2 1],1)';...
+ bnds([1 1 2 2 1 1 2 2],2)';...
bnds([1 1 1 1 2 2 2 2],3)'];
-faces = [1 2 3 4;\
- 5 6 7 8;\
- 1 2 6 5;\
- 2 3 7 6;\
- 3 4 8 7;\
+faces = [1 2 3 4;...
+ 5 6 7 8;...
+ 1 2 6 5;...
+ 2 3 7 6;...
+ 3 4 8 7;...
4 1 5 8]';
# The facet
@@ -99,8 +99,8 @@
if isnan (bocol), bocol = col; end
if !balls # Make pretty junctions of cylinders
- s = [s,\
- vrml_cyl(x(:,[1:columns(x),1]),"rad",borad,"emit",boemit,"col",col),\
+ s = [s,...
+ vrml_cyl(x(:,[1:columns(x),1]),"rad",borad,"emit",boemit,"col",col),...
vrml_points(x(:,1),"balls","rad",borad,"emit",boemit,"col",col)];
else # but only if balls don't cover them
s = [s,vrml_cyl(x(:,[1:columns(x),1]),"rad",borad,"emit",boemit)];
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/vrml/inst/vrml_parallelogram.m
new/vrml/inst/vrml_parallelogram.m
--- old/vrml/inst/vrml_parallelogram.m 2012-04-16 11:01:20.000000000 +0200
+++ new/vrml/inst/vrml_parallelogram.m 2025-02-10 16:08:41.000000000 +0100
@@ -86,8 +86,8 @@
if isnan (bocol), bocol = col; end
if !balls # Make pretty junctions of cylinders
- s = [s,\
- vrml_cyl(x(:,[1:columns(x),1]),"rad",borad,"emit",boemit,"col",col),\
+ s = [s,...
+ vrml_cyl(x(:,[1:columns(x),1]),"rad",borad,"emit",boemit,"col",col),...
vrml_points(x(:,1),"balls","rad",borad,"emit",boemit,"col",col)];
else # but only if balls don't cover them
s = [s,vrml_cyl(x(:,[1:columns(x),1]),"rad",borad,"emit",boemit)];
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/vrml/inst/vrml_points.m new/vrml/inst/vrml_points.m
--- old/vrml/inst/vrml_points.m 2012-04-16 11:01:20.000000000 +0200
+++ new/vrml/inst/vrml_points.m 2025-02-10 16:08:41.000000000 +0100
@@ -103,19 +103,19 @@
if prod (size (col)) == 3*P # One color per point
smat = "";
- scol = sprintf (" color Color { color [\n %s]\n }\n",\
+ scol = sprintf (" color Color { color [\n %s]\n }\n",...
sprintf (" %8.3f %8.3f %8.3f\n", col));
else # One color
- smat = [" appearance Appearance {\n",\
- vrml_material(col, emit),"\n",\
+ smat = [" appearance Appearance {\n",...
+ vrml_material(col, emit),"\n",...
" }\n"];
scol = "";
end
- s = sprintf(["Shape {\n",\
- smat,\
- " geometry PointSet {\n",\
- scol,\
+ s = sprintf(["Shape {\n",...
+ smat,...
+ " geometry PointSet {\n",...
+ scol,...
" coord DEF %s Coordinate {\n point [\n " ],name); # ]
@@ -131,25 +131,25 @@
s = "";
if prod (size (col)) == 3, col = col(:) * ones (1,P); end
for i = 1:P,
- s0 = sprintf([\
- "Transform {\n",\
- " translation %10.6g %10.6g %10.6g\n",\
- " children [\n",\ # ]
- " Billboard {\n",\
- " children [\n",\ # ]
- " Shape {\n",\
- " appearance Appearance {\n",\
- vrml_material(col(:,i), emit, tran),"\n",\
- " }\n",\
- " geometry Text {\n",\
- " string \"%s\"\n",\
- " fontStyle FontStyle { size 0.25 }\n",\
- " }\n",\
- " }\n",\
- " ]\n",\
- " }\n",\
- " ]\n",\
- "}\n"],\ # [
+ s0 = sprintf([...
+ "Transform {\n",...
+ " translation %10.6g %10.6g %10.6g\n",...
+ " children [\n",... # ]
+ " Billboard {\n",...
+ " children [\n",... # ]
+ " Shape {\n",...
+ " appearance Appearance {\n",...
+ vrml_material(col(:,i), emit, tran),"\n",...
+ " }\n",...
+ " geometry Text {\n",...
+ " string \"%s\"\n",...
+ " fontStyle FontStyle { size 0.25 }\n",...
+ " }\n",...
+ " }\n",...
+ " ]\n",...
+ " }\n",...
+ " ]\n",...
+ "}\n"],... # [
x(:,i),sprintf("%d",i-1));
## x(:,i),col,col,sprintf("%d",i-1));
## " emissiveColor %8.3f %8.3f %8.3f\n",\
@@ -196,18 +196,18 @@
# nodes individually
if ! all_same_col, colorstr = vrml_material (col(:,i), emit); end
- s0 = sprintf([\
- "Transform {\n",\
- " translation %10.6g %10.6g %10.6g\n",\
- " children [\n",\ # ]
- " Shape {\n",\
- " appearance Appearance {\n",\
- colorstr,"\n",\
- " }\n",\
- " geometry ",shapestr,"\n",\
- " }\n",\
- " ]\n",\
- "}\n"],\
+ s0 = sprintf([...
+ "Transform {\n",...
+ " translation %10.6g %10.6g %10.6g\n",...
+ " children [\n",... # ]
+ " Shape {\n",...
+ " appearance Appearance {\n",...
+ colorstr,"\n",...
+ " }\n",...
+ " geometry ",shapestr,"\n",...
+ " }\n",...
+ " ]\n",...
+ "}\n"],...
x(:,i));
## " emissiveColor %8.3f %8.3f %8.3f\n",\
## x(:,i),col,col,shape);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/vrml/inst/vrml_set_browser.m
new/vrml/inst/vrml_set_browser.m
--- old/vrml/inst/vrml_set_browser.m 1970-01-01 01:00:00.000000000 +0100
+++ new/vrml/inst/vrml_set_browser.m 2025-02-10 16:08:41.000000000 +0100
@@ -0,0 +1,70 @@
+## Copyright (C) 2012 Etienne Grossmann <[email protected]>
+##
+## This program is free software; you can redistribute it and/or modify it
under
+## the terms of the GNU General Public License as published by the Free
Software
+## Foundation; either version 3 of the License, or (at your option) any later
+## version.
+##
+## This program is distributed in the hope that it will be useful, but WITHOUT
+## ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
more
+## details.
+##
+## You should have received a copy of the GNU General Public License along with
+## this program; if not, see <http://www.gnu.org/licenses/>.
+##
+
+## full_path = vrml_set_browser (proposed_browser) - Set or find a vrml browser
+##
+## If argument proposed_browser is passed and non-empty, then
vmrl_set_browser()
+## tries to determine whether proposed_browser is a valid program. If it is,
+## then the global variable vrml_b_name is set to the full path, which is also
+## returned. Otherwise, an error occurs.
+##
+## If argument proposed_browser is empty or missing, then vrml_set_browser()
+## tries to determine whether either freewrl ( > 0.25) or whitedune (two vrml
+## browsers) are available. If one is found, then the global variable
+## vrml_b_name is set to the full path, which is also returned. Otherwise, an
+## error occurs.
+##
+## WARNING: vrml_set_browser has only been tested under Linux. Please report
+## successes / problems / patches on other systems.
+##
+## See also: vrml_browse(), FreeWRL homepage http://www.crc.ca/FreeWRL,
+## whitedune homepage http://vrml.cip.ica.uni-stuttgart.de/dune.
+##
+function full_path = vrml_set_browser (proposed_browser_name)
+
+global vrml_b_name = [];
+
+full_path = vrml_b_name;
+
+if nargin < 1 || isempty (proposed_browser_name)
+
+ browser_list = {"freewrl", "whitedune"};
+
+ for i = 1:numel(browser_list)
+
+ ## TODO: Test this under windows
+ [status, full_path] = system (sprintf ("which %s", browser_list{i}));
+ if status != 1
+ if full_path(length(full_path)) == "\n",
+ full_path = full_path(1:end-1);
+ end
+ vrml_b_name = full_path;
+ return;
+ endif
+ endfor
+
+ error ("No VRML browser available");
+endif
+
+## TODO: Test this under windows
+[status, full_path] = system (sprintf ("which %s", proposed_browser_name));
+if status == 1
+ error (sprintf ("VRML browser `%s' is not available",
proposed_browser_name));
+endif
+if full_path(length(full_path)) == "\n",
+ full_path = full_path(1:end-1);
+end
+vrml_b_name = full_path;
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/vrml/inst/vrml_surf.m new/vrml/inst/vrml_surf.m
--- old/vrml/inst/vrml_surf.m 2012-06-12 03:46:12.000000000 +0200
+++ new/vrml/inst/vrml_surf.m 2025-02-10 16:08:41.000000000 +0100
@@ -118,7 +118,7 @@
op1 = " tran col creaseAngle emit colorPerVertex checker DEFcoord DEFcol
zcol bwid tex ";
op0 = " smooth zgray zrb steps bars " ;
- default = tars (tran, col, creaseAngle, emit, colorPerVertex, steps, bars, \
+ default = tars (tran, col, creaseAngle, emit, colorPerVertex, steps, bars,
...
bwid, DEFcoord, DEFcol, zcol, smooth, checker, zgray, zrb,
tex);
s = read_options (varargin,"op0",op0,"op1",op1,"default",default);
@@ -374,7 +374,7 @@
ii = find (ci >= columns (zcol));
if ! isempty (ii), ci(ii) = columns (zcol) - 1; cw(ii) = 1; end
col = zeros (3,R*C);
- col(:,keepip) = \
+ col(:,keepip) = ...
zcol(:,ci) .* ([1;1;1]*(1-cw)) + zcol(:,ci+1) .* ([1;1;1]*cw);
end # EOF zgray zrb and zcol options
@@ -419,8 +419,8 @@
col = reshape (col,3, (R-1)*(C-1));
col = [col, col];
else
- printf(["vrml_surf : ",\
- " colorPerVertex==0, (R-1)*(C-1)==%i, but col has size [%i,%i]\n"],\
+ printf(["vrml_surf : ",...
+ " colorPerVertex==0, (R-1)*(C-1)==%i, but col has size
[%i,%i]\n"],...
R*C,size (col));
end
@@ -441,9 +441,9 @@
keept = all (reshape(keepp(trgs),3,2*(R-1)*(C-1)));
else
tmp = reshape (keepp,R,C);
- keept = \
- all (reshape (tmp(trgs(1:2,:)),2,2*(R-1)*(C-1))) & \
- [(tmp(1:R-1,2:C) | tmp(2:R,2:C))(:)', \
+ keept = ...
+ all (reshape (tmp(trgs(1:2,:)),2,2*(R-1)*(C-1))) & ...
+ [(tmp(1:R-1,2:C) | tmp(2:R,2:C))(:)', ...
(tmp(1:R-1,1:C-1) | tmp(2:R,1:C-1))(:)'] ;
end
@@ -473,10 +473,10 @@
end
## printf ("Calling vrml_faces\n");
if !tex
- s = vrml_faces (pts, trgs, "col", col,\
- "colorPerVertex",colorPerVertex,\
- "creaseAngle", creaseAngle,\
- "tran", tran, "emit", emit,\
+ s = vrml_faces (pts, trgs, "col", col,...
+ "colorPerVertex",colorPerVertex,...
+ "creaseAngle", creaseAngle,...
+ "tran", tran, "emit", emit,...
"DEFcoord",DEFcoord,"DEFcol",DEFcol);
else
texXY = texXY(:,keepip);
@@ -488,8 +488,8 @@
# texXY(:,trgs(:))
# R, C
# keyboard
- s = vrml_faces (pts, trgs,\
- "tran", tran, "tex", tex, "tcoord", texXY,\
+ s = vrml_faces (pts, trgs,...
+ "tran", tran, "tex", tex, "tcoord", texXY,...
"DEFcoord",DEFcoord,"DEFcol",DEFcol);
end
## printf ("Done\n");
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/vrml/inst/vrml_text.m new/vrml/inst/vrml_text.m
--- old/vrml/inst/vrml_text.m 2012-04-16 11:01:20.000000000 +0200
+++ new/vrml/inst/vrml_text.m 2025-02-10 16:08:41.000000000 +0100
@@ -52,31 +52,31 @@
style= s.style;
verbose= s.verbose;
end
-s = sprintf (["Shape {\n",\
- " appearance Appearance {\n",\
- " material Material {\n",\
- " diffuseColor %8.3f %8.3f %8.3f\n",\
- " emissiveColor %8.3f %8.3f %8.3f\n",\
- " }\n",\
- " }\n",\
- " geometry Text {\n",\
- " string \"%s\"\n"\
- " fontStyle FontStyle {\n",\
- " family \"%s\"\n",\
- " justify \"%s\"\n",\
- " style \"%s\"\n",\
- " size %-8.3f\n",\
- " }\n",\
- " }\n",\
- "}\n",\
- ],\
- col,\
- col,\
- t,\
- family,\
- justify,\
- style,\
- size\
+s = sprintf (["Shape {\n",...
+ " appearance Appearance {\n",...
+ " material Material {\n",...
+ " diffuseColor %8.3f %8.3f %8.3f\n",...
+ " emissiveColor %8.3f %8.3f %8.3f\n",...
+ " }\n",...
+ " }\n",...
+ " geometry Text {\n",...
+ " string \"%s\"\n"...
+ " fontStyle FontStyle {\n",...
+ " family \"%s\"\n",...
+ " justify \"%s\"\n",...
+ " style \"%s\"\n",...
+ " size %-8.3f\n",...
+ " }\n",...
+ " }\n",...
+ "}\n",...
+ ],...
+ col,...
+ col,...
+ t,...
+ family,...
+ justify,...
+ style,...
+ size...
);
endfunction
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/vrml/inst/vrml_transfo.m new/vrml/inst/vrml_transfo.m
--- old/vrml/inst/vrml_transfo.m 2012-04-16 11:01:20.000000000 +0200
+++ new/vrml/inst/vrml_transfo.m 2025-02-10 16:08:41.000000000 +0100
@@ -75,8 +75,8 @@
error ("vrml_transfo : rotation should have size 3x3, 3 or 4\n");
end
if verbose,
- printf (["vrml_transfo : %8.3f %8.3f %8.3f %8.3f\n",\
- " %8.3f %8.3f %8.3f\n"],\
+ printf (["vrml_transfo : %8.3f %8.3f %8.3f %8.3f\n",...
+ " %8.3f %8.3f %8.3f\n"],...
axis,ang,t);
printf ("length of string is %i\n",prod(size(s)));
end
@@ -103,11 +103,11 @@
end
if !isempty (DEF), sd = ["DEF ",DEF," "]; end
-v = sprintf([sd,"Transform {\n",sr,st,ss,\
- " children [\n%s\n",\
- " ]\n",\
- "}\n",\
- ],\
+v = sprintf([sd,"Transform {\n",sr,st,ss,...
+ " children [\n%s\n",...
+ " ]\n",...
+ "}\n",...
+ ],...
s) ;
## keyboard