Thread overview
how to implement vector structs with different number of components without much code duplication?
Mar 12, 2010
Trass3r
Re: how to implement vector structs with different number of components
Mar 12, 2010
bearophile
Apr 22, 2010
Trass3r
Mar 12, 2010
Robert Clipsham
March 12, 2010
Is there maybe a way to implement commonly needed vector classes Vec2, Vec3, Vec4 without having to implement the same basic code over and over again?
March 12, 2010
Trass3r:
> Is there maybe a way to implement commonly needed vector classes Vec2, Vec3, Vec4 without having to implement the same basic code over and over again?

I have implemented a generic nD vector struct for D1. When I have translated it to D2 I can show it and Andrei may add it to Phobos, because everyone and their uncle need vectors.

There are several ways to implement a generic nD vector, the size is a template argument, and templates or CTFT + string mixin allow you to perform the operations with no loops in the final code.

Bye,
bearophile
March 12, 2010
On 12/03/10 23:20, Trass3r wrote:
> Is there maybe a way to implement commonly needed vector classes Vec2,
> Vec3, Vec4 without having to implement the same basic code over and over
> again?

The following are a few libraries that have already implemented vector classes/structs for Vec2 .. Vec4, they might give you some ideas should you decide to roll your own :)

http://team0xf.com:8080/maths/file/tip/Vec.d
http://dsource.org/projects/scrapple/browser/trunk/tools/tools/vector.d
April 22, 2010
Am 13.03.2010, 01:29 Uhr, schrieb bearophile <bearophileHUGS@lycos.com>:

> I have implemented a generic nD vector struct for D1. When I have translated it to D2 I can show it and Andrei may add it to Phobos, because everyone and their uncle need vectors.
>

Have you done so yet?