tesseract
v4.0.0-17-g361f3264
Open Source OCR Engine
vecfuncs.h
1
/* -*-C-*-
2
********************************************************************************
3
*
4
* File: vecfuncs.h (Formerly vecfuncs.h)
5
* Description: Vector calculations
6
* Author: Mark Seaman, OCR Technology
7
* Created: Wed Dec 20 09:37:18 1989
8
* Modified: Tue Jul 9 17:44:37 1991 (Mark Seaman) marks@hpgrlt
9
* Language: C
10
* Package: N/A
11
* Status: Experimental (Do Not Distribute)
12
*
13
* (c) Copyright 1989, Hewlett-Packard Company.
14
** Licensed under the Apache License, Version 2.0 (the "License");
15
** you may not use this file except in compliance with the License.
16
** You may obtain a copy of the License at
17
** http://www.apache.org/licenses/LICENSE-2.0
18
** Unless required by applicable law or agreed to in writing, software
19
** distributed under the License is distributed on an "AS IS" BASIS,
20
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
21
** See the License for the specific language governing permissions and
22
** limitations under the License.
23
*
24
*********************************************************************************/
25
#ifndef VECFUNCS_H
26
#define VECFUNCS_H
27
28
#include <cmath>
29
30
struct
EDGEPT
;
31
32
/*----------------------------------------------------------------------
33
M a c r o s
34
----------------------------------------------------------------------*/
35
/**********************************************************************
36
* point_diff
37
*
38
* Return the difference from point (p1) to point (p2). Put the value
39
* into point (p).
40
**********************************************************************/
41
42
#define point_diff(p,p1,p2) \
43
((p).x = (p1).x - (p2).x, \
44
(p).y = (p1).y - (p2).y)
45
46
/**********************************************************************
47
* CROSS
48
*
49
* cross product
50
**********************************************************************/
51
52
#define CROSS(a,b) \
53
((a).x * (b).y - (a).y * (b).x)
54
55
/**********************************************************************
56
* SCALAR
57
*
58
* scalar vector product
59
**********************************************************************/
60
61
#define SCALAR(a,b) \
62
((a).x * (b).x + (a).y * (b).y)
63
64
/**********************************************************************
65
* LENGTH
66
*
67
* length of vector
68
**********************************************************************/
69
70
#define LENGTH(a) \
71
((a).x * (a).x + (a).y * (a).y)
72
73
/*----------------------------------------------------------------------
74
F u n c t i o n s
75
----------------------------------------------------------------------*/
76
int
direction(
EDGEPT
*point);
77
78
#endif
EDGEPT
Definition:
blobs.h:83
src
tesseract
src
ccstruct
vecfuncs.h
Generated on Wed Nov 7 2018 13:45:43 for tesseract by
1.8.13