OSDN Git Service

Modified: doc
[eos/optional.git] / doc / Objects / eosPoint.html
1 <HR>
2 <A NAME="Information">
3 <H2>Information from source codes</H2>
4 </A>
5 <PRE>
6 </PRE>
7 <HR>
8 <A NAME="include">
9 <H2>eosPoint.h</H2>
10 </A>
11 <PRE>
12 #ifndef EOS_POINT_H
13 #define EOS_POINT_H
14
15 #include <stdio.h>
16 #include "Matrix3D.h"
17 #include "Vector.h"
18
19 /* constant begin */
20
21
22 /* constant end */
23
24 /* struct begin */
25
26 typedef double eosPointParaTypeReal;
27 typedef struct eosPointCoord {
28         floatVector coord;
29         eosPointParaTypeReal sigma;  
30         floatVector sig;
31 } eosPointCoord;
32
33 typedef struct eosPointList {
34         eosPointCoord p;
35         struct eosPointList* next;
36         struct eosPointList* prev;
37 } eosPointList ;
38
39 typedef struct eosPoint {
40         eosPointList* top;  
41         eosPointList* current;  
42         eosPointList* bottom;  
43 } eosPoint;
44
45 /* struct end */
46
47 #ifdef __cplusplus
48 extern "C" {
49 #endif
50
51 /* prototype begin */
52
53 extern void eosPointFileFormatUsage(FILE* fpt);
54 extern void eosPointRead(FILE* fpt, eosPoint* p, int mode); 
55
56 extern void eosPointWrite(FILE* fpt, eosPoint* p, int mode); 
57
58 extern void eosPointInit(eosPoint* p, eosPointCoord* pc);
59 extern eosPointList* eosPointTop(eosPoint* p);
60 extern eosPointList* eosPointBottom(eosPoint* p);
61 extern eosPointList* eosPointNext(eosPoint* p);
62 extern eosPointList* eosPointPrev(eosPoint* p);
63 extern eosPointList* eosPointAppend(eosPoint* p, eosPointCoord* pc, int mode);
64 extern void eosPointCoordInit(eosPointCoord* pc, int mode);
65 extern void eosPointCoordSet(eosPointCoord* p, eosPointParaTypeReal x, eosPointParaTypeReal y, eosPointParaTypeReal z);
66 extern void eosPointCoordSigSet(eosPointCoord* p, eosPointParaTypeReal sigx, eosPointParaTypeReal sigy, eosPointParaTypeReal sigz);
67
68 extern void eosPointRotate(eosPoint* p, Matrix3D mat);
69 extern void eosPointRotate2(eosPoint* out, eosPoint* in, Matrix3D mat);
70
71 extern void eosPointProject(eosPoint* p, int index); // index 0: x-projection, 1: y-projection, 2: z-projection
72 extern void eosPointProject2(eosPoint* out, eosPoint* in, int index); 
73
74 extern void eosPointCopy(eosPoint* out, eosPoint* in);
75
76 /* prototype end */
77
78 #ifdef __cplusplus
79 };
80 #endif
81
82
83 #endif  /* EOS_POINT_H */ 
84 </PRE>