Diff of the two buildlogs:
--
--- b1/build.log 2024-08-01 11:44:46.712053072 +0000
+++ b2/build.log 2024-08-01 11:49:02.549191280 +0000
@@ -1,6 +1,6 @@
I: pbuilder: network access will be disabled during build
-I: Current time: Wed Sep 3 06:05:05 -12 2025
-I: pbuilder-time-stamp: 1756922705
+I: Current time: Fri Aug 2 01:44:49 +14 2024
+I: pbuilder-time-stamp: 1722512689
I: Building the build Environment
I: extracting base tarball [/var/cache/pbuilder/bullseye-reproducible-base.tgz]
I: copying local configuration
@@ -17,8 +17,8 @@
I: copying [./octave-geometry_4.0.0-2.debian.tar.xz]
I: Extracting source
gpgv: unknown type of key resource 'trustedkeys.kbx'
-gpgv: keyblock resource '/tmp/dpkg-verify-sig.7jsaRyTd/trustedkeys.kbx': General error
-gpgv: Signature made Tue Jul 28 02:41:14 2020 -12
+gpgv: keyblock resource '/tmp/dpkg-verify-sig.TSFkp_w1/trustedkeys.kbx': General error
+gpgv: Signature made Wed Jul 29 04:41:14 2020 +14
gpgv: using RSA key 3F464391498FE874BDB5D98F2124AA1983785C90
gpgv: Can't check signature: No public key
dpkg-source: warning: failed to verify signature on ./octave-geometry_4.0.0-2.dsc
@@ -29,135 +29,166 @@
dpkg-source: info: applying skip-unit-tests-svg.patch
I: Not using root during the build.
I: Installing the build-deps
-I: user script /srv/workspace/pbuilder/3843132/tmp/hooks/D02_print_environment starting
+I: user script /srv/workspace/pbuilder/3404847/tmp/hooks/D01_modify_environment starting
+debug: Running on ionos1-amd64.
+I: Changing host+domainname to test build reproducibility
+I: Adding a custom variable just for the fun of it...
+I: Changing /bin/sh to bash
+'/bin/sh' -> '/bin/bash'
+lrwxrwxrwx 1 root root 9 Aug 2 01:45 /bin/sh -> /bin/bash
+I: Setting pbuilder2's login shell to /bin/bash
+I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other
+I: user script /srv/workspace/pbuilder/3404847/tmp/hooks/D01_modify_environment finished
+I: user script /srv/workspace/pbuilder/3404847/tmp/hooks/D02_print_environment starting
I: set
- BUILDDIR='/build/reproducible-path'
- BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other'
- BUILDUSERNAME='pbuilder1'
- BUILD_ARCH='amd64'
- DEBIAN_FRONTEND='noninteractive'
- DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all,-fixfilepath parallel=42 '
- DISTRIBUTION='bullseye'
- HOME='/root'
- HOST_ARCH='amd64'
+ BASH=/bin/sh
+ BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:hostcomplete:interactive_comments:progcomp:promptvars:sourcepath
+ BASH_ALIASES=()
+ BASH_ARGC=()
+ BASH_ARGV=()
+ BASH_CMDS=()
+ BASH_LINENO=([0]="12" [1]="0")
+ BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment")
+ BASH_VERSINFO=([0]="5" [1]="1" [2]="4" [3]="1" [4]="release" [5]="x86_64-pc-linux-gnu")
+ BASH_VERSION='5.1.4(1)-release'
+ BUILDDIR=/build/reproducible-path
+ BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other'
+ BUILDUSERNAME=pbuilder2
+ BUILD_ARCH=amd64
+ DEBIAN_FRONTEND=noninteractive
+ DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all,-fixfilepath parallel=20 '
+ DIRSTACK=()
+ DISTRIBUTION=bullseye
+ EUID=0
+ FUNCNAME=([0]="Echo" [1]="main")
+ GROUPS=()
+ HOME=/root
+ HOSTNAME=i-capture-the-hostname
+ HOSTTYPE=x86_64
+ HOST_ARCH=amd64
IFS='
'
- INVOCATION_ID='0dfdfe6bbac148e19904d43c78e1deba'
- LANG='C'
- LANGUAGE='en_US:en'
- LC_ALL='C'
- MAIL='/var/mail/root'
- OPTIND='1'
- PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games'
- PBCURRENTCOMMANDLINEOPERATION='build'
- PBUILDER_OPERATION='build'
- PBUILDER_PKGDATADIR='/usr/share/pbuilder'
- PBUILDER_PKGLIBDIR='/usr/lib/pbuilder'
- PBUILDER_SYSCONFDIR='/etc'
- PPID='3843132'
- PS1='# '
- PS2='> '
+ INVOCATION_ID=848f9032551e41bf93fded569a091561
+ LANG=C
+ LANGUAGE=et_EE:et
+ LC_ALL=C
+ MACHTYPE=x86_64-pc-linux-gnu
+ MAIL=/var/mail/root
+ OPTERR=1
+ OPTIND=1
+ OSTYPE=linux-gnu
+ PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path
+ PBCURRENTCOMMANDLINEOPERATION=build
+ PBUILDER_OPERATION=build
+ PBUILDER_PKGDATADIR=/usr/share/pbuilder
+ PBUILDER_PKGLIBDIR=/usr/lib/pbuilder
+ PBUILDER_SYSCONFDIR=/etc
+ PIPESTATUS=([0]="0")
+ POSIXLY_CORRECT=y
+ PPID=3404847
PS4='+ '
- PWD='/'
- SHELL='/bin/bash'
- SHLVL='2'
- SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.8jwlNosk/pbuilderrc_bT0m --distribution bullseye --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/bullseye-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.8jwlNosk/b1 --logfile b1/build.log octave-geometry_4.0.0-2.dsc'
- SUDO_GID='111'
- SUDO_UID='106'
- SUDO_USER='jenkins'
- TERM='unknown'
- TZ='/usr/share/zoneinfo/Etc/GMT+12'
- USER='root'
- _='/usr/bin/systemd-run'
- http_proxy='http://213.165.73.152:3128'
+ PWD=/
+ SHELL=/bin/bash
+ SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix
+ SHLVL=3
+ SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.8jwlNosk/pbuilderrc_aGIM --distribution bullseye --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/bullseye-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.8jwlNosk/b2 --logfile b2/build.log octave-geometry_4.0.0-2.dsc'
+ SUDO_GID=110
+ SUDO_UID=105
+ SUDO_USER=jenkins
+ TERM=unknown
+ TZ=/usr/share/zoneinfo/Etc/GMT-14
+ UID=0
+ USER=root
+ _='I: set'
+ http_proxy=http://46.16.76.132:3128
I: uname -a
- Linux ionos15-amd64 6.9.7+bpo-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.9.7-1~bpo12+1 (2024-07-03) x86_64 GNU/Linux
+ Linux i-capture-the-hostname 6.1.0-23-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.99-1 (2024-07-15) x86_64 GNU/Linux
I: ls -l /bin
total 5476
- -rwxr-xr-x 1 root root 1234376 Mar 27 2022 bash
- -rwxr-xr-x 3 root root 38984 Jul 20 2020 bunzip2
- -rwxr-xr-x 3 root root 38984 Jul 20 2020 bzcat
- lrwxrwxrwx 1 root root 6 Jul 20 2020 bzcmp -> bzdiff
- -rwxr-xr-x 1 root root 2225 Jul 20 2020 bzdiff
- lrwxrwxrwx 1 root root 6 Jul 20 2020 bzegrep -> bzgrep
- -rwxr-xr-x 1 root root 4877 Sep 4 2019 bzexe
- lrwxrwxrwx 1 root root 6 Jul 20 2020 bzfgrep -> bzgrep
- -rwxr-xr-x 1 root root 3775 Jul 20 2020 bzgrep
- -rwxr-xr-x 3 root root 38984 Jul 20 2020 bzip2
- -rwxr-xr-x 1 root root 18424 Jul 20 2020 bzip2recover
- lrwxrwxrwx 1 root root 6 Jul 20 2020 bzless -> bzmore
- -rwxr-xr-x 1 root root 1297 Jul 20 2020 bzmore
- -rwxr-xr-x 1 root root 43936 Sep 23 2020 cat
- -rwxr-xr-x 1 root root 72672 Sep 23 2020 chgrp
- -rwxr-xr-x 1 root root 64448 Sep 23 2020 chmod
- -rwxr-xr-x 1 root root 72672 Sep 23 2020 chown
- -rwxr-xr-x 1 root root 151168 Sep 23 2020 cp
- -rwxr-xr-x 1 root root 125560 Dec 10 2020 dash
- -rwxr-xr-x 1 root root 113664 Sep 23 2020 date
- -rwxr-xr-x 1 root root 80968 Sep 23 2020 dd
- -rwxr-xr-x 1 root root 93936 Sep 23 2020 df
- -rwxr-xr-x 1 root root 147176 Sep 23 2020 dir
- -rwxr-xr-x 1 root root 84440 Mar 27 2024 dmesg
- lrwxrwxrwx 1 root root 8 Nov 6 2019 dnsdomainname -> hostname
- lrwxrwxrwx 1 root root 8 Nov 6 2019 domainname -> hostname
- -rwxr-xr-x 1 root root 39712 Sep 23 2020 echo
- -rwxr-xr-x 1 root root 28 Jan 24 2023 egrep
- -rwxr-xr-x 1 root root 39680 Sep 23 2020 false
- -rwxr-xr-x 1 root root 28 Jan 24 2023 fgrep
- -rwxr-xr-x 1 root root 69032 Mar 27 2024 findmnt
- -rwsr-xr-x 1 root root 34896 Feb 26 2021 fusermount
- -rwxr-xr-x 1 root root 203072 Jan 24 2023 grep
- -rwxr-xr-x 2 root root 2346 Apr 9 2022 gunzip
- -rwxr-xr-x 1 root root 6447 Apr 9 2022 gzexe
- -rwxr-xr-x 1 root root 98048 Apr 9 2022 gzip
- -rwxr-xr-x 1 root root 22600 Nov 6 2019 hostname
- -rwxr-xr-x 1 root root 72840 Sep 23 2020 ln
- -rwxr-xr-x 1 root root 56952 Feb 7 2020 login
- -rwxr-xr-x 1 root root 147176 Sep 23 2020 ls
- -rwxr-xr-x 1 root root 149736 Mar 27 2024 lsblk
- -rwxr-xr-x 1 root root 85184 Sep 23 2020 mkdir
- -rwxr-xr-x 1 root root 76896 Sep 23 2020 mknod
- -rwxr-xr-x 1 root root 48064 Sep 23 2020 mktemp
- -rwxr-xr-x 1 root root 59632 Mar 27 2024 more
- -rwsr-xr-x 1 root root 55528 Mar 27 2024 mount
- -rwxr-xr-x 1 root root 18664 Mar 27 2024 mountpoint
- -rwxr-xr-x 1 root root 147080 Sep 23 2020 mv
- lrwxrwxrwx 1 root root 8 Nov 6 2019 nisdomainname -> hostname
- lrwxrwxrwx 1 root root 14 Dec 16 2021 pidof -> /sbin/killall5
- -rwxr-xr-x 1 root root 43872 Sep 23 2020 pwd
- lrwxrwxrwx 1 root root 4 Mar 27 2022 rbash -> bash
- -rwxr-xr-x 1 root root 52032 Sep 23 2020 readlink
- -rwxr-xr-x 1 root root 72704 Sep 23 2020 rm
- -rwxr-xr-x 1 root root 52032 Sep 23 2020 rmdir
- -rwxr-xr-x 1 root root 27472 Sep 27 2020 run-parts
- -rwxr-xr-x 1 root root 122224 Dec 22 2018 sed
- lrwxrwxrwx 1 root root 4 Aug 9 03:46 sh -> dash
- -rwxr-xr-x 1 root root 43808 Sep 23 2020 sleep
- -rwxr-xr-x 1 root root 84928 Sep 23 2020 stty
- -rwsr-xr-x 1 root root 71912 Mar 27 2024 su
- -rwxr-xr-x 1 root root 39744 Sep 23 2020 sync
- -rwxr-xr-x 1 root root 531928 Jan 19 2024 tar
- -rwxr-xr-x 1 root root 14456 Sep 27 2020 tempfile
- -rwxr-xr-x 1 root root 101408 Sep 23 2020 touch
- -rwxr-xr-x 1 root root 39680 Sep 23 2020 true
- -rwxr-xr-x 1 root root 14328 Feb 26 2021 ulockmgr_server
- -rwsr-xr-x 1 root root 35040 Mar 27 2024 umount
- -rwxr-xr-x 1 root root 39744 Sep 23 2020 uname
- -rwxr-xr-x 2 root root 2346 Apr 9 2022 uncompress
- -rwxr-xr-x 1 root root 147176 Sep 23 2020 vdir
- -rwxr-xr-x 1 root root 63744 Mar 27 2024 wdctl
- lrwxrwxrwx 1 root root 8 Nov 6 2019 ypdomainname -> hostname
- -rwxr-xr-x 1 root root 1984 Apr 9 2022 zcat
- -rwxr-xr-x 1 root root 1678 Apr 9 2022 zcmp
- -rwxr-xr-x 1 root root 5898 Apr 9 2022 zdiff
- -rwxr-xr-x 1 root root 29 Apr 9 2022 zegrep
- -rwxr-xr-x 1 root root 29 Apr 9 2022 zfgrep
- -rwxr-xr-x 1 root root 2081 Apr 9 2022 zforce
- -rwxr-xr-x 1 root root 8049 Apr 9 2022 zgrep
- -rwxr-xr-x 1 root root 2206 Apr 9 2022 zless
- -rwxr-xr-x 1 root root 1842 Apr 9 2022 zmore
- -rwxr-xr-x 1 root root 4577 Apr 9 2022 znew
-I: user script /srv/workspace/pbuilder/3843132/tmp/hooks/D02_print_environment finished
+ -rwxr-xr-x 1 root root 1234376 Mar 28 2022 bash
+ -rwxr-xr-x 3 root root 38984 Jul 21 2020 bunzip2
+ -rwxr-xr-x 3 root root 38984 Jul 21 2020 bzcat
+ lrwxrwxrwx 1 root root 6 Jul 21 2020 bzcmp -> bzdiff
+ -rwxr-xr-x 1 root root 2225 Jul 21 2020 bzdiff
+ lrwxrwxrwx 1 root root 6 Jul 21 2020 bzegrep -> bzgrep
+ -rwxr-xr-x 1 root root 4877 Sep 5 2019 bzexe
+ lrwxrwxrwx 1 root root 6 Jul 21 2020 bzfgrep -> bzgrep
+ -rwxr-xr-x 1 root root 3775 Jul 21 2020 bzgrep
+ -rwxr-xr-x 3 root root 38984 Jul 21 2020 bzip2
+ -rwxr-xr-x 1 root root 18424 Jul 21 2020 bzip2recover
+ lrwxrwxrwx 1 root root 6 Jul 21 2020 bzless -> bzmore
+ -rwxr-xr-x 1 root root 1297 Jul 21 2020 bzmore
+ -rwxr-xr-x 1 root root 43936 Sep 24 2020 cat
+ -rwxr-xr-x 1 root root 72672 Sep 24 2020 chgrp
+ -rwxr-xr-x 1 root root 64448 Sep 24 2020 chmod
+ -rwxr-xr-x 1 root root 72672 Sep 24 2020 chown
+ -rwxr-xr-x 1 root root 151168 Sep 24 2020 cp
+ -rwxr-xr-x 1 root root 125560 Dec 11 2020 dash
+ -rwxr-xr-x 1 root root 113664 Sep 24 2020 date
+ -rwxr-xr-x 1 root root 80968 Sep 24 2020 dd
+ -rwxr-xr-x 1 root root 93936 Sep 24 2020 df
+ -rwxr-xr-x 1 root root 147176 Sep 24 2020 dir
+ -rwxr-xr-x 1 root root 84440 Mar 29 00:09 dmesg
+ lrwxrwxrwx 1 root root 8 Nov 8 2019 dnsdomainname -> hostname
+ lrwxrwxrwx 1 root root 8 Nov 8 2019 domainname -> hostname
+ -rwxr-xr-x 1 root root 39712 Sep 24 2020 echo
+ -rwxr-xr-x 1 root root 28 Jan 25 2023 egrep
+ -rwxr-xr-x 1 root root 39680 Sep 24 2020 false
+ -rwxr-xr-x 1 root root 28 Jan 25 2023 fgrep
+ -rwxr-xr-x 1 root root 69032 Mar 29 00:09 findmnt
+ -rwsr-xr-x 1 root root 34896 Feb 27 2021 fusermount
+ -rwxr-xr-x 1 root root 203072 Jan 25 2023 grep
+ -rwxr-xr-x 2 root root 2346 Apr 10 2022 gunzip
+ -rwxr-xr-x 1 root root 6447 Apr 10 2022 gzexe
+ -rwxr-xr-x 1 root root 98048 Apr 10 2022 gzip
+ -rwxr-xr-x 1 root root 22600 Nov 8 2019 hostname
+ -rwxr-xr-x 1 root root 72840 Sep 24 2020 ln
+ -rwxr-xr-x 1 root root 56952 Feb 8 2020 login
+ -rwxr-xr-x 1 root root 147176 Sep 24 2020 ls
+ -rwxr-xr-x 1 root root 149736 Mar 29 00:09 lsblk
+ -rwxr-xr-x 1 root root 85184 Sep 24 2020 mkdir
+ -rwxr-xr-x 1 root root 76896 Sep 24 2020 mknod
+ -rwxr-xr-x 1 root root 48064 Sep 24 2020 mktemp
+ -rwxr-xr-x 1 root root 59632 Mar 29 00:09 more
+ -rwsr-xr-x 1 root root 55528 Mar 29 00:09 mount
+ -rwxr-xr-x 1 root root 18664 Mar 29 00:09 mountpoint
+ -rwxr-xr-x 1 root root 147080 Sep 24 2020 mv
+ lrwxrwxrwx 1 root root 8 Nov 8 2019 nisdomainname -> hostname
+ lrwxrwxrwx 1 root root 14 Dec 17 2021 pidof -> /sbin/killall5
+ -rwxr-xr-x 1 root root 43872 Sep 24 2020 pwd
+ lrwxrwxrwx 1 root root 4 Mar 28 2022 rbash -> bash
+ -rwxr-xr-x 1 root root 52032 Sep 24 2020 readlink
+ -rwxr-xr-x 1 root root 72704 Sep 24 2020 rm
+ -rwxr-xr-x 1 root root 52032 Sep 24 2020 rmdir
+ -rwxr-xr-x 1 root root 27472 Sep 28 2020 run-parts
+ -rwxr-xr-x 1 root root 122224 Dec 23 2018 sed
+ lrwxrwxrwx 1 root root 9 Aug 2 01:45 sh -> /bin/bash
+ -rwxr-xr-x 1 root root 43808 Sep 24 2020 sleep
+ -rwxr-xr-x 1 root root 84928 Sep 24 2020 stty
+ -rwsr-xr-x 1 root root 71912 Mar 29 00:09 su
+ -rwxr-xr-x 1 root root 39744 Sep 24 2020 sync
+ -rwxr-xr-x 1 root root 531928 Jan 20 2024 tar
+ -rwxr-xr-x 1 root root 14456 Sep 28 2020 tempfile
+ -rwxr-xr-x 1 root root 101408 Sep 24 2020 touch
+ -rwxr-xr-x 1 root root 39680 Sep 24 2020 true
+ -rwxr-xr-x 1 root root 14328 Feb 27 2021 ulockmgr_server
+ -rwsr-xr-x 1 root root 35040 Mar 29 00:09 umount
+ -rwxr-xr-x 1 root root 39744 Sep 24 2020 uname
+ -rwxr-xr-x 2 root root 2346 Apr 10 2022 uncompress
+ -rwxr-xr-x 1 root root 147176 Sep 24 2020 vdir
+ -rwxr-xr-x 1 root root 63744 Mar 29 00:09 wdctl
+ lrwxrwxrwx 1 root root 8 Nov 8 2019 ypdomainname -> hostname
+ -rwxr-xr-x 1 root root 1984 Apr 10 2022 zcat
+ -rwxr-xr-x 1 root root 1678 Apr 10 2022 zcmp
+ -rwxr-xr-x 1 root root 5898 Apr 10 2022 zdiff
+ -rwxr-xr-x 1 root root 29 Apr 10 2022 zegrep
+ -rwxr-xr-x 1 root root 29 Apr 10 2022 zfgrep
+ -rwxr-xr-x 1 root root 2081 Apr 10 2022 zforce
+ -rwxr-xr-x 1 root root 8049 Apr 10 2022 zgrep
+ -rwxr-xr-x 1 root root 2206 Apr 10 2022 zless
+ -rwxr-xr-x 1 root root 1842 Apr 10 2022 zmore
+ -rwxr-xr-x 1 root root 4577 Apr 10 2022 znew
+I: user script /srv/workspace/pbuilder/3404847/tmp/hooks/D02_print_environment finished
-> Attempting to satisfy build-dependencies
-> Creating pbuilder-satisfydepends-dummy package
Package: pbuilder-satisfydepends-dummy
@@ -658,7 +689,7 @@
Get: 455 http://deb.debian.org/debian bullseye/main amd64 libxslt1.1 amd64 1.1.34-4+deb11u1 [240 kB]
Get: 456 http://deb.debian.org/debian bullseye/main amd64 octave-matgeom all 1.2.2-3 [308 kB]
Get: 457 http://deb.debian.org/debian bullseye/main amd64 python3-lxml amd64 4.6.3+dfsg-0.1+deb11u1 [1093 kB]
-Fetched 161 MB in 7s (23.2 MB/s)
+Fetched 161 MB in 4s (40.3 MB/s)
debconf: delaying package configuration, since apt-utils is not installed
Selecting previously unselected package bsdextrautils.
(Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 19711 files and directories currently installed.)
@@ -2535,7 +2566,11 @@
Building tag database...
-> Finished parsing the build-deps
I: Building the package
-I: Running cd /build/reproducible-path/octave-geometry-4.0.0/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S > ../octave-geometry_4.0.0-2_source.changes
+I: user script /srv/workspace/pbuilder/3404847/tmp/hooks/A99_set_merged_usr starting
+Not re-configuring usrmerge for bullseye
+I: user script /srv/workspace/pbuilder/3404847/tmp/hooks/A99_set_merged_usr finished
+hostname: Name or service not known
+I: Running cd /build/reproducible-path/octave-geometry-4.0.0/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S > ../octave-geometry_4.0.0-2_source.changes
dpkg-buildpackage: info: source package octave-geometry
dpkg-buildpackage: info: source version 4.0.0-2
dpkg-buildpackage: info: source distribution unstable
@@ -2577,7 +2612,7 @@
/usr/bin/mkoctfile --verbose -c martinez.cpp -o martinez.o
/usr/bin/mkoctfile --verbose -c polygon.cpp -o polygon.o
/usr/bin/mkoctfile --verbose -c utilities.cpp -o utilities.o
-g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-6.2.0/octave/.. -I/usr/include/octave-6.2.0/octave -pthread -fopenmp -g -O2 -fdebug-prefix-map=/build/reproducible-path/octave-geometry-4.0.0=. -fstack-protector-strong -Wformat -Werror=format-security -g -Wall -I. -DMEX_DEBUG clipper.cpp -o /tmp/oct-MHLsdT.o
+g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-6.2.0/octave/.. -I/usr/include/octave-6.2.0/octave -pthread -fopenmp -g -O2 -fdebug-prefix-map=/build/reproducible-path/octave-geometry-4.0.0=. -fstack-protector-strong -Wformat -Werror=format-security -g -Wall -I. -DMEX_DEBUG clipper.cpp -o /tmp/oct-P2Ycn0.o
g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-6.2.0/octave/.. -I/usr/include/octave-6.2.0/octave -pthread -fopenmp -g -O2 -fdebug-prefix-map=/build/reproducible-path/octave-geometry-4.0.0=. -fstack-protector-strong -Wformat -Werror=format-security connector.cpp -o connector.o
g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-6.2.0/octave/.. -I/usr/include/octave-6.2.0/octave -pthread -fopenmp -g -O2 -fdebug-prefix-map=/build/reproducible-path/octave-geometry-4.0.0=. -fstack-protector-strong -Wformat -Werror=format-security martinez.cpp -o martinez.o
g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-6.2.0/octave/.. -I/usr/include/octave-6.2.0/octave -pthread -fopenmp -g -O2 -fdebug-prefix-map=/build/reproducible-path/octave-geometry-4.0.0=. -fstack-protector-strong -Wformat -Werror=format-security polygon.cpp -o polygon.o
@@ -2590,10 +2625,10 @@
95 | struct TEdge {
| ^~~~~
/usr/bin/mkoctfile --verbose connector.o martinez.o polygon.o utilities.o polybool_mrf.cc -o polybool_mrf.oct
-g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-6.2.0/octave/.. -I/usr/include/octave-6.2.0/octave -pthread -fopenmp -g -O2 -fdebug-prefix-map=/build/reproducible-path/octave-geometry-4.0.0=. -fstack-protector-strong -Wformat -Werror=format-security polybool_mrf.cc -o /tmp/oct-4carAW.o
-g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-6.2.0/octave/.. -I/usr/include/octave-6.2.0/octave -pthread -fopenmp -g -O2 -fdebug-prefix-map=/build/reproducible-path/octave-geometry-4.0.0=. -fstack-protector-strong -Wformat -Werror=format-security -g -Wall -I. -DMEX_DEBUG mexclipper.cpp -o /tmp/oct-jYsJzU.o
-g++ -I/usr/include/octave-6.2.0/octave/.. -I/usr/include/octave-6.2.0/octave -pthread -fopenmp -g -O2 -fdebug-prefix-map=/build/reproducible-path/octave-geometry-4.0.0=. -fstack-protector-strong -Wformat -Werror=format-security -g -Wall -o clipper.mex /tmp/oct-MHLsdT.o /tmp/oct-jYsJzU.o -shared -Wl,-Bsymbolic -Wl,-z,relro -L/usr/lib/x86_64-linux-gnu -Wl,-z,relro
-g++ -I/usr/include/octave-6.2.0/octave/.. -I/usr/include/octave-6.2.0/octave -pthread -fopenmp -g -O2 -fdebug-prefix-map=/build/reproducible-path/octave-geometry-4.0.0=. -fstack-protector-strong -Wformat -Werror=format-security -o polybool_mrf.oct connector.o martinez.o polygon.o utilities.o /tmp/oct-4carAW.o -shared -Wl,-Bsymbolic -Wl,-z,relro -L/usr/lib/x86_64-linux-gnu -Wl,-z,relro
+g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-6.2.0/octave/.. -I/usr/include/octave-6.2.0/octave -pthread -fopenmp -g -O2 -fdebug-prefix-map=/build/reproducible-path/octave-geometry-4.0.0=. -fstack-protector-strong -Wformat -Werror=format-security polybool_mrf.cc -o /tmp/oct-pakpTo.o
+g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-6.2.0/octave/.. -I/usr/include/octave-6.2.0/octave -pthread -fopenmp -g -O2 -fdebug-prefix-map=/build/reproducible-path/octave-geometry-4.0.0=. -fstack-protector-strong -Wformat -Werror=format-security -g -Wall -I. -DMEX_DEBUG mexclipper.cpp -o /tmp/oct-C3njAX.o
+g++ -I/usr/include/octave-6.2.0/octave/.. -I/usr/include/octave-6.2.0/octave -pthread -fopenmp -g -O2 -fdebug-prefix-map=/build/reproducible-path/octave-geometry-4.0.0=. -fstack-protector-strong -Wformat -Werror=format-security -g -Wall -o clipper.mex /tmp/oct-P2Ycn0.o /tmp/oct-C3njAX.o -shared -Wl,-Bsymbolic -Wl,-z,relro -L/usr/lib/x86_64-linux-gnu -Wl,-z,relro
+g++ -I/usr/include/octave-6.2.0/octave/.. -I/usr/include/octave-6.2.0/octave -pthread -fopenmp -g -O2 -fdebug-prefix-map=/build/reproducible-path/octave-geometry-4.0.0=. -fstack-protector-strong -Wformat -Werror=format-security -o polybool_mrf.oct connector.o martinez.o polygon.o utilities.o /tmp/oct-pakpTo.o -shared -Wl,-Bsymbolic -Wl,-z,relro -L/usr/lib/x86_64-linux-gnu -Wl,-z,relro
make[1]: Leaving directory '/build/reproducible-path/octave-geometry-4.0.0/src'
copyfile /build/reproducible-path/octave-geometry-4.0.0/./src/polybool_mrf.oct /build/reproducible-path/octave-geometry-4.0.0/./src/clipper.mex /build/reproducible-path/octave-geometry-4.0.0/./inst/x86_64-pc-linux-gnu-api-v55
For information about changes from previous versions of the geometry package, run 'news geometry'.
@@ -2605,7 +2640,7 @@
load_packages_and_dependencies at line 56 column 5
load_packages at line 53 column 3
pkg at line 588 column 7
- /tmp/tmp.aLslvUZiDu at line 9 column 9
+ /tmp/tmp.QuH8k9S3vU at line 9 column 9
warning: Permanently renaming verLessThan.m since it is already present
warning: called from
@@ -2614,43 +2649,79 @@
load_packages_and_dependencies at line 56 column 5
load_packages at line 53 column 3
pkg at line 588 column 7
- /tmp/tmp.aLslvUZiDu at line 9 column 9
+ /tmp/tmp.QuH8k9S3vU at line 9 column 9
-[inst/plotShape.m]
->>>>> /build/reproducible-path/octave-geometry-4.0.0/inst/plotShape.m
+[inst/polysplit.m]
+>>>>> /build/reproducible-path/octave-geometry-4.0.0/inst/polysplit.m
+***** test
+ x=[1 ;2 ;NaN ;3 ;4]; y=[4 ;3 ;NaN ;2 ;1];
+ [cellx,celly]=polysplit(x,y);
+ assert (cellx, {[1; 2];[3; 4]});
+ assert (celly, {[4; 3];[2; 1]});
+***** test
+ x=[1 2 NaN 3 4]; y=[4 3 NaN 2 1];
+ [cellx,celly]=polysplit(x,y);
+ assert (cellx, {[1 2];[3 4]});
+ assert (celly, {[4 3];[2 1]});
+***** test
+ x=[0 ;2 ;2 ;0 ;0 ;NaN ;NaN]; y=[0 ;0 ;3 ;3 ;0 ;NaN ;NaN];
+ [cellx,celly]=polysplit(x,y);
+ assert (cellx, {[0 ;2 ;2 ;0 ;0]});
+ assert (celly, {[0 ;0 ;3 ;3 ;0]});
+3 tests, 3 passed, 0 known failure, 0 skipped
+[inst/polyjoin.m]
+>>>>> /build/reproducible-path/octave-geometry-4.0.0/inst/polyjoin.m
***** demo
- # Taylor series of cos(pi*x),sin(pi*x)
- n = 5; N = 0:5;
- s{1}(1,2:2:2*n+2) = fliplr ( (-1).^N .* (pi).^(2*N) ./ factorial (2*N));
- s{1}(2,1:2:2*n+1) = fliplr ( (-1).^N .* (pi).^(2*N+1) ./ factorial (2*N+1));
-
- h(1) = plotShape (s, 'tol', 1e-1, 'color','b');
- h(2) = plotShape (s, 'tol', 1e-3, 'color', 'm');
- h(3) = plotShape (s, 'tol', 1e-9, 'color', 'g');
- legend (h, {'1e-1','1e-3','1e-9'})
- axis image
-***** shared s
- s = {[0.1 1; 1 0]};
+ x = {[1 2]'; [3 4]'}
+ y = {[10 20]'; [30 40]'}
+ [vecx, vecy] = polyjoin (x, y)
***** test
- plotShape (s); close;
+ x = {[1 2]'; [3 4]'}; y = {[10 20]'; [30 40]'};
+ [vecx, vecy] = polyjoin (x, y);
+ assert (vecx, [1; 2; NaN; 3; 4]);
+ assert (vecy, [10; 20; NaN; 30; 40]);
***** test
- plotShape (s,'tol', 1e-4);close;
+ x = {[1;2]; [3;4]; [3]}; y = {[10;20]; [30;40]; [10]};
+ [vecx, vecy] = polyjoin (x, y);
+ assert (vecx, [1; 2; NaN; 3; 4; NaN; 3]);
+ assert (vecy, [10; 20; NaN; 30; 40; NaN; 10]);
***** test
- plotShape (s,'color', 'm', 'tol', 1e-4);close;
+ x = {[1 2 3]'; 4; [5 6 7 8 NaN 9]'};
+ y = {[9 8 7]'; 6; [5 4 3 2 NaN 1]'};
+ [vecx, vecy] = polyjoin (x, y);
+ assert (vecx, [1; 2; 3; NaN; 4; NaN; 5; 6; 7; 8; NaN; 9]);
+ assert (vecy, [9; 8; 7; NaN; 6; NaN; 5; 4; 3; 2; NaN; 1]);
***** test
- plotShape (s,'color', 'm', 'linewidth', 2, 'tol', 1e-4);close;
+ xyi = {[0 0; 0 10; 10, 10; 10, 0; 0, 0]; [1 5; 2 5; 2 6; 1 6; 1 5]};
+ xyo = polyjoin (xyi);
+ assert (polyjoin (xyi), [0 0; 0 10; 10 10; 10 0; 0 0; NaN, NaN; 1 5; 2 5; 2 6; 1 6; 1 5], eps);
***** test
- plotShape (s,'color', 'm', 'tol', 1e-4, 'linewidth', 2);close;
+ xyi = {[0 0 1; 0 10 2; 10, 10 3; 10, 0 2; 0, 0 1]; [1 5 1.5; 2 5 2; 2 6 2.5; 1 6 2; 1 5 1.5]};
+ xyo = polyjoin (xyi);
+ assert (polyjoin (xyi), [0 0 1; 0 10 2; 10 10 3; 10 0 2; 0 0 1; NaN, NaN NaN; 1 5 1.5; 2 5 2; 2 6 2.5; 1 6 2; 1 5 1.5], eps);
***** test
- plotShape (s,'-om', 'tol', 1e-4, 'linewidth', 2);close;
- plotShape (s,'tol', 1e-4, '-om', 'linewidth', 2);close;
- plotShape (s,'-om', 'linewidth', 2, 'tol', 1e-4);close;
+ assert (polyjoin ({[2, 3]}), [2, 3], eps);
+***** error polyjoin (1);
+***** error polyjoin ({2});
+***** error polyjoin ({2, 3});
+***** error polyjoin ({1; 2}, [3 4]);
+***** warning polyjoin ({1; 2}, {3 4});
+11 tests, 11 passed, 0 known failure, 0 skipped
+[inst/joinPolygons.m]
+>>>>> /build/reproducible-path/octave-geometry-4.0.0/inst/joinPolygons.m
***** test
- plotShape (s,'-om', 'tol', 1e-4, 'tol', 1e-2);close;
-7 tests, 7 passed, 0 known failure, 0 skipped
-[inst/shapeArea.m]
->>>>> /build/reproducible-path/octave-geometry-4.0.0/inst/shapeArea.m
-***** demo # non-convex piece-wise polynomial shape
+ assert (joinPolygons ({1,2}), [1 2]);
+***** test
+ assert (joinPolygons ({}), []);
+***** test
+ XY = joinPolygons ({[1 6; 2 5; 3 4]; [4 3; 5 2; 6 1]});
+ assert (XY, [1 6; 2 5; 3 4; NaN NaN; 4 3; 5 2; 6 1]);
+***** error joinPolygons ([1 2 NaN 3 4], [56 NaN 78])
+***** error joinPolygons ({[1,0], [0,2]});
+5 tests, 5 passed, 0 known failure, 0 skipped
+[inst/shapeCentroid.m]
+>>>>> /build/reproducible-path/octave-geometry-4.0.0/inst/shapeCentroid.m
+***** demo # non-convex bezier shape
boomerang = {[ 0 -2 1; ...
-4 4 0]; ...
[0.25 -1; ...
@@ -2659,12 +2730,42 @@
-3 3 0];
[0.25 0.75; ...
0 0]};
- A = shapeArea (boomerang)
+ CoM = shapeCentroid (boomerang)
+ Gcentroid = centroid(shape2polygon(boomerang))
+ figure(1); clf;
+ plotShape(boomerang,'-o');
+ hold on
+ drawPoint(CoM,'xk;shape centroid;');
+ drawPoint(Gcentroid,'xr;point centroid;');
+ hold off
+ axis equal
+***** demo
+ Lshape = {[0.00000 0.76635; -0.67579 -0.24067]; ...
+ [0.77976 0.76635; 0.00000 -0.91646]; ...
+ [0.00000 1.54611; 0.38614 -0.91646]; ...
+ [-0.43813 1.54611; 0.00000 -0.53032]; ...
+ [0.00000 1.10798; 0.28965 -0.53032]; ...
+ [-0.34163 1.10798; 0.00000 -0.24067]};...
+ CoM = shapeCentroid (Lshape)
+ Gcentroid = centroid (shape2polygon (Lshape))
+
+ plotShape(Lshape,'-o');
+ hold on
+ drawPoint(CoM,'xk;shape centroid;');
+ drawPoint(Gcentroid,'xr;point centroid;');
+ hold off
+ axis equal
***** test
warning('off', 'geom2d:cw-shape', 'local');
- triangle = {[1 0; 0 0]; [-0.5 1; 1 0]; [-0.5 0.5; -1 1]};
- A = shapeArea (triangle);
- assert (0.5, A);
+ square = {[1 -0.5; 0 -0.5]; [0 0.5; 1 -0.5]; [-1 0.5; 0 0.5]; [0 -0.5; -1 0.5]};
+ CoM = shapeCentroid (square);
+ assert (CoM, [0 0], sqrt(eps));
+***** test
+ warning('off', 'geom2d:cw-shape', 'local');
+ square = {[1 -0.5; 0 -0.5]; [0 0.5; 1 -0.5]; [-1 0.5; 0 0.5]; [0 -0.5; -1 0.5]};
+ square_t = transformShape (square,[1;1]);
+ CoM = shapeCentroid (square_t);
+ assert (CoM, [1 1], sqrt(eps));
***** test
warning('off', 'geom2d:cw-shape', 'local');
circle = {[1.715729 -6.715729 0 5; ...
@@ -2675,9 +2776,42 @@
1.715729 1.568542 -8.284271 0]; ...
[-1.715729 -1.568542 8.284271 0; ...
-1.715729 6.715729 0 -5]};
- A = shapeArea (circle);
- assert (pi*5^2, A, 5e-2);
-2 tests, 2 passed, 0 known failure, 0 skipped
+ CoM = shapeCentroid (circle);
+ assert (CoM , [0 0], 5e-3);
+***** shared shape
+ shape = {[-93.172 606.368 -476.054 291.429; ...
+ -431.196 637.253 11.085 163.791]; ...
+ [-75.3626 -253.2337 457.1678 328.5714; ...
+ 438.7659 -653.6278 -7.9953 380.9336]; ...
+ [-89.5841 344.9716 -275.3876 457.1429; ...
+ -170.3613 237.8858 1.0469 158.0765];...
+ [32.900 -298.704 145.804 437.143; ...
+ -243.903 369.597 -34.265 226.648]; ...
+ [-99.081 409.127 -352.903 317.143; ...
+ 55.289 -114.223 -26.781 318.076]; ...
+ [-342.231 191.266 168.108 274.286; ...
+ 58.870 -38.083 -89.358 232.362]};
+***** test # x-Reflection
+ warning('off', 'geom2d:cw-shape', 'local');
+ v = shapeCentroid (shape)(:);
+ T = createLineReflection([0 0 1 0]);
+ nshape = transformShape (shape, T);
+ vn = shapeCentroid (nshape)(:);
+ assert(vn,T(1:2,1:2)*v);
+***** test # Rotation
+ warning('off', 'geom2d:cw-shape', 'local');
+ v = shapeCentroid (shape)(:);
+ T = createRotation(v.',pi/2);
+ nshape = transformShape (shape, T);
+ vn = shapeCentroid (nshape)(:);
+ assert(vn,v,1e-2);
+***** test # Translation
+ warning('off', 'geom2d:cw-shape', 'local');
+ v = shapeCentroid (shape)(:);
+ nshape = transformShape (shape, -v);
+ vn = shapeCentroid (nshape)(:);
+ assert(vn,[0; 0],1e-2);
+6 tests, 6 passed, 0 known failure, 0 skipped
[inst/ispolyccw.m]
>>>>> /build/reproducible-path/octave-geometry-4.0.0/inst/ispolyccw.m
***** shared pccw, pcw, ph
@@ -2695,47 +2829,36 @@
x=[0 0 2 2 NaN 0 2 0]; y=[0 2 2 0 NaN 0 0 3];
assert(ispolyccw(x,y),[false;true]);
6 tests, 6 passed, 0 known failure, 0 skipped
-[inst/polysplit.m]
->>>>> /build/reproducible-path/octave-geometry-4.0.0/inst/polysplit.m
-***** test
- x=[1 ;2 ;NaN ;3 ;4]; y=[4 ;3 ;NaN ;2 ;1];
- [cellx,celly]=polysplit(x,y);
- assert (cellx, {[1; 2];[3; 4]});
- assert (celly, {[4; 3];[2; 1]});
-***** test
- x=[1 2 NaN 3 4]; y=[4 3 NaN 2 1];
- [cellx,celly]=polysplit(x,y);
- assert (cellx, {[1 2];[3 4]});
- assert (celly, {[4 3];[2 1]});
+[inst/shapeArea.m]
+>>>>> /build/reproducible-path/octave-geometry-4.0.0/inst/shapeArea.m
+***** demo # non-convex piece-wise polynomial shape
+ boomerang = {[ 0 -2 1; ...
+ -4 4 0]; ...
+ [0.25 -1; ...
+ 0 0]; ...
+ [ 0 1.5 -0.75; ...
+ -3 3 0];
+ [0.25 0.75; ...
+ 0 0]};
+ A = shapeArea (boomerang)
***** test
- x=[0 ;2 ;2 ;0 ;0 ;NaN ;NaN]; y=[0 ;0 ;3 ;3 ;0 ;NaN ;NaN];
- [cellx,celly]=polysplit(x,y);
- assert (cellx, {[0 ;2 ;2 ;0 ;0]});
- assert (celly, {[0 ;0 ;3 ;3 ;0]});
-3 tests, 3 passed, 0 known failure, 0 skipped
-[inst/simplifyPolygon_geometry.m]
->>>>> /build/reproducible-path/octave-geometry-4.0.0/inst/simplifyPolygon_geometry.m
+ warning('off', 'geom2d:cw-shape', 'local');
+ triangle = {[1 0; 0 0]; [-0.5 1; 1 0]; [-0.5 0.5; -1 1]};
+ A = shapeArea (triangle);
+ assert (0.5, A);
***** test
- P = [0 0; 1 0; 0 1];
- P2 = [0 0; 0.1 0; 0.2 0; 0.25 0; 1 0; 0 1; 0 0.7; 0 0.6; 0 0.3; 0 0.1];
- assert(simplifyPolygon_geometry (P2),P,min(P2(:))*eps)
-***** demo
-
- P = [0 0; 1 0; 0 1];
- P2 = [0 0; 0.1 0; 0.2 0; 0.25 0; 1 0; 0 1; 0 0.7; 0 0.6; 0 0.3; 0 0.1];
- Pr = simplifyPolygon_geometry (P2);
-
- cla
- drawPolygon(P,'or;Reference;');
- hold on
- drawPolygon(P2,'x-b;Redundant;');
- drawPolygon(Pr,'*g;Simplified;');
- hold off
-
- # --------------------------------------------------------------------------
- # The two polygons describe the same figure, a triangle. Extra points are
- # removed from the redundant one.
-1 test, 1 passed, 0 known failure, 0 skipped
+ warning('off', 'geom2d:cw-shape', 'local');
+ circle = {[1.715729 -6.715729 0 5; ...
+ -1.715729 -1.568542 8.284271 0]; ...
+ [1.715729 1.568542 -8.284271 0; ...
+ 1.715729 -6.715729 0 5]; ...
+ [-1.715729 6.715729 0 -5; ...
+ 1.715729 1.568542 -8.284271 0]; ...
+ [-1.715729 -1.568542 8.284271 0; ...
+ -1.715729 6.715729 0 -5]};
+ A = shapeArea (circle);
+ assert (pi*5^2, A, 5e-2);
+2 tests, 2 passed, 0 known failure, 0 skipped
[inst/clipPolygon.m]
>>>>> /build/reproducible-path/octave-geometry-4.0.0/inst/clipPolygon.m
***** error clipPolygon([],[],[],'abracadabra')
@@ -2787,62 +2910,6 @@
axis off
endfor
2 tests, 2 passed, 0 known failure, 0 skipped
-[inst/poly2cw.m]
->>>>> /build/reproducible-path/octave-geometry-4.0.0/inst/poly2cw.m
-***** test
- x = [0; 1; 1; 0; 0]; y = [0; 0; 1; 1; 0];
- [xcw,ycw] = poly2cw(x,y);
- xexp = [0; 0; 1; 1; 0]; yexp = [0; 1; 1; 0; 0];
- assert (xcw,xexp);
- assert (ycw,yexp);
-***** test
- x=[0 0 2 2 NaN 0 2 0]; y=[0 2 2 0 NaN 0 0 3];
- [xcw,ycw]=poly2cw(x,y);
- xexp=[0; 0; 2; 2; NaN; 0; 0; 2];
- yexp=[0; 2; 2; 0; NaN; 0; 3; 0];
- assert (xcw,xexp);
- assert (ycw,yexp);
-2 tests, 2 passed, 0 known failure, 0 skipped
-[inst/ispolycw.m]
->>>>> /build/reproducible-path/octave-geometry-4.0.0/inst/ispolycw.m
-***** shared pccw, pcw, ph
- pccw = pcw = [0 0; 1 0; 1 1; 0 1];
- pcw([2 4],:) = pcw([4 2], :);
- ph = [pccw; nan(1,2); 0.5*pcw+[0.25 0.25]];
-***** assert (~ispolycw (pccw));
-***** assert (ispolycw (pcw));
-***** assert (ispolycw ({pccw;pcw}), [false;true]);
-***** assert (ispolycw ({pccw,pcw}), [false,true]);
-***** assert (ispolycw(ph),[false;true]);
-***** test
- phcw = [pcw; nan(1,2); 0.5*pccw+[0.25 0.25]];
- assert (ispolycw(phcw),[true;false]);
-***** test
- x=[0 0 2 2 NaN 0 2 0]; y=[0 2 2 0 NaN 0 0 3];
- assert(ispolycw(x,y),[true;false]);
-7 tests, 7 passed, 0 known failure, 0 skipped
-[inst/@svg/svg.m]
->>>>> /build/reproducible-path/octave-geometry-4.0.0/inst/@svg/svg.m
-***** test
- dc = svg('drawing5.svg');
- dc.getpath();
- dc.pathid();
- dc.getpath('path3756');
-
- dc = svg('drawing.svg');
- ids = dc.pathid();
- dc.getpath({ids{[1 3]}});
-***** xtest
- dc = svg('drawing6.svg');
- ids = dc.pathid();
- P = dc.path2polygon(ids{1});
-!!!!! known failure
-cat: dimension mismatch
-***** xtest
- dc = svg('drawing6.svg');
- dc.plot();
- dc.plot('color','r','linewidth',2);
-3 tests, 2 passed, 1 known failure, 0 skipped
[inst/orientPolygon.m]
>>>>> /build/reproducible-path/octave-geometry-4.0.0/inst/orientPolygon.m
***** shared pccw, pcw, pxccw, pyccw, pxnan, pynan, pnan
@@ -2882,109 +2949,44 @@
[x y] = orientPolygon (pxccw,pyccw,"cw");
assert ([x y], pcw);
8 tests, 8 passed, 0 known failure, 0 skipped
-[inst/polyjoin.m]
->>>>> /build/reproducible-path/octave-geometry-4.0.0/inst/polyjoin.m
-***** demo
- x = {[1 2]'; [3 4]'}
- y = {[10 20]'; [30 40]'}
- [vecx, vecy] = polyjoin (x, y)
-***** test
- x = {[1 2]'; [3 4]'}; y = {[10 20]'; [30 40]'};
- [vecx, vecy] = polyjoin (x, y);
- assert (vecx, [1; 2; NaN; 3; 4]);
- assert (vecy, [10; 20; NaN; 30; 40]);
-***** test
- x = {[1;2]; [3;4]; [3]}; y = {[10;20]; [30;40]; [10]};
- [vecx, vecy] = polyjoin (x, y);
- assert (vecx, [1; 2; NaN; 3; 4; NaN; 3]);
- assert (vecy, [10; 20; NaN; 30; 40; NaN; 10]);
-***** test
- x = {[1 2 3]'; 4; [5 6 7 8 NaN 9]'};
- y = {[9 8 7]'; 6; [5 4 3 2 NaN 1]'};
- [vecx, vecy] = polyjoin (x, y);
- assert (vecx, [1; 2; 3; NaN; 4; NaN; 5; 6; 7; 8; NaN; 9]);
- assert (vecy, [9; 8; 7; NaN; 6; NaN; 5; 4; 3; 2; NaN; 1]);
-***** test
- xyi = {[0 0; 0 10; 10, 10; 10, 0; 0, 0]; [1 5; 2 5; 2 6; 1 6; 1 5]};
- xyo = polyjoin (xyi);
- assert (polyjoin (xyi), [0 0; 0 10; 10 10; 10 0; 0 0; NaN, NaN; 1 5; 2 5; 2 6; 1 6; 1 5], eps);
-***** test
- xyi = {[0 0 1; 0 10 2; 10, 10 3; 10, 0 2; 0, 0 1]; [1 5 1.5; 2 5 2; 2 6 2.5; 1 6 2; 1 5 1.5]};
- xyo = polyjoin (xyi);
- assert (polyjoin (xyi), [0 0 1; 0 10 2; 10 10 3; 10 0 2; 0 0 1; NaN, NaN NaN; 1 5 1.5; 2 5 2; 2 6 2.5; 1 6 2; 1 5 1.5], eps);
-***** test
- assert (polyjoin ({[2, 3]}), [2, 3], eps);
-***** error polyjoin (1);
-***** error polyjoin ({2});
-***** error polyjoin ({2, 3});
-***** error polyjoin ({1; 2}, [3 4]);
-***** warning polyjoin ({1; 2}, {3 4});
-11 tests, 11 passed, 0 known failure, 0 skipped
-[inst/polybool.m]
->>>>> /build/reproducible-path/octave-geometry-4.0.0/inst/polybool.m
-***** shared ipol, cpol, ix, iy, cx, cy, xi, yi, xc, yc
- ipol = [0 0; 3 0; 3 3; 0 3; 0 0];
- cpol = [2, 1; 5, 1; 5, 4; 2, 4; 2, 1];
- ix = {ipol(:, 1)'};
- iy = {ipol(:, 2)'};
- cx = {cpol(:, 1)'};
- cy = {cpol(:, 2)'};
- xi = {ipol(:, 1)};
- yi = {ipol(:, 2)};
- xc = {cpol(:, 1)};
- yc = {cpol(:, 2)};
-***** test
- opol = polybool (0, ipol, cpol);
- assert (size (opol), [7, 2]);
- assert (polygonArea (opol), 7);
-***** test
- [ox, oy] = polybool (0, ix, iy, cx, cy);
- opol = [ox{1}', oy{1}'];
- assert (size (opol), [7, 2]);
- assert (polygonArea (opol), 7);
-***** test
- [ox, oy] = polybool (0, xi, yi, xc, yc);
- opol = [ox{1}, oy{1}];
- assert (size (opol), [7, 2]);
- assert (polygonArea (opol), 7);
-***** test
- opol = polybool (1, cpol, ipol);
- assert (size (opol), [5, 2]);
- assert (polygonArea (opol), 2);
-***** test
- [ox, oy] = polybool (1, ix, iy, cx, cy);
- opol = [ox{1}', oy{1}'];
- assert (size (opol), [5, 2]);
- assert (polygonArea (opol), 2);
-***** test
- opol = polybool (2, cpol, ipol);
- assert (size (opol), [15, 2]);
- assert (polygonArea (opol), 14);
+[inst/poly2ccw.m]
+>>>>> /build/reproducible-path/octave-geometry-4.0.0/inst/poly2ccw.m
***** test
- [ox, oy] = polybool (2, ix, iy, cx, cy);
- opol = [ox{1}', oy{1}'];
- assert (size (opol), [15, 2]);
- assert (polygonArea (opol), 14);
+ x = [0 0 1 1 0]; y = [0 1 1 0 0];
+ [xccw,yccw] = poly2ccw(x,y);
+ xexp = [0; 1; 1; 0; 0]; yexp = [0; 0; 1; 1; 0];
+ assert (xccw,xexp);
+ assert (yccw,yexp);
***** test
- opol = polybool (3, cpol, ipol);
- assert (size (opol), [9, 2]);
- assert (polygonArea (opol), 16);
+ x=[0 0 2 2 NaN 0 2 0]; y=[0 2 2 0 NaN 0 0 3];
+ [xccw,yccw]=poly2ccw(x,y);
+ xexp=[0; 2; 2; 0; NaN; 0; 2; 0];
+ yexp=[0; 0; 2; 2; NaN; 0; 0; 3];
+ assert (xccw,xexp);
+ assert (yccw,yexp);
+2 tests, 2 passed, 0 known failure, 0 skipped
+[inst/@svg/svg.m]
+>>>>> /build/reproducible-path/octave-geometry-4.0.0/inst/@svg/svg.m
***** test
- [ox, oy] = polybool (3, ix, iy, cx, cy);
- opol = [ox{1}', oy{1}'];
- assert (size (opol), [9, 2]);
- assert (polygonArea (opol), 16);
-***** error polybool ("a", 1, 2, 3 ,4);
-***** error polybool (-1, 1, 2);
-***** error polybool (-1, [1 1; 2 2; 3 3], [2 2; 3 3; 4 4]);
-***** error polybool (1, [0 0 0; 2 2 2; 5 5 5], [1 1 1; 3 3 3]);
-***** error polybool (1, [0 0 0; 2 2 2; 5 5 5], [1 1 1; 3 3 3; 6 6 7]);
-***** error polybool (1, {1, 2}, [1, 2]);
-***** error polybool (1, {[1, 2, 3]}, {[1, 2, 3, 4]});
-***** error polybool (1, {[1, 2, 3]}, {[1, 2, 3]}, {[1, 2, 3]}, {[1, 2, 4, 5]});
-***** error polybool ('z', {[1, 2, 3]}, {[1, 2, 3]}, {[1, 2, 3]}, {[1, 2, 4]});
-***** error polybool (1, [1 1; 2 2; 3 3], [2 2; 3 3; 4 4], "abc")
-19 tests, 19 passed, 0 known failure, 0 skipped
+ dc = svg('drawing5.svg');
+ dc.getpath();
+ dc.pathid();
+ dc.getpath('path3756');
+
+ dc = svg('drawing.svg');
+ ids = dc.pathid();
+ dc.getpath({ids{[1 3]}});
+***** xtest
+ dc = svg('drawing6.svg');
+ ids = dc.pathid();
+ P = dc.path2polygon(ids{1});
+!!!!! known failure
+cat: dimension mismatch
+***** xtest
+ dc = svg('drawing6.svg');
+ dc.plot();
+ dc.plot('color','r','linewidth',2);
+3 tests, 2 passed, 1 known failure, 0 skipped
[inst/clipPolygon_mrf.m]
>>>>> /build/reproducible-path/octave-geometry-4.0.0/inst/clipPolygon_mrf.m
***** test
@@ -3124,34 +3126,166 @@
axis off
title "7. Clip - sub";
4 tests, 4 passed, 0 known failure, 0 skipped
-[inst/poly2ccw.m]
->>>>> /build/reproducible-path/octave-geometry-4.0.0/inst/poly2ccw.m
+[inst/poly2cw.m]
+>>>>> /build/reproducible-path/octave-geometry-4.0.0/inst/poly2cw.m
***** test
- x = [0 0 1 1 0]; y = [0 1 1 0 0];
- [xccw,yccw] = poly2ccw(x,y);
- xexp = [0; 1; 1; 0; 0]; yexp = [0; 0; 1; 1; 0];
- assert (xccw,xexp);
- assert (yccw,yexp);
+ x = [0; 1; 1; 0; 0]; y = [0; 0; 1; 1; 0];
+ [xcw,ycw] = poly2cw(x,y);
+ xexp = [0; 0; 1; 1; 0]; yexp = [0; 1; 1; 0; 0];
+ assert (xcw,xexp);
+ assert (ycw,yexp);
***** test
x=[0 0 2 2 NaN 0 2 0]; y=[0 2 2 0 NaN 0 0 3];
- [xccw,yccw]=poly2ccw(x,y);
- xexp=[0; 2; 2; 0; NaN; 0; 2; 0];
- yexp=[0; 0; 2; 2; NaN; 0; 0; 3];
- assert (xccw,xexp);
- assert (yccw,yexp);
+ [xcw,ycw]=poly2cw(x,y);
+ xexp=[0; 0; 2; 2; NaN; 0; 0; 2];
+ yexp=[0; 2; 2; 0; NaN; 0; 3; 0];
+ assert (xcw,xexp);
+ assert (ycw,yexp);
2 tests, 2 passed, 0 known failure, 0 skipped
-[inst/joinPolygons.m]
->>>>> /build/reproducible-path/octave-geometry-4.0.0/inst/joinPolygons.m
+[inst/polygon2shape.m]
+>>>>> /build/reproducible-path/octave-geometry-4.0.0/inst/polygon2shape.m
***** test
- assert (joinPolygons ({1,2}), [1 2]);
+ pp = [0 0; 1 0; 1 1; 0 1];
+ s = polygon2shape (pp);
+1 test, 1 passed, 0 known failure, 0 skipped
+[inst/plotShape.m]
+>>>>> /build/reproducible-path/octave-geometry-4.0.0/inst/plotShape.m
+***** demo
+ # Taylor series of cos(pi*x),sin(pi*x)
+ n = 5; N = 0:5;
+ s{1}(1,2:2:2*n+2) = fliplr ( (-1).^N .* (pi).^(2*N) ./ factorial (2*N));
+ s{1}(2,1:2:2*n+1) = fliplr ( (-1).^N .* (pi).^(2*N+1) ./ factorial (2*N+1));
+
+ h(1) = plotShape (s, 'tol', 1e-1, 'color','b');
+ h(2) = plotShape (s, 'tol', 1e-3, 'color', 'm');
+ h(3) = plotShape (s, 'tol', 1e-9, 'color', 'g');
+ legend (h, {'1e-1','1e-3','1e-9'})
+ axis image
+***** shared s
+ s = {[0.1 1; 1 0]};
***** test
- assert (joinPolygons ({}), []);
+ plotShape (s); close;
***** test
- XY = joinPolygons ({[1 6; 2 5; 3 4]; [4 3; 5 2; 6 1]});
- assert (XY, [1 6; 2 5; 3 4; NaN NaN; 4 3; 5 2; 6 1]);
-***** error joinPolygons ([1 2 NaN 3 4], [56 NaN 78])
-***** error joinPolygons ({[1,0], [0,2]});
-5 tests, 5 passed, 0 known failure, 0 skipped
+ plotShape (s,'tol', 1e-4);close;
+***** test
+ plotShape (s,'color', 'm', 'tol', 1e-4);close;
+***** test
+ plotShape (s,'color', 'm', 'linewidth', 2, 'tol', 1e-4);close;
+***** test
+ plotShape (s,'color', 'm', 'tol', 1e-4, 'linewidth', 2);close;
+***** test
+ plotShape (s,'-om', 'tol', 1e-4, 'linewidth', 2);close;
+ plotShape (s,'tol', 1e-4, '-om', 'linewidth', 2);close;
+ plotShape (s,'-om', 'linewidth', 2, 'tol', 1e-4);close;
+***** test
+ plotShape (s,'-om', 'tol', 1e-4, 'tol', 1e-2);close;
+7 tests, 7 passed, 0 known failure, 0 skipped
+[inst/ispolycw.m]
+>>>>> /build/reproducible-path/octave-geometry-4.0.0/inst/ispolycw.m
+***** shared pccw, pcw, ph
+ pccw = pcw = [0 0; 1 0; 1 1; 0 1];
+ pcw([2 4],:) = pcw([4 2], :);
+ ph = [pccw; nan(1,2); 0.5*pcw+[0.25 0.25]];
+***** assert (~ispolycw (pccw));
+***** assert (ispolycw (pcw));
+***** assert (ispolycw ({pccw;pcw}), [false;true]);
+***** assert (ispolycw ({pccw,pcw}), [false,true]);
+***** assert (ispolycw(ph),[false;true]);
+***** test
+ phcw = [pcw; nan(1,2); 0.5*pccw+[0.25 0.25]];
+ assert (ispolycw(phcw),[true;false]);
+***** test
+ x=[0 0 2 2 NaN 0 2 0]; y=[0 2 2 0 NaN 0 0 3];
+ assert(ispolycw(x,y),[true;false]);
+7 tests, 7 passed, 0 known failure, 0 skipped
+[inst/simplifyPolygon_geometry.m]
+>>>>> /build/reproducible-path/octave-geometry-4.0.0/inst/simplifyPolygon_geometry.m
+***** test
+ P = [0 0; 1 0; 0 1];
+ P2 = [0 0; 0.1 0; 0.2 0; 0.25 0; 1 0; 0 1; 0 0.7; 0 0.6; 0 0.3; 0 0.1];
+ assert(simplifyPolygon_geometry (P2),P,min(P2(:))*eps)
+***** demo
+
+ P = [0 0; 1 0; 0 1];
+ P2 = [0 0; 0.1 0; 0.2 0; 0.25 0; 1 0; 0 1; 0 0.7; 0 0.6; 0 0.3; 0 0.1];
+ Pr = simplifyPolygon_geometry (P2);
+
+ cla
+ drawPolygon(P,'or;Reference;');
+ hold on
+ drawPolygon(P2,'x-b;Redundant;');
+ drawPolygon(Pr,'*g;Simplified;');
+ hold off
+
+ # --------------------------------------------------------------------------
+ # The two polygons describe the same figure, a triangle. Extra points are
+ # removed from the redundant one.
+1 test, 1 passed, 0 known failure, 0 skipped
+[inst/polybool.m]
+>>>>> /build/reproducible-path/octave-geometry-4.0.0/inst/polybool.m
+***** shared ipol, cpol, ix, iy, cx, cy, xi, yi, xc, yc
+ ipol = [0 0; 3 0; 3 3; 0 3; 0 0];
+ cpol = [2, 1; 5, 1; 5, 4; 2, 4; 2, 1];
+ ix = {ipol(:, 1)'};
+ iy = {ipol(:, 2)'};
+ cx = {cpol(:, 1)'};
+ cy = {cpol(:, 2)'};
+ xi = {ipol(:, 1)};
+ yi = {ipol(:, 2)};
+ xc = {cpol(:, 1)};
+ yc = {cpol(:, 2)};
+***** test
+ opol = polybool (0, ipol, cpol);
+ assert (size (opol), [7, 2]);
+ assert (polygonArea (opol), 7);
+***** test
+ [ox, oy] = polybool (0, ix, iy, cx, cy);
+ opol = [ox{1}', oy{1}'];
+ assert (size (opol), [7, 2]);
+ assert (polygonArea (opol), 7);
+***** test
+ [ox, oy] = polybool (0, xi, yi, xc, yc);
+ opol = [ox{1}, oy{1}];
+ assert (size (opol), [7, 2]);
+ assert (polygonArea (opol), 7);
+***** test
+ opol = polybool (1, cpol, ipol);
+ assert (size (opol), [5, 2]);
+ assert (polygonArea (opol), 2);
+***** test
+ [ox, oy] = polybool (1, ix, iy, cx, cy);
+ opol = [ox{1}', oy{1}'];
+ assert (size (opol), [5, 2]);
+ assert (polygonArea (opol), 2);
+***** test
+ opol = polybool (2, cpol, ipol);
+ assert (size (opol), [15, 2]);
+ assert (polygonArea (opol), 14);
+***** test
+ [ox, oy] = polybool (2, ix, iy, cx, cy);
+ opol = [ox{1}', oy{1}'];
+ assert (size (opol), [15, 2]);
+ assert (polygonArea (opol), 14);
+***** test
+ opol = polybool (3, cpol, ipol);
+ assert (size (opol), [9, 2]);
+ assert (polygonArea (opol), 16);
+***** test
+ [ox, oy] = polybool (3, ix, iy, cx, cy);
+ opol = [ox{1}', oy{1}'];
+ assert (size (opol), [9, 2]);
+ assert (polygonArea (opol), 16);
+***** error polybool ("a", 1, 2, 3 ,4);
+***** error polybool (-1, 1, 2);
+***** error polybool (-1, [1 1; 2 2; 3 3], [2 2; 3 3; 4 4]);
+***** error polybool (1, [0 0 0; 2 2 2; 5 5 5], [1 1 1; 3 3 3]);
+***** error polybool (1, [0 0 0; 2 2 2; 5 5 5], [1 1 1; 3 3 3; 6 6 7]);
+***** error polybool (1, {1, 2}, [1, 2]);
+***** error polybool (1, {[1, 2, 3]}, {[1, 2, 3, 4]});
+***** error polybool (1, {[1, 2, 3]}, {[1, 2, 3]}, {[1, 2, 3]}, {[1, 2, 4, 5]});
+***** error polybool ('z', {[1, 2, 3]}, {[1, 2, 3]}, {[1, 2, 3]}, {[1, 2, 4]});
+***** error polybool (1, [1 1; 2 2; 3 3], [2 2; 3 3; 4 4], "abc")
+19 tests, 19 passed, 0 known failure, 0 skipped
[inst/isPolygonCCW.m]
>>>>> /build/reproducible-path/octave-geometry-4.0.0/inst/isPolygonCCW.m
***** shared pccw, pcw, pxccw, pyccw, pxnan, pynan, pnan
@@ -3177,105 +3311,6 @@
***** xtest assert (isPolygonCCW(pnan,[],"clipper"), [true; false]);
***** xtest assert (isPolygonCCW({pnan,pcw},[],"clipper"),{[true; false], false});
14 tests, 14 passed, 0 known failure, 0 skipped
-[inst/shapeCentroid.m]
->>>>> /build/reproducible-path/octave-geometry-4.0.0/inst/shapeCentroid.m
-***** demo # non-convex bezier shape
- boomerang = {[ 0 -2 1; ...
- -4 4 0]; ...
- [0.25 -1; ...
- 0 0]; ...
- [ 0 1.5 -0.75; ...
- -3 3 0];
- [0.25 0.75; ...
- 0 0]};
- CoM = shapeCentroid (boomerang)
- Gcentroid = centroid(shape2polygon(boomerang))
- figure(1); clf;
- plotShape(boomerang,'-o');
- hold on
- drawPoint(CoM,'xk;shape centroid;');
- drawPoint(Gcentroid,'xr;point centroid;');
- hold off
- axis equal
-***** demo
- Lshape = {[0.00000 0.76635; -0.67579 -0.24067]; ...
- [0.77976 0.76635; 0.00000 -0.91646]; ...
- [0.00000 1.54611; 0.38614 -0.91646]; ...
- [-0.43813 1.54611; 0.00000 -0.53032]; ...
- [0.00000 1.10798; 0.28965 -0.53032]; ...
- [-0.34163 1.10798; 0.00000 -0.24067]};...
- CoM = shapeCentroid (Lshape)
- Gcentroid = centroid (shape2polygon (Lshape))
-
- plotShape(Lshape,'-o');
- hold on
- drawPoint(CoM,'xk;shape centroid;');
- drawPoint(Gcentroid,'xr;point centroid;');
- hold off
- axis equal
-***** test
- warning('off', 'geom2d:cw-shape', 'local');
- square = {[1 -0.5; 0 -0.5]; [0 0.5; 1 -0.5]; [-1 0.5; 0 0.5]; [0 -0.5; -1 0.5]};
- CoM = shapeCentroid (square);
- assert (CoM, [0 0], sqrt(eps));
-***** test
- warning('off', 'geom2d:cw-shape', 'local');
- square = {[1 -0.5; 0 -0.5]; [0 0.5; 1 -0.5]; [-1 0.5; 0 0.5]; [0 -0.5; -1 0.5]};
- square_t = transformShape (square,[1;1]);
- CoM = shapeCentroid (square_t);
- assert (CoM, [1 1], sqrt(eps));
-***** test
- warning('off', 'geom2d:cw-shape', 'local');
- circle = {[1.715729 -6.715729 0 5; ...
- -1.715729 -1.568542 8.284271 0]; ...
- [1.715729 1.568542 -8.284271 0; ...
- 1.715729 -6.715729 0 5]; ...
- [-1.715729 6.715729 0 -5; ...
- 1.715729 1.568542 -8.284271 0]; ...
- [-1.715729 -1.568542 8.284271 0; ...
- -1.715729 6.715729 0 -5]};
- CoM = shapeCentroid (circle);
- assert (CoM , [0 0], 5e-3);
-***** shared shape
- shape = {[-93.172 606.368 -476.054 291.429; ...
- -431.196 637.253 11.085 163.791]; ...
- [-75.3626 -253.2337 457.1678 328.5714; ...
- 438.7659 -653.6278 -7.9953 380.9336]; ...
- [-89.5841 344.9716 -275.3876 457.1429; ...
- -170.3613 237.8858 1.0469 158.0765];...
- [32.900 -298.704 145.804 437.143; ...
- -243.903 369.597 -34.265 226.648]; ...
- [-99.081 409.127 -352.903 317.143; ...
- 55.289 -114.223 -26.781 318.076]; ...
- [-342.231 191.266 168.108 274.286; ...
- 58.870 -38.083 -89.358 232.362]};
-***** test # x-Reflection
- warning('off', 'geom2d:cw-shape', 'local');
- v = shapeCentroid (shape)(:);
- T = createLineReflection([0 0 1 0]);
- nshape = transformShape (shape, T);
- vn = shapeCentroid (nshape)(:);
- assert(vn,T(1:2,1:2)*v);
-***** test # Rotation
- warning('off', 'geom2d:cw-shape', 'local');
- v = shapeCentroid (shape)(:);
- T = createRotation(v.',pi/2);
- nshape = transformShape (shape, T);
- vn = shapeCentroid (nshape)(:);
- assert(vn,v,1e-2);
-***** test # Translation
- warning('off', 'geom2d:cw-shape', 'local');
- v = shapeCentroid (shape)(:);
- nshape = transformShape (shape, -v);
- vn = shapeCentroid (nshape)(:);
- assert(vn,[0; 0],1e-2);
-6 tests, 6 passed, 0 known failure, 0 skipped
-[inst/polygon2shape.m]
->>>>> /build/reproducible-path/octave-geometry-4.0.0/inst/polygon2shape.m
-***** test
- pp = [0 0; 1 0; 1 1; 0 1];
- s = polygon2shape (pp);
-1 test, 1 passed, 0 known failure, 0 skipped
Checking C++ files ...
Summary: 103 tests, 102 passed, 1 known failures, 0 skipped
dh_installdocs -O--buildsystem=octave
@@ -3317,12 +3352,14 @@
dpkg-buildpackage: info: binary-only upload (no source included)
dpkg-genchanges: info: not including original source code in upload
I: copying local configuration
+I: user script /srv/workspace/pbuilder/3404847/tmp/hooks/B01_cleanup starting
+I: user script /srv/workspace/pbuilder/3404847/tmp/hooks/B01_cleanup finished
I: unmounting dev/ptmx filesystem
I: unmounting dev/pts filesystem
I: unmounting dev/shm filesystem
I: unmounting proc filesystem
I: unmounting sys filesystem
I: cleaning the build env
-I: removing directory /srv/workspace/pbuilder/3843132 and its subdirectories
-I: Current time: Wed Sep 3 06:07:46 -12 2025
-I: pbuilder-time-stamp: 1756922866
+I: removing directory /srv/workspace/pbuilder/3404847 and its subdirectories
+I: Current time: Fri Aug 2 01:49:01 +14 2024
+I: pbuilder-time-stamp: 1722512941