Isis 3 Programmer Reference
Enlarge.h
1 #ifndef _Enlarge_h_
2 #define _Enlarge_h_
3 
8 /* SPDX-License-Identifier: CC0-1.0 */
9 
10 #include "Transform.h"
11 
12 namespace Isis {
13  class Cube;
14  class PvlGroup;
34  class Enlarge : public Transform {
35  public:
36  // Constructor
37  Enlarge(Cube *pInCube, const double sampleScale, const double lineScale);
38 
39  // Set the sub area of input image to enlarge
40  void SetInputArea(double pdStartSample, double pdEndSample,
41  double pdStartLine, double pdEndLine);
42 
44  ~Enlarge() {};
45 
46  // Implementations for parent's pure virtual members
47  // Convert the requested output samp/line to an input samp/line
48  bool Xform(double &inSample, double &inLine,
49  const double outSample, const double outLine);
50 
51  // Create label for the enlarged output image
52  PvlGroup UpdateOutputLabel(Cube *pOutCube);
53 
58  int OutputSamples() const {
59  return miOutputSamples;
60  }
61 
66  int OutputLines() const {
67  return miOutputLines;
68  }
69 
70  private:
74  double mdSampleScale;
75  double mdLineScale;
76  double mdStartSample;
77  double mdEndSample;
78  double mdStartLine;
79  double mdEndLine;
80  };
81 };
82 
83 #endif
84 
Isis::Enlarge::mInCube
Cube * mInCube
Input image.
Definition: Enlarge.h:71
Isis::Enlarge::Enlarge
Enlarge(Cube *pInCube, const double sampleScale, const double lineScale)
Constructs an Enlarge object.
Definition: Enlarge.cpp:27
Isis::Enlarge::mdSampleScale
double mdSampleScale
Sample scale.
Definition: Enlarge.h:74
Isis::Enlarge::miOutputSamples
int miOutputSamples
Number of samples for output.
Definition: Enlarge.h:72
Isis::Enlarge::Xform
bool Xform(double &inSample, double &inLine, const double outSample, const double outLine)
Implementations for parent's pure virtual members Convert the requested output samp/line to an input ...
Definition: Enlarge.cpp:57
Isis::Enlarge::mdStartSample
double mdStartSample
Input start sample.
Definition: Enlarge.h:76
Isis::Enlarge
Enlarge the pixel dimensions of an image.
Definition: Enlarge.h:34
Isis::Enlarge::OutputLines
int OutputLines() const
Return the output number of lines.
Definition: Enlarge.h:66
Isis::Enlarge::mdStartLine
double mdStartLine
Input start line.
Definition: Enlarge.h:78
Isis::Enlarge::OutputSamples
int OutputSamples() const
Return the output number of samples.
Definition: Enlarge.h:58
Isis::Transform
Pixel transformation.
Definition: Transform.h:72
Isis::Enlarge::miOutputLines
int miOutputLines
Number of lines for output.
Definition: Enlarge.h:73
Isis::PvlGroup
Contains multiple PvlContainers.
Definition: PvlGroup.h:41
Isis::Enlarge::UpdateOutputLabel
PvlGroup UpdateOutputLabel(Cube *pOutCube)
Update the Mapping, Instrument, and AlphaCube groups in the output cube label.
Definition: Enlarge.cpp:114
Isis::Cube
IO Handler for Isis Cubes.
Definition: Cube.h:167
Isis::Enlarge::SetInputArea
void SetInputArea(double pdStartSample, double pdEndSample, double pdStartLine, double pdEndLine)
Sets the sub area dimensions of the input image.
Definition: Enlarge.cpp:76
Isis::Enlarge::mdLineScale
double mdLineScale
Line scale.
Definition: Enlarge.h:75
Isis::Enlarge::mdEndSample
double mdEndSample
Input end sample.
Definition: Enlarge.h:77
Isis
This is free and unencumbered software released into the public domain.
Definition: Apollo.h:16
Isis::Enlarge::mdEndLine
double mdEndLine
Input end line.
Definition: Enlarge.h:79
Isis::Enlarge::~Enlarge
~Enlarge()
Destructoys the Enlarge object.
Definition: Enlarge.h:44