/usr/include/ossim/base/ossimAffineTransform.h is in libossim-dev 1.8.16-4ubuntu1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 | //*******************************************************************
//
// License: See top level LICENSE.txt file.
//
// Author: Garrett Potts (gpotts@imagelinks.com)
//
//*************************************************************************
// $Id: ossimAffineTransform.h 15766 2009-10-20 12:37:09Z gpotts $
#ifndef ossimAffineTransform_HEADER
#define ossimAffineTransform_HEADER
#include <ossim/base/ossim2dTo2dTransform.h>
#include <ossim/matrix/newmat.h>
class OSSIMDLLEXPORT ossimAffineTransform : public ossim2dTo2dTransform
{
public:
ossimAffineTransform();
ossimAffineTransform(const ossimAffineTransform& src);
/**
* @brief assignment operator=
* @param rhs The data to assign from.
* @param A reference to this object.
*/
virtual const ossimAffineTransform& operator=(
const ossimAffineTransform& rhs);
virtual ossimObject* dup()const
{
return new ossimAffineTransform(*this);
}
virtual void forward(const ossimDpt& input,
ossimDpt& output)const;
virtual void inverse(const ossimDpt& input,
ossimDpt& output)const;
/*!
* Used by the inverse iterator. This will give it a good initial value
* that is within the input transforms
*/
virtual ossimDpt getOrigin()const
{
return ossimDpt(0,0);
}
bool saveState(ossimKeywordlist& kwl,
const char* prefix = 0)const;
bool loadState(const ossimKeywordlist& kwl,
const char* prefix = 0);
void setMatrix(double rotation,
const ossimDpt& scale,
const ossimDpt& translation);
void setScale(const ossimDpt& scale)
{
theScale = scale;
computeMatrix();
}
void setRotation(double rotation)
{
theRotation = rotation;
computeMatrix();
}
void setTranslation(const ossimDpt& translation)
{
theTranslation = translation;
computeMatrix();
}
ossimDpt getScale()const
{
return theScale;
}
ossimDpt getTranslation()const
{
return theTranslation;
}
double getRotation()const
{
return theRotation;
}
void setIdentity();
void setAffineEnabledFlag(bool flag)
{
theAffineEnabledFlag = flag;
}
virtual std::ostream& print(std::ostream& out) const;
protected:
void computeMatrix();
ossimDpt theScale;
double theRotation;
ossimDpt theTranslation;
bool theAffineEnabledFlag;
NEWMAT::Matrix theForwardXform;
NEWMAT::Matrix theInverseXform;
TYPE_DATA
};
#endif
|