OSDN Git Service

Merge remote-tracking branch 'refs/remotes/origin/master'
[eos/base.git] / src / Objects / General / Vector / doc / Vector.html
1 <ul>
2         <li>extern floatVector* floatVectorAdd(floatVector* v, floatVector* u, floatVector* w);
3         <li>extern floatVector* floatVectorMinus(floatVector* v, floatVector* u, floatVector* w);
4         <br>    v = u - w
5         <li>extern double lfloatVectorLength(floatVector* x);
6
7 </ul>
8 <HR>
9 <A NAME="Information">
10 <H2>Information from source codes</H2>
11 </A>
12 <PRE>
13 </PRE>
14 <HR>
15 <A NAME="include">
16 <H2>Vector.h</H2>
17 </A>
18 <PRE>
19 /*
20 # %M% %Y% %I%
21 # The latest update : %G% at %U%
22 #
23 #%Z% Vector.h ver %I%
24 #%Z% Created by 
25 #%Z%
26 #%Z% Usage : Vector.h 
27 #%Z% Attention
28 #%Z%
29 */
30
31 #ifndef VECTOR_H
32 #define VECTOR_H
33
34 /* struct begin */
35 typedef struct floatVector {
36         unsigned long size;
37         float*        data;
38 } floatVector;
39
40 typedef struct intVector {
41         unsigned long size;
42         int*        data;
43 } intVector;
44
45 typedef struct doubleVector {
46         unsigned long size;
47         double*        data;
48 } doubleVector;
49
50 /* struct end */
51
52 extern floatVector* floatVectorInit(floatVector* v, long size);
53 extern floatVector* floatVectorFree(floatVector* v);
54
55 extern intVector* intVectorInit(intVector* v, long size);
56 extern intVector* intVectorFree(intVector* v);
57
58
59 extern floatVector* floatVectorAdd(floatVector* v, floatVector* u, floatVector* w);
60 extern floatVector* floatVectorMinus(floatVector* v, floatVector* u, floatVector* w);
61
62 extern double floatVectorScalarProduct(floatVector* x, floatVector* y);
63 extern double lfloatVectorLength(floatVector* x);
64
65 extern void lVectorSplineTableMake(floatVector* x, floatVector* y, floatVector* z);
66
67 extern double lVectorSpline(double t, floatVector* x, floatVector* y, floatVector* z);
68
69 extern void lVectorSplineTable2DMake(floatVector* p, floatVector* x, floatVector* y, floatVector* a, floatVector* b);
70 extern void lVectorSpline2D(double t, double* px, double* py, 
71 floatVector* p, floatVector* x, floatVector* y,
72 floatVector* a, floatVector* b);
73
74 extern doubleVector* doubleVectorInit(doubleVector* v, long size);
75 extern doubleVector* doubleVectorFree(doubleVector* v);
76 extern doubleVector* doubleVectorAdd(doubleVector* v, doubleVector* u, doubleVector* w);
77 extern doubleVector* doubleVectorMinus(doubleVector* v, doubleVector* u, doubleVector* w);
78
79 extern double doubleVectorScalarProduct(doubleVector* x, doubleVector* y);
80 extern double ldoubleVectorLength(doubleVector* x);
81
82 extern void ldoubleVectorSplineTableMake(doubleVector* x, doubleVector* y, doubleVector* z);
83
84 extern double ldoubleVectorSpline(double t, doubleVector* x, doubleVector* y, doubleVector* z);
85
86 extern void ldoubleVectorSplineTable2DMake(doubleVector* p, doubleVector* x, doubleVector* y, doubleVector* a, doubleVector* b);
87 extern void ldoubleVectorSpline2D(double t, double* px, double* py, 
88 doubleVector* p, doubleVector* x, doubleVector* y,
89 doubleVector* a, doubleVector* b);
90 /* prototype begin */
91
92 #endif /* VECTOR_H */
93 </PRE>