<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.psl.dev/index.php?action=history&amp;feed=atom&amp;title=MathForTruants</id>
	<title>MathForTruants - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.psl.dev/index.php?action=history&amp;feed=atom&amp;title=MathForTruants"/>
	<link rel="alternate" type="text/html" href="https://wiki.psl.dev/index.php?title=MathForTruants&amp;action=history"/>
	<updated>2026-07-24T19:58:59Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.45.3</generator>
	<entry>
		<id>https://wiki.psl.dev/index.php?title=MathForTruants&amp;diff=5867&amp;oldid=prev</id>
		<title>192.168.35.150: /* Keep in Mind */</title>
		<link rel="alternate" type="text/html" href="https://wiki.psl.dev/index.php?title=MathForTruants&amp;diff=5867&amp;oldid=prev"/>
		<updated>2010-11-05T10:38:14Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Keep in Mind&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 10:38, 5 November 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l60&quot;&gt;Line 60:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 60:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Sine / Cosine==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Sine / Cosine==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=====Keep in Mind=====&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=====Keep in Mind=====&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;For repeating &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;patterns&lt;/del&gt;:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;For repeating &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;animation&lt;/ins&gt;:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== (sin((frame+timeoffset)*frequency)*amplitude)+offset ===&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== (sin((frame+timeoffset)*frequency)*amplitude)+offset ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;For circular motion:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;For circular motion:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== X = sin(time) and Y = cos(time) ===&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== X = sin(time) and Y = cos(time) ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>192.168.35.150</name></author>
	</entry>
	<entry>
		<id>https://wiki.psl.dev/index.php?title=MathForTruants&amp;diff=5866&amp;oldid=prev</id>
		<title>192.168.35.150 at 17:18, 4 November 2010</title>
		<link rel="alternate" type="text/html" href="https://wiki.psl.dev/index.php?title=MathForTruants&amp;diff=5866&amp;oldid=prev"/>
		<updated>2010-11-04T17:18:28Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[Category:Animation]]&lt;br /&gt;
==Math for truants==&lt;br /&gt;
&lt;br /&gt;
===Purpose===&lt;br /&gt;
This site is meant as a cookbook for people who skipped math classes in favour of Rock&amp;#039;n&amp;#039;Roll but might find some formulas handy for graphical or animation work.&lt;br /&gt;
&lt;br /&gt;
This is not meant to be super accurate or political correct, but as a cheat sheet which is easy to remember.&lt;br /&gt;
&lt;br /&gt;
==Modulo==&lt;br /&gt;
Modulo or &amp;quot;mod&amp;quot; in most scripting languages &amp;quot;%&amp;quot; returns the remaining number of a division.&lt;br /&gt;
For example:&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;25 / 25 = 1 -&amp;gt; 0 remains&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
So:&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;25 % 25 = 0&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
... while:&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;26 / 25 = 1.xx -&amp;gt; 1 remains (25*1 + 1 = 26)&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
So:&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;26 % 25 = 1&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
... while:&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;27 / 25 = 1.xx -&amp;gt; 2 remains (25*1 + 2 = 27)&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
So:&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;27 % 25 = 2&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
===Purpose===&lt;br /&gt;
====Loops====&lt;br /&gt;
Let&amp;#039;s say you have 5 images and want to loop through them.&lt;br /&gt;
frame defines the current frame: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 ...&lt;br /&gt;
imageframe is the frame we will use as frame for the current looped image.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;imageframe = frame % 5&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Results:&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;frame = 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 ...&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
... while:&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;imageframe = 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2 ...&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Now we can use imageframe as frame for the image to have a infinite loop of 5 frames.&lt;br /&gt;
If you need to offset the result just add or subtract your offset.&lt;br /&gt;
&lt;br /&gt;
=====Keep in Mind=====&lt;br /&gt;
For loops:&lt;br /&gt;
&lt;br /&gt;
=== imageframe = (frame % totalframes) + offset ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Sine / Cosine==&lt;br /&gt;
=====Keep in Mind=====&lt;br /&gt;
For repeating patterns:&lt;br /&gt;
=== (sin((frame+timeoffset)*frequency)*amplitude)+offset ===&lt;br /&gt;
&lt;br /&gt;
For circular motion:&lt;br /&gt;
=== X = sin(time) and Y = cos(time) ===&lt;/div&gt;</summary>
		<author><name>192.168.35.150</name></author>
	</entry>
</feed>