* Re: Rotations in 3D , Euler angles & Quaternions
2019-11-11 22:52 Rotations in 3D , Euler angles & Quaternions Alain De Vos
@ 2019-11-12 9:50 ` AdaMagica
2019-11-12 10:52 ` Lucretia
` (4 subsequent siblings)
5 siblings, 0 replies; 11+ messages in thread
From: AdaMagica @ 2019-11-12 9:50 UTC (permalink / raw)
In my physical dimension package, there are matrix rotations and quaternions:
http://archive.adaic.com/tools/CKWG/Dimension/SI.html
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: Rotations in 3D , Euler angles & Quaternions
2019-11-11 22:52 Rotations in 3D , Euler angles & Quaternions Alain De Vos
2019-11-12 9:50 ` AdaMagica
@ 2019-11-12 10:52 ` Lucretia
2019-11-12 11:33 ` Alain De Vos
` (3 subsequent siblings)
5 siblings, 0 replies; 11+ messages in thread
From: Lucretia @ 2019-11-12 10:52 UTC (permalink / raw)
On Monday, 11 November 2019 22:52:27 UTC, Alain De Vos wrote:
> Are there Ada packages,types available you can use to juggle, compose rotations,manipulate euler angels, quaternions,convert ?
> Or does a user must construct these objects using complex numbers,trigonometric functions, matrix multiplication ?
There are vectors and matrices in the library: http://www.ada-auth.org/standards/12rm/html/RM-G-3.html I've no idea how well these optimise or perform for games / 3d rendering.
I have some old game optimised vector3/4 / matrix3/4 types I wrote for the NeHe ports I did. I don't even know if you need to optimise them now for the hw we have.
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: Rotations in 3D , Euler angles & Quaternions
2019-11-11 22:52 Rotations in 3D , Euler angles & Quaternions Alain De Vos
2019-11-12 9:50 ` AdaMagica
2019-11-12 10:52 ` Lucretia
@ 2019-11-12 11:33 ` Alain De Vos
2019-11-12 17:06 ` Stephen Leake
` (2 subsequent siblings)
5 siblings, 0 replies; 11+ messages in thread
From: Alain De Vos @ 2019-11-12 11:33 UTC (permalink / raw)
On Monday, November 11, 2019 at 11:52:27 PM UTC+1, Alain De Vos wrote:
> Are there Ada packages,types available you can use to juggle, compose rotations,manipulate euler angels, quaternions,convert ?
> Or does a user must construct these objects using complex numbers,trigonometric functions, matrix multiplication ?
PS : I also found a quaternion in openglada
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: Rotations in 3D , Euler angles & Quaternions
2019-11-11 22:52 Rotations in 3D , Euler angles & Quaternions Alain De Vos
` (2 preceding siblings ...)
2019-11-12 11:33 ` Alain De Vos
@ 2019-11-12 17:06 ` Stephen Leake
2019-11-12 19:50 ` Shark8
2021-02-15 20:04 ` Maurice Calvert
2021-02-16 11:32 ` Rod Kay
2021-02-17 8:41 ` onox
5 siblings, 2 replies; 11+ messages in thread
From: Stephen Leake @ 2019-11-12 17:06 UTC (permalink / raw)
On Monday, November 11, 2019 at 2:52:27 PM UTC-8, Alain De Vos wrote:
> Are there Ada packages,types available you can use to juggle, compose rotations,manipulate euler angels, quaternions,convert ?
> Or does a user must construct these objects using complex numbers,trigonometric functions, matrix multiplication ?
I wrote just such a set of packages when I was doing robotics as NASA. It's not on the web anywhere, but I can make it available; no warranties!
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: Rotations in 3D , Euler angles & Quaternions
2019-11-12 17:06 ` Stephen Leake
@ 2019-11-12 19:50 ` Shark8
2019-11-12 23:54 ` Alain De Vos
2021-02-15 20:04 ` Maurice Calvert
1 sibling, 1 reply; 11+ messages in thread
From: Shark8 @ 2019-11-12 19:50 UTC (permalink / raw)
On Tuesday, November 12, 2019 at 10:06:50 AM UTC-7, Stephen Leake wrote:
>
> I wrote just such a set of packages when I was doing robotics as NASA. It's not on the web anywhere, but I can make it available; no warranties!
Nice!
Speaking of NASA-ish things, I'm working on a SPARK-verified FITS library for my current organization (involved in astronomy) — though, I don't know that this would have much overlap with robotics unless perhaps tying in the scientific-instrumentation.
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: Rotations in 3D , Euler angles & Quaternions
2019-11-12 19:50 ` Shark8
@ 2019-11-12 23:54 ` Alain De Vos
0 siblings, 0 replies; 11+ messages in thread
From: Alain De Vos @ 2019-11-12 23:54 UTC (permalink / raw)
On Tuesday, November 12, 2019 at 8:50:03 PM UTC+1, Shark8 wrote:
> On Tuesday, November 12, 2019 at 10:06:50 AM UTC-7, Stephen Leake wrote:
> >
> > I wrote just such a set of packages when I was doing robotics as NASA. It's not on the web anywhere, but I can make it available; no warranties!
>
> Nice!
> Speaking of NASA-ish things, I'm working on a SPARK-verified FITS library for my current organization (involved in astronomy) — though, I don't know that this would have much overlap with robotics unless perhaps tying in the scientific-instrumentation.
There is alot of stuff which rotates.
Rockets, robot arms, planets, ...
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: Rotations in 3D , Euler angles & Quaternions
2019-11-12 17:06 ` Stephen Leake
2019-11-12 19:50 ` Shark8
@ 2021-02-15 20:04 ` Maurice Calvert
2021-02-16 18:37 ` Stephen Leake
1 sibling, 1 reply; 11+ messages in thread
From: Maurice Calvert @ 2021-02-15 20:04 UTC (permalink / raw)
On Tuesday, 12 November 2019 at 18:06:50 UTC+1, Stephen Leake wrote:
> On Monday, November 11, 2019 at 2:52:27 PM UTC-8, Alain De Vos wrote:
> > Are there Ada packages,types available you can use to juggle, compose rotations,manipulate euler angels, quaternions,convert ?
> > Or does a user must construct these objects using complex numbers,trigonometric functions, matrix multiplication ?
> I wrote just such a set of packages when I was doing robotics as NASA. It's not on the web anywhere, but I can make it available; no warranties!
Is there any possibility you could publish the sources please?
Thanks >;-)
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: Rotations in 3D , Euler angles & Quaternions
2021-02-15 20:04 ` Maurice Calvert
@ 2021-02-16 18:37 ` Stephen Leake
0 siblings, 0 replies; 11+ messages in thread
From: Stephen Leake @ 2021-02-16 18:37 UTC (permalink / raw)
Maurice Calvert <maurice.calvert@gmail.com> writes:
> On Tuesday, 12 November 2019 at 18:06:50 UTC+1, Stephen Leake wrote:
>> On Monday, November 11, 2019 at 2:52:27 PM UTC-8, Alain De Vos wrote:
>> > Are there Ada packages,types available you can use to juggle,
>> > compose rotations,manipulate euler angels, quaternions,convert ?
>> > Or does a user must construct these objects using complex
>> > numbers,trigonometric functions, matrix multiplication ?
>> I wrote just such a set of packages when I was doing robotics as
>> NASA. It's not on the web anywhere, but I can make it available; no
>> warranties!
>
> Is there any possibility you could publish the sources please?
https://stephe-leake.org/ada/sal-2016.tar.gz
--
-- Stephe
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: Rotations in 3D , Euler angles & Quaternions
2019-11-11 22:52 Rotations in 3D , Euler angles & Quaternions Alain De Vos
` (3 preceding siblings ...)
2019-11-12 17:06 ` Stephen Leake
@ 2021-02-16 11:32 ` Rod Kay
2021-02-17 8:41 ` onox
5 siblings, 0 replies; 11+ messages in thread
From: Rod Kay @ 2021-02-16 11:32 UTC (permalink / raw)
On Tuesday, 12 November 2019 at 09:52:27 UTC+11, devosa...@gmail.com wrote:
> Are there Ada packages,types available you can use to juggle, compose rotations,manipulate euler angels, quaternions,convert ?
> Or does a user must construct these objects using complex numbers,trigonometric functions, matrix multiplication ?
You might take a look at the 'any_math.any_Algebra.any_linear.any_d3' package in the Lace components.
https://github.com/charlie5/lace
The file is '.../lace/1-base/math/source/generic/pure/algebra/any_math-any_algebra-any_linear-any_d3.ads'.
The package is a generic. Instantiations for Short_Float, Float and Long_Float are in '.../lace/1-base/math/source/precision'.
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: Rotations in 3D , Euler angles & Quaternions
2019-11-11 22:52 Rotations in 3D , Euler angles & Quaternions Alain De Vos
` (4 preceding siblings ...)
2021-02-16 11:32 ` Rod Kay
@ 2021-02-17 8:41 ` onox
5 siblings, 0 replies; 11+ messages in thread
From: onox @ 2021-02-17 8:41 UTC (permalink / raw)
On Monday, November 11, 2019 at 11:52:27 PM UTC+1, devosa...@gmail.com wrote:
> Are there Ada packages,types available you can use to juggle, compose rotations,manipulate euler angels, quaternions,convert ?
> Or does a user must construct these objects using complex numbers,trigonometric functions, matrix multiplication ?
If you have an x86-64 CPU with SSE3 and AVX instructions, you might want to check my 3D engine, Orka, which provides packages for vectors (4), matrices (4x4), and quaternions. See https://github.com/onox/orka/blob/master/src/orka/interface/orka-transforms-simd_quaternions.ads. Use Orka.Transforms.Singles.Quaternions for 32-bit floats with SSE and Orka.Transforms.Doubles.Quaternions for 64-bit with AVX.
^ permalink raw reply [flat|nested] 11+ messages in thread