Supplement
Supplement
to the monograph
An Introduction to Computational Origami
for Mathematica 13.0.1 and 13.1.0
An Introduction to Computational Origami
for Mathematica 13.0.1 and 13.1.0
Tetsuo Ida (University of Tsukuba)
and
Fadoua Ghourab
revised on July 28,2022
revised on July 17,2022
revised on January 19,2022
revised on September 16,2021
revised on March 23, 2021
revised on July 28,2022
revised on July 17,2022
revised on January 19,2022
revised on September 16,2021
revised on March 23, 2021
1. Introduction
1
. IntroductionThis note is a supplement to Monograph “An Introduction to Computational Origami”, Springer, September, 2020:
Hyperlink["https://www.i-eos.org/wp-content/uploads/2021/02/BookSellerFlyer_9783319591889.pdf"]
This note serves as a guide to use Eos (E-Origami System) described in the monograph. We explain how to install Eos on your computer and give examples of small Orikoto programs. They may serve as a test of your installation.
2. Installation
2. Installation
System requirements
System requirements
Eos consists of Mathematica packages. The current version of Eos is 3.6. The version of Mathematica we are using now is 13.0.1.0. Eos 3.6 was tested by Mathematica 13.0.1.0 and 12.3.0. We have also tried to run Eos under the most recent Mathematica 13.1.0. So far, we have no serious problem. Eos runs under the operating systems (Windows 11, and macOS Monterey), where Mathematica 13 is installed. We do not guarantee that Eos 3.6 works correctly for versions earlier than Mathematica 12.
Download
Download
To download Eos 3.6, you must be an Eos website blog member. To become a member, visit the Eos project website:
to decide whether the materials accessible to the members are useful for your study and research.
We used to allow readers of our monograph to self-register. Around February 2020, the number of the registration started to increase unusually. Also the website attacks are increasing. Therefore, we suspended the self-registration on April 15, 2022.
Since then, we kindly ask readers of the monograph to send an email to
ida@cs.tsukuba.ac.jp
with Subject: membership application
In the body of the email text, please include the following.
In the body of the email text, please include the following.
1
.1. account name that you want to use (default is your email address without domain name).
2. Your name (Given name , Family name)
3. Copy of the following statement:
I agree that I restrict the use of Eos 3.6 only to education, hobby and/or non-commercial research and development.
When the application is accepted, you will receive an Eos project email telling you how to retrieve your password, within two working days. Using the password, login to the Eos project site. Successful login implies that you have become a member whose status is a "mono-reader ."
We use your account name and email address only for the communication between you and the Eos project. We do not use cookies, nor track your accesses to pages explicitly. We use a firewall plugin. It reports us repeated failure logins and originating ip accesses to the database. We also use the plugin ”Simple History” that keeps the the record of user logins for 20 days.
Logging in to the Eos project website, we see the website’s front page. There, you can find the main menu bar. We reach the supplement pages by clicking the menu tab “Supplement.” We see four articles linked to the supplement tabs: Mathematica 12.1 or earlier, Mathematica 12.2, Mathematica 12.3 and Mathematica 13. This article is reached from the top tab. We will find Eos 3.6 by the menu tab “Eos software.” Open Eos 3.6 page.
Configuration
Configuration
Download the zipped archive of your choice. If you prefer the latest version of Eos, we unzip the file Eos3-6 in your desired folder. We use the folder whose path is ~/Dropbox. This path marks the root directory of the Eos system. In macOS, for example, it is likely to be /Users/xxx/Dropbox/.
Folder Eos3-6 is created in the Dropbox. In the folder, we find files Installer.nb and init.m. Open init.m by Mathematica, and rewrite the path according to your folder structure. Namely, if you select a different root folder, e.g., MyEosSystem, to Drop1box, rewrite the line in init.m
Orikoto`$eosSystemDirectory=
FileNameJoin[{$HomeDirectory,"Dropbox","Eos3-6"}]
FileNameJoin[{$HomeDirectory,"Dropbox","Eos3-6"}]
to
Orikoto`$eosSystemDirectory=
FileNameJoin[{$HomeDirectory,"MyEosSystem","Eos3-6"}]
FileNameJoin[{$HomeDirectory,"MyEosSystem","Eos3-6"}]
and save init.m.
Then, we open, by Mathematica, Installer.nb, and rewrite Dropbox to MyEosSystem, likewise.
fromFile=FileNameJoin[
{$HomeDirectory ,"Dropbox","Eos3-6","init.m"}]
{$HomeDirectory ,"Dropbox","Eos3-6","init.m"}]
to
fromFile=FileNameJoin[
{$HomeDirectory ,"MyEosSystem","Eos3-6","init.m"}]
{$HomeDirectory ,"MyEosSystem","Eos3-6","init.m"}]
Execute Installer.nb (Cmd-a + shift enter). Click Yes when Mathematica asks whether you allow the installer to proceed. The installer will put init.m in user’s Mathematica/Kernel, replacing the existing init.m if it exists. If the existing init.m is important for your other applications, save it before you execute Installer.nb.
The installer prints, in the case of macOS,
Succesfullyinstalled
/Users/xxx/Library/Mathematica/Kernel/init.m
where xxx is the user name.
ExittheMathematica,savingtheInstaller.nb.
We can execute installer.nb, whenever we changed the init.m. In other words, we can modify init.m to allow our other applications together with Eos, we should edit the init.m file and install it again by the installer. Do not forget to exit the Mathematica session after the Installer.nb is executed. File init.m is executed only when a new Mathematica session starts.
We have made an important change in releasing Eos 3.6. Eos3.6 is valid until the end of 2022 (your local time). By that time, a newer version will be available. Please download a new version before the end of 2022 if you intend to use Eos further. We plan to change the usage of Eos software to a subscription-based model from a one-time distraction model for ease of maintenance and development. We care less about backward compatibility and look more for new products.
3. Testing
3
. TestingIn the web page following the menu tabs
Origami Works -> Test Examples,
we find four test examples. Download the files. Open each file and execute all the commands.
Origami Works -> Test Examples,
we find four test examples. Download the files. Open each file and execute all the commands.
Except for yacht.nb, each file has more than one sections; Header, Construction and Verification. The header part sections have initialization cells that load Eos system automatically, when we execute a command in the file. Therefore, we may start from Section Construction.
We defined new notations and used them in some examples. We recommend to include Notation Section that is included in Orikoto program examples. Copy Notation Section to the header part of your Orikoto program.
The following lines of commands are very simple examples. Start Mathematica system. Copy the command lines in a file created in the directory Eos3-6 (or wherever you like), and try to execute them one by one. We will obtain the same outputs. The first output by the execution of the
In[]:=
<<EosHeader`
g3 Version 2.1
Eos3.6 (June 20,2022) running under Mathematica 13.0.1 for Microsoft Windows (64-bit) (January 28, 2022) on Sun 17 Jul 2022 14:41:21.
indicates the version of Eos, the version of Mathematica and the operating system that you are running.
In[]:=
EosSession["simple-test"];
In[]:=
NewOrigami[]
simple-test: Step 1
Out[]=
In[]:=
HO["A","B"]
simple-test: Step 2
Out[]=
In[]:=
HO["A","D"]
simple-test: Step 3
Out[]=
In[]:=
UnfoldAll[];
Computing mode
Computing mode
Symbolic vs. numeric.
Symbolic vs. numeric.
Exact[] sets the computation to be exact computation during the constraint solving by Eos. Inexact[] switches to approximate numeric computation (floating point computation).
Interaction vs . non - interactive construction
Interaction vs . non - interactive construction
command sets the interactive mode of Eos. When Eos needs more inputs from the origamist (user) to proceed, Eos displays an input-prompt box to receive the origamist's choice or instruction. Command
performs setting of a non-interactive mode. In this mode, the origamist uses only command lines to interact with the system.
Marking of intersection points
Marking of intersection points
By default, Eos does not mark the intersection of a fold-line and existing line segments. Execute MarkOn[] to let Eos mark the intersections.
Graphics layer
Graphics layer
For visualization of origami by Mathematica, Eos has a data structure for origami suited for the graphics processing by Mathematica. Roughly speaking, the data structure of origami has layers of faces. Each layer is separated by a small gap. We can change the value of the gap by setting the global variable $gap to a specific value.
Function GraphicsOrigami has the functionality to make the visualized origami more refined. For example, we can specify the gap by the use of named parameter Gap -> desired-gap. For details, read Chapter 7 of the monograph. By default, the global variable $gap is initially set to 0.001. Function ShowOrigami is a synonym of GraphicsOrigami.
Interactive construction
Interactive construction
In Eos, we write an Orikoto program interactively in a way that a human origamist would construct the origami. Starting from an initial origami, we design the origami and perform the construction, step by step. We have a few options at each step : method of folding, unfolding, and other manipulations of the origami, such as handling the geometric objects on the origami (e.g., marking intersection of lines).
Any small change at some step may induce that we restart the construction from the beginning.The mode of computation using Notebook is particularly suited to the origami construction, since restarting from the beginning will not pose a big problem during the origami construction if you group the input cells properly. We recommend carefully designed use of cell grouping to avoid selecting many individual input cells.
Eos session
Eos session
We can name the origami construction and verification sessions. The name will appear in the output of the subsequent steps of command execution.
Use command EndSession[ ] to finish the session.
Initial origami
Initial origami
By default, the initial origami is a 1×1 square and the left bottom vertex is point (0, 0). The size can be changed as shown in the call of NewOrigami.
We define an initial origami by a square of size 5/2 by 5/2 .
Note that the size of the graphics output of Step 1 does not change on your computer screen, but the locations of each point are certainly changed. See the output of the following command.
You may define the shape of the initial origami to be a rectangular.
You may also change the shape of the initial origami even to any convex polygon
We can also change the colors of the faces. The default colors are blue & green. These colors are different from the colors of faces in the monograph. On the paper, the color of “green” does not appear so nice as on the computer display.
Unfold operators “!”
Unfold operators “!”
In geometric construction, the action of folding is often immediately followed by unfolding. We realize this unfolding by postfix unfold command “!”.