#include <hugin_shared.h>
#include <cmath>
#include <math.h>
#include <iostream>
#include <vigra/diff2d.hxx>
Include dependency graph for hugin_math.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.
Namespaces | |
| namespace | hugin_utils |
Classes | |
| struct | hugin_utils::TDiff2D< T > |
Defines | |
| #define | M_PI 3.14159265358979323846 |
| #define | PI 3.14159265358979323846 |
| #define | DEG_TO_RAD(x) ( (x) * 2.0 * PI / 360.0 ) |
| #define | RAD_TO_DEG(x) ( (x) * 360.0 / ( 2.0 * PI ) ) |
Typedefs | |
| typedef TDiff2D< double > | FDiff2D |
Functions | |
| double | log2 (double x) |
| double | round (double x) |
| float | roundf (float x) |
| int | ceili (double x) |
| int | floori (double x) |
| template<class T> | |
| int | roundi (T x) |
| int | isnan (double x) |
| template<class T> | |
| T | simpleClipPoint (const T &point, const T &min, const T &max) |
| clip a point to fit int [min, max] does not do a mathematical clipping, just sets p.x and p.y to the borders if they are outside. | |
| template<class T> | |
| T | sqr (T t) |
| template<class T> | |
| double | norm (T t) |
| template<class InputIterator1, class InputIterator2> | |
| double | euclid_dist (InputIterator1 first1, InputIterator1 last1, InputIterator2 first2) |
| calculate squared Euclidean distance between two vectors. | |
| template<class InputIterator1, class InputIterator2, class T> | |
| T | sqr_dist (InputIterator1 first1, InputIterator1 last1, InputIterator2 first2, T res) |
| calculate squared Euclidean distance between two vectors. | |
| template<class POINT> | |
| vigra::Rect2D | calcCircleROIFromPoints (const POINT &p1, const POINT &p2) |
| calculate the bounding box of a circle that goes through both points. | |
| template<class T> | |
| std::ostream & | operator<< (std::ostream &o, const hugin_utils::TDiff2D< T > &d) |
| hugin_utils::FDiff2D | operator/ (const hugin_utils::FDiff2D &lhs, double val) |
| vigra::Diff2D | operator * (const vigra::Diff2D &d, double scale) |
| vigra::Rect2D | operator * (const vigra::Rect2D &r, double scale) |
| uses floor for left and top and ceil for right and bottom -> extend image when rounding.. | |
This is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
You should have received a copy of the GNU General Public License along with this software; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Definition in file hugin_math.h.
|
|
|
Definition at line 37 of file hugin_math.h. |
|
|
Definition at line 41 of file hugin_math.h. |
|
|
Definition at line 45 of file hugin_math.h. Referenced by PreviewPanel::mousePressLMBEvent(), PreviewPanel::mousePressRMBEvent(), DragTool::ParamStore::Move(), vigra_ext::PointFineTuneRotSearch(), and HuginBase::RotatePanorama::rotatePano(). |
|
|
||||||||||||||||
|
calculate the bounding box of a circle that goes through both points. the center of the circle is halfway between the two points Definition at line 250 of file hugin_math.h. References hugin_utils::roundi(), hugin_utils::TDiff2D< T >::x, and hugin_utils::TDiff2D< T >::y. |
|
|
Definition at line 84 of file hugin_math.h. Referenced by HuginBase::estimateImageAlpha(). |
|
||||||||||||||||||||
|
calculate squared Euclidean distance between two vectors.
Definition at line 216 of file hugin_math.h. |
|
|
Definition at line 89 of file hugin_math.h. Referenced by HuginBase::CalculateCPStatisticsRadial::calcCtrlPntsRadiStats(), and HuginBase::estimateImageAlpha(). |
|
|
Definition at line 104 of file hugin_math.h. Referenced by vigra_ext::subpixelMaxima(). |
|
|
Definition at line 51 of file hugin_math.h. References vigra_ext::log(). Referenced by HuginBase::CalculateOptimalROI::autocrop(), TextureManager::CheckUpdate(), and TextureManager::GetMaxTextureSizePower(). |
|
||||||||||
|
||||||||||||
|
uses floor for left and top and ceil for right and bottom -> extend image when rounding..
Definition at line 300 of file hugin_math.h. |
|
||||||||||||
|
Definition at line 283 of file hugin_math.h. |
|
||||||||||||
|
Definition at line 277 of file hugin_math.h. References hugin_utils::FDiff2D, hugin_utils::TDiff2D< T >::x, and hugin_utils::TDiff2D< T >::y. |
|
||||||||||||||||
|
Definition at line 272 of file hugin_math.h. References hugin_utils::TDiff2D< T >::x, and hugin_utils::TDiff2D< T >::y. |
|
|
Definition at line 72 of file hugin_math.h. Referenced by HessianDetector::_slidingWDetect(), Descriptor::createDescriptors(), APImage::open(), and PreviewPanel::updatePreview(). |
|
|
Definition at line 79 of file hugin_math.h. |
|
||||||||||
|
||||||||||||||||||||
|
clip a point to fit int [min, max] does not do a mathematical clipping, just sets p.x and p.y to the borders if they are outside.
Definition at line 191 of file hugin_math.h. References hugin_utils::TDiff2D< T >::x, and hugin_utils::TDiff2D< T >::y. Referenced by vigra_ext::PointFineTune(), and PointFineTune2(). |
|
||||||||||
|
||||||||||||||||||||||||
|
calculate squared Euclidean distance between two vectors.
Definition at line 233 of file hugin_math.h. |
1.3.9.1