1 #ifndef __FINDER_PATTERN_H__
2 #define __FINDER_PATTERN_H__
8 * Created by Christian Brunschen on 13/05/2008.
9 * Copyright 2008 ZXing authors All rights reserved.
11 * Licensed under the Apache License, Version 2.0 (the "License");
12 * you may not use this file except in compliance with the License.
13 * You may obtain a copy of the License at
15 * http://www.apache.org/licenses/LICENSE-2.0
17 * Unless required by applicable law or agreed to in writing, software
18 * distributed under the License is distributed on an "AS IS" BASIS,
19 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
20 * See the License for the specific language governing permissions and
21 * limitations under the License.
24 #include "../../ResultPoint.h"
30 using namespace common;
32 class FinderPattern : public ResultPoint {
36 float estimatedModuleSize_;
40 FinderPattern(float posX, float posY, float estimatedModuleSize) :
41 posX_(posX), posY_(posY), estimatedModuleSize_(estimatedModuleSize),
43 float getX() { return posX_; }
44 float getY() { return posY_; }
45 int getCount() { return count_; }
46 float getEstimatedModuleSize() { return estimatedModuleSize_; }
47 void incrementCount() { count_++; }
48 bool aboutEquals(float moduleSize, float i, float j) {
50 abs(i - posY_) <= moduleSize &&
51 abs(j - posX_) <= moduleSize &&
52 (abs(moduleSize - estimatedModuleSize_) <= 1.0f ||
53 abs(moduleSize - estimatedModuleSize_) / estimatedModuleSize_ <= 0.1f);
59 #endif // __FINDER_PATTERN_H__