X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f X-Recipient: geda-user AT delorie DOT com X-TCPREMOTEIP: 207.224.51.38 X-Authenticated-UID: jpd AT noqsi DOT com Content-Type: text/plain; charset=windows-1252 Mime-Version: 1.0 (Mac OS X Mail 7.3 \(1878.6\)) Subject: Re: [geda-user] Apollon From: John Doty In-Reply-To: <201509140138.t8E1cqY1011780@envy.delorie.com> Date: Sun, 13 Sep 2015 20:03:01 -0600 Message-Id: References: <20150913140631 DOT 1da1b78d AT jive DOT levalinux DOT org> <201509131529 DOT t8DFTUVS022118 AT envy DOT delorie DOT com> <201509131824 DOT t8DIOCBc028428 AT envy DOT delorie DOT com> <201509132031 DOT t8DKVH0P000824 AT envy DOT delorie DOT com> <201509132148 DOT t8DLmxI6003481 AT envy DOT delorie DOT com> <201509132300 DOT t8DN0sE6006134 AT envy DOT delorie DOT com> <7EF3E562-BC7F-4853-B90A-29726FDFEBF6 AT noqsi DOT com> <201509132319 DOT t8DNJBjC006829 AT envy DOT delorie DOT com> <40057B48-2FD4-4A37-A01E-9344F6C33ADF AT noqsi DOT com> <201509140138 DOT t8E1cqY1011780 AT envy DOT delorie DOT com> To: geda-user AT delorie DOT com X-Mailer: Apple Mail (2.1878.6) Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by delorie.com id t8E23Bm3007348 Reply-To: geda-user AT delorie DOT com Errors-To: nobody AT delorie DOT com X-Mailing-List: geda-user AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk On Sep 13, 2015, at 7:38 PM, DJ Delorie wrote: > > So... internally *every* value is a fraction? Yep. > I imagine integer > overflow might be a non-trivial problem to solve. Not one you need to worry about in a language that supports rationals. I use rationals in Mathematica all the time: floating point is poison to complicated algebra. The techniques are well know and efficient, although not as efficient as floating point hardware. > > But if the whole point is to defer imprecise operations, what is the > advantage of this over just storing the angles as degrees and doing > the math on the fly? The problem is that you’ll accumulate error when you have both rotations and translations. > Just speed? /me wonders what the speed > difference would be, if you include all the division ops you've > created a need for, Huh? Division of rationals is easy. > plus algorithms to find pythagorean triples as > needed, Have a table. Or use Euclid’s formula (https://en.wikipedia.org/wiki/Pythagorean_triple#Generating_a_triple). > plus overflow protection of a sort, etc. Taken care of automatically if you choose a suitable language. > > I'm not even sure we've covered all the advantages of storing > rotations as a relationship rather than a transformation... like, if > we "down symbol" we'd want to edit the unrotated symbol. > John Doty Noqsi Aerospace, Ltd. http://www.noqsi.com/ jpd AT noqsi DOT com