Mercurial > projects > ldc
view test/dotproduct.d @ 304:3ebc136702dd trunk
[svn r325] Removed dead code.
Added license info to code from GDC (David Friedman permitted us to use the files under the Artistic License).
Added asmLabel check to DtoGoto to avoid jumping into inline asm. Doesn't work currently as LabelDsymbol::asmLabel is never set to true.
author | ChristianK |
---|---|
date | Wed, 25 Jun 2008 23:42:38 +0200 |
parents | d9d5d59873d8 |
children |
line wrap: on
line source
extern(C) int printf(char*, ...); struct vec3 { float x,y,z; float dot(ref vec3 v) { return x*v.x + y*v.y + z*v.z; } void print(char[] n) { printf("%.*s = vec3(%.4f, %.4f, %.4f)\n", n.length, n.ptr, x,y,z); } } int main() { printf("Dot Product test\n"); const f = 0.7071067811865474617; vec3 v = vec3(f,f,0); vec3 w = vec3(f,0,f); v.print("v"); w.print("w"); auto dp = v.dot(w); printf("v ยท w = %f\n", dp); assert(dp > 0.4999 && dp < 0.5001); printf(" SUCCESS\n"); return 0; }