KiCad PCB EDA Suite
BITMAP_BASE Class Reference

This class handle bitmap images in KiCad. More...

#include <bitmap_base.h>

Public Member Functions

 BITMAP_BASE (const wxPoint &pos=wxPoint(0, 0))
 
 BITMAP_BASE (const BITMAP_BASE &aSchBitmap)
 
 ~BITMAP_BASE ()
 
double GetPixelScaleFactor () const
 
void SetPixelScaleFactor (double aSF)
 
wxImage * GetImageData ()
 
const wxImage * GetImageData () const
 
void SetImage (wxImage *aImage)
 
double GetScale () const
 
void SetScale (double aScale)
 
void RebuildBitmap ()
 
void SetBitmap (wxBitmap *aBitMap)
 
void ImportData (BITMAP_BASE *aItem)
 Function ImportData Copy aItem image to me and update m_bitmap. More...
 
double GetScalingFactor () const
 Function GetScalingFactor. More...
 
wxSize GetSize () const
 Function GetSize. More...
 
wxSize GetSizePixels () const
 Function GetSizePixels. More...
 
int GetPPI () const
 
const EDA_RECT GetBoundingBox () const
 Function GetBoundingBox returns the orthogonal, bounding box of this object for display purposes. More...
 
void DrawBitmap (wxDC *aDC, const wxPoint &aPos)
 
bool ReadImageFile (const wxString &aFullFilename)
 Reads and stores in memory an image file. More...
 
bool ReadImageFile (wxInputStream &aInStream)
 Reads and stores in memory an image file. More...
 
bool SaveData (FILE *aFile) const
 writes the bitmap data to aFile The format is png, in Hexadecimal form: If the hexadecimal data is converted to binary it gives exactly a .png image data More...
 
void SaveData (wxArrayString &aPngStrings) const
 writes the bitmap data to an array string The format is png, in Hexadecimal form: If the hexadecimal data is converted to binary it gives exactly a .png image data More...
 
bool LoadData (LINE_READER &aLine, wxString &aErrorMsg)
 Load an image data saved by SaveData (png, in Hexadecimal form) More...
 
void Mirror (bool aVertically)
 Function Mirror Mirror image vertically (i.e. More...
 
void Rotate (bool aRotateCCW)
 Function Rotate Rotate image CW or CCW. More...
 
void PlotImage (PLOTTER *aPlotter, const wxPoint &aPos, KIGFX::COLOR4D aDefaultColor, int aDefaultPensize)
 Function PlotImage Plot bitmap on plotter. More...
 

Private Attributes

double m_scale
 
wxImage * m_image
 
wxBitmap * m_bitmap
 
double m_pixelScaleFactor
 
int m_ppi
 

Detailed Description

This class handle bitmap images in KiCad.

It is not intended to be used alone, but inside another class, so all methods are protected ( or private ) It is used in SCH_BITMAP class and WS_DRAW_ITEM_BITMAP (and other in future)

Remember not all plotters are able to plot a bitmap Mainly GERBER plotters cannot.

Definition at line 51 of file bitmap_base.h.

Constructor & Destructor Documentation

◆ BITMAP_BASE() [1/2]

BITMAP_BASE::BITMAP_BASE ( const wxPoint pos = wxPoint( 0, 0 ))

Definition at line 45 of file bitmap_base.cpp.

46 {
47  m_scale = 1.0; // 1.0 = original bitmap size
48  m_bitmap = NULL;
49  m_image = NULL;
50  m_ppi = 300; // the bitmap definition. the default is 300PPI
51  m_pixelScaleFactor = 254000.0 / m_ppi; // a value OK for bitmaps using 300 PPI
52  // for Eeschema which uses currently 254000PPI
53 }
double m_scale
Definition: bitmap_base.h:54
#define NULL
wxBitmap * m_bitmap
Definition: bitmap_base.h:57
double m_pixelScaleFactor
Definition: bitmap_base.h:58
wxImage * m_image
Definition: bitmap_base.h:56

References m_bitmap, m_image, m_pixelScaleFactor, m_ppi, m_scale, and NULL.

◆ BITMAP_BASE() [2/2]

BITMAP_BASE::BITMAP_BASE ( const BITMAP_BASE aSchBitmap)

Definition at line 56 of file bitmap_base.cpp.

57 {
58  m_scale = aSchBitmap.m_scale;
59  m_ppi = aSchBitmap.m_ppi;
61 
62  m_image = nullptr;
63  m_bitmap = nullptr;
64 
65  if( aSchBitmap.m_image )
66  {
67  m_image = new wxImage( *aSchBitmap.m_image );
68  m_bitmap = new wxBitmap( *m_image );
69  }
70 }
double m_scale
Definition: bitmap_base.h:54
wxBitmap * m_bitmap
Definition: bitmap_base.h:57
double m_pixelScaleFactor
Definition: bitmap_base.h:58
wxImage * m_image
Definition: bitmap_base.h:56

References m_bitmap, m_image, m_pixelScaleFactor, m_ppi, and m_scale.

◆ ~BITMAP_BASE()

BITMAP_BASE::~BITMAP_BASE ( )
inline

Definition at line 70 of file bitmap_base.h.

71  {
72  delete m_bitmap;
73  delete m_image;
74  }
wxBitmap * m_bitmap
Definition: bitmap_base.h:57
wxImage * m_image
Definition: bitmap_base.h:56

References m_bitmap, and m_image.

Member Function Documentation

◆ DrawBitmap()

void BITMAP_BASE::DrawBitmap ( wxDC *  aDC,
const wxPoint aPos 
)

Definition at line 241 of file bitmap_base.cpp.

242 {
243  if( m_bitmap == NULL )
244  return;
245 
246  wxPoint pos = aPos;
247  wxSize size = GetSize();
248 
249  // This fixes a bug in OSX that should be fixed in the 3.0.3 version or later.
250  if( ( size.x == 0 ) || ( size.y == 0 ) )
251  return;
252 
253  // To draw the bitmap, pos is the upper left corner position
254  pos.x -= size.x / 2;
255  pos.y -= size.y / 2;
256 
257  double scale;
258  int logicalOriginX, logicalOriginY;
259  aDC->GetUserScale( &scale, &scale );
260  aDC->GetLogicalOrigin( &logicalOriginX, &logicalOriginY );
261 
262  bool useTransform = aDC->CanUseTransformMatrix();
263  wxAffineMatrix2D init_matrix = aDC->GetTransformMatrix();
264 
265  if( useTransform )
266  {
267  wxAffineMatrix2D matrix = aDC->GetTransformMatrix();
268  matrix.Translate( pos.x, pos.y );
269  matrix.Scale( GetScalingFactor(), GetScalingFactor() );
270  aDC->SetTransformMatrix( matrix );
271  pos.x = pos.y = 0;
272  }
273  else
274  {
275  aDC->SetUserScale( scale * GetScalingFactor(), scale * GetScalingFactor() );
276  aDC->SetLogicalOrigin( logicalOriginX / GetScalingFactor(),
277  logicalOriginY / GetScalingFactor() );
278 
279  pos.x = KiROUND( pos.x / GetScalingFactor() );
280  pos.y = KiROUND( pos.y / GetScalingFactor() );
281  }
282 
284  {
285  wxBitmap result( m_bitmap->ConvertToImage().ConvertToGreyscale() );
286  aDC->DrawBitmap( result, pos.x, pos.y, true );
287  }
288  else
289  {
290  aDC->DrawBitmap( *m_bitmap, pos.x, pos.y, true );
291  }
292 
293  if( useTransform )
294  aDC->SetTransformMatrix( init_matrix );
295  else
296  {
297  aDC->SetUserScale( scale, scale );
298  aDC->SetLogicalOrigin( logicalOriginX, logicalOriginY );
299  }
300 }
double GetScalingFactor() const
Function GetScalingFactor.
Definition: bitmap_base.h:125
#define NULL
wxSize GetSize() const
Function GetSize.
wxBitmap * m_bitmap
Definition: bitmap_base.h:57
const int scale
constexpr ret_type KiROUND(fp_type v)
Round a floating point number to an integer using "round halfway cases away from zero".
Definition: util.h:68
bool GetGRForceBlackPenState(void)
Function GetGRForceBlackPenState.
Definition: gr_basic.cpp:213

References GetGRForceBlackPenState(), GetScalingFactor(), GetSize(), KiROUND(), m_bitmap, NULL, scale, wxPoint::x, and wxPoint::y.

Referenced by DIALOG_IMAGE_EDITOR::OnRedrawPanel(), SCH_BITMAP::Print(), and WS_DRAW_ITEM_BITMAP::PrintWsItem().

◆ GetBoundingBox()

const EDA_RECT BITMAP_BASE::GetBoundingBox ( ) const

Function GetBoundingBox returns the orthogonal, bounding box of this object for display purposes.

This box should be an enclosing perimeter for visible components of this object, and the units should be in the pcb or schematic coordinate system. It is OK to overestimate the size by a few counts.

Definition at line 229 of file bitmap_base.cpp.

230 {
231  EDA_RECT rect;
232 
233  wxSize size = GetSize();
234 
235  rect.Inflate( size.x / 2, size.y / 2 );
236 
237  return rect;
238 }
wxSize GetSize() const
Function GetSize.
EDA_RECT handles the component boundary box.
Definition: eda_rect.h:44
EDA_RECT & Inflate(wxCoord dx, wxCoord dy)
Function Inflate inflates the rectangle horizontally by dx and vertically by dy.

References GetSize(), and EDA_RECT::Inflate().

Referenced by BOOST_AUTO_TEST_CASE(), and SCH_BITMAP::GetBoundingBox().

◆ GetImageData() [1/2]

◆ GetImageData() [2/2]

const wxImage* BITMAP_BASE::GetImageData ( ) const
inline

Definition at line 84 of file bitmap_base.h.

84 { return m_image; }
wxImage * m_image
Definition: bitmap_base.h:56

References m_image.

◆ GetPixelScaleFactor()

double BITMAP_BASE::GetPixelScaleFactor ( ) const
inline

Definition at line 80 of file bitmap_base.h.

80 { return m_pixelScaleFactor; }
double m_pixelScaleFactor
Definition: bitmap_base.h:58

References m_pixelScaleFactor.

Referenced by BOOST_AUTO_TEST_CASE().

◆ GetPPI()

int BITMAP_BASE::GetPPI ( ) const
inline

◆ GetScale()

◆ GetScalingFactor()

double BITMAP_BASE::GetScalingFactor ( ) const
inline

Function GetScalingFactor.

Returns
the scaling factor from pixel size to actual draw size this scaling factor depends on m_pixelScaleFactor and m_scale m_pixelScaleFactor gives the scaling factor between a pixel size and the internal schematic units m_scale is an user dependant value, and gives the "zoom" value m_scale = 1.0 = original size of bitmap. m_scale < 1.0 = the bitmap is drawn smaller than its original size. m_scale > 1.0 = the bitmap is drawn bigger than its original size.

Definition at line 125 of file bitmap_base.h.

126  {
127  return m_pixelScaleFactor * m_scale;
128  }
double m_scale
Definition: bitmap_base.h:54
double m_pixelScaleFactor
Definition: bitmap_base.h:58

References m_pixelScaleFactor, and m_scale.

Referenced by DrawBitmap(), GetSize(), DIALOG_IMAGE_EDITOR::OnRedrawPanel(), and PlotImage().

◆ GetSize()

wxSize BITMAP_BASE::GetSize ( ) const

Function GetSize.

Returns
the actual size (in user units, not in pixels) of the image

Definition at line 303 of file bitmap_base.cpp.

304 {
305  wxSize size;
306 
307  if( m_bitmap )
308  {
309  size.x = m_bitmap->GetWidth();
310  size.y = m_bitmap->GetHeight();
311 
312  size.x = KiROUND( size.x * GetScalingFactor() );
313  size.y = KiROUND( size.y * GetScalingFactor() );
314  }
315 
316  return size;
317 }
double GetScalingFactor() const
Function GetScalingFactor.
Definition: bitmap_base.h:125
wxBitmap * m_bitmap
Definition: bitmap_base.h:57
constexpr ret_type KiROUND(fp_type v)
Round a floating point number to an integer using "round halfway cases away from zero".
Definition: util.h:68

References GetScalingFactor(), KiROUND(), and m_bitmap.

Referenced by BOOST_AUTO_TEST_CASE(), DrawBitmap(), GetBoundingBox(), and SCH_BITMAP::GetSize().

◆ GetSizePixels()

wxSize BITMAP_BASE::GetSizePixels ( ) const
inline

Function GetSizePixels.

Returns
the size in pixels of the image

Definition at line 141 of file bitmap_base.h.

142  {
143  if( m_image )
144  return wxSize( m_image->GetWidth(), m_image->GetHeight() );
145  else
146  return wxSize( 0, 0 );
147  }
wxImage * m_image
Definition: bitmap_base.h:56

References m_image.

Referenced by BOOST_AUTO_TEST_CASE(), KIGFX::GL_BITMAP_CACHE::cacheBitmap(), DIALOG_IMAGE_EDITOR::CheckValues(), KIGFX::CAIRO_GAL_BASE::DrawBitmap(), and KIGFX::OPENGL_GAL::DrawBitmap().

◆ ImportData()

void BITMAP_BASE::ImportData ( BITMAP_BASE aItem)

Function ImportData Copy aItem image to me and update m_bitmap.

Definition at line 77 of file bitmap_base.cpp.

78 {
79  *m_image = *aItem->m_image;
80  *m_bitmap = *aItem->m_bitmap;
81  m_scale = aItem->m_scale;
82  m_ppi = aItem->m_ppi;
84 }
double m_scale
Definition: bitmap_base.h:54
wxBitmap * m_bitmap
Definition: bitmap_base.h:57
double m_pixelScaleFactor
Definition: bitmap_base.h:58
wxImage * m_image
Definition: bitmap_base.h:56

References m_bitmap, m_image, m_pixelScaleFactor, m_ppi, and m_scale.

Referenced by DIALOG_IMAGE_EDITOR::TransferToImage().

◆ LoadData()

bool BITMAP_BASE::LoadData ( LINE_READER aLine,
wxString &  aErrorMsg 
)

Load an image data saved by SaveData (png, in Hexadecimal form)

Parameters
aLine- the LINE_READER used to read the data file.
aErrorMsg- Description of the error if an error occurs while loading the png bimap data.
Returns
true if the bitmap loaded successfully.

Definition at line 183 of file bitmap_base.cpp.

184 {
185  wxMemoryOutputStream stream;
186  char* line;
187 
188  while( true )
189  {
190  if( !aLine.ReadLine() )
191  {
192  aErrorMsg = wxT("Unexpected end of data");
193  return false;
194  }
195 
196  line = aLine.Line();
197 
198  if( strncasecmp( line, "EndData", 4 ) == 0 )
199  {
200  // all the PNG date is read.
201  // We expect here m_image and m_bitmap are void
202  m_image = new wxImage();
203  wxMemoryInputStream istream( stream );
204  m_image->LoadFile( istream, wxBITMAP_TYPE_PNG );
205  m_bitmap = new wxBitmap( *m_image );
206  break;
207  }
208 
209  // Read PNG data, stored in hexadecimal,
210  // each byte = 2 hexadecimal digits and a space between 2 bytes
211  // and put it in memory stream buffer
212  int len = strlen( line );
213 
214  for( ; len > 0; len -= 3, line += 3 )
215  {
216  int value = 0;
217 
218  if( sscanf( line, "%X", &value ) == 1 )
219  stream.PutC( (char) value );
220  else
221  break;
222  }
223  }
224 
225  return true;
226 }
char * Line() const
Function Line returns a pointer to the last line that was read in.
Definition: richio.h:139
wxBitmap * m_bitmap
Definition: bitmap_base.h:57
virtual char * ReadLine()=0
Function ReadLine reads a line of text into the buffer and increments the line number counter.
wxImage * m_image
Definition: bitmap_base.h:56

References LINE_READER::Line(), m_bitmap, m_image, and LINE_READER::ReadLine().

Referenced by PAGE_LAYOUT_READER_PARSER::readPngdata().

◆ Mirror()

void BITMAP_BASE::Mirror ( bool  aVertically)

Function Mirror Mirror image vertically (i.e.

relative to its horizontal X axis ) or horizontally (i.e relative to its vertical Y axis)

Parameters
aVertically= false to mirror horizontally or true to mirror vertically

Definition at line 320 of file bitmap_base.cpp.

321 {
322  if( m_image )
323  {
324  *m_image = m_image->Mirror( not aVertically );
325  RebuildBitmap();
326  }
327 }
void RebuildBitmap()
Definition: bitmap_base.h:100
wxImage * m_image
Definition: bitmap_base.h:56

References m_image, and RebuildBitmap().

Referenced by SCH_BITMAP::MirrorX(), and SCH_BITMAP::MirrorY().

◆ PlotImage()

void BITMAP_BASE::PlotImage ( PLOTTER aPlotter,
const wxPoint aPos,
KIGFX::COLOR4D  aDefaultColor,
int  aDefaultPensize 
)

Function PlotImage Plot bitmap on plotter.

If the plotter does not support bitmaps, plot a

Parameters
aPlotter= the plotter to use
aPos= the position od the center of the bitmap
aDefaultColor= the color used to plot the rectangle when bitmap is not supported
aDefaultPensize= the pen size used to plot the rectangle when bitmap is not supported

Definition at line 340 of file bitmap_base.cpp.

344 {
345  if( m_image == NULL )
346  return;
347 
348  // These 2 lines are useful only for plotters that cannot plot a bitmap
349  // and plot a rectangle instead of.
350  aPlotter->SetColor( aDefaultColor );
351  aPlotter->SetCurrentLineWidth( aDefaultPensize );
352  aPlotter->PlotImage( *m_image, aPos, GetScalingFactor() );
353 }
double GetScalingFactor() const
Function GetScalingFactor.
Definition: bitmap_base.h:125
virtual void SetColor(COLOR4D color)=0
#define NULL
virtual void PlotImage(const wxImage &aImage, const wxPoint &aPos, double aScaleFactor)
Function PlotImage Only Postscript plotters can plot bitmaps for plotters that cannot plot a bitmap,...
Definition: plotter.cpp:232
wxImage * m_image
Definition: bitmap_base.h:56
virtual void SetCurrentLineWidth(int width, void *aData=NULL)=0
Set the line width for the next drawing.

References GetScalingFactor(), m_image, NULL, PLOTTER::PlotImage(), PLOTTER::SetColor(), and PLOTTER::SetCurrentLineWidth().

Referenced by SCH_BITMAP::Plot().

◆ ReadImageFile() [1/2]

bool BITMAP_BASE::ReadImageFile ( const wxString &  aFullFilename)

Reads and stores in memory an image file.

Init the bitmap format used to draw this item. supported images formats are format supported by wxImage if all handlers are loaded by default, .png, .jpeg are always loaded

Parameters
aFullFilenameThe full filename of the image file to read.
Returns
bool - true if success reading else false.

Definition at line 104 of file bitmap_base.cpp.

105 {
106  wxImage* new_image = new wxImage();
107 
108  if( !new_image->LoadFile( aFullFilename ) )
109  {
110  delete new_image;
111  return false;
112  }
113 
114  delete m_image;
115  m_image = new_image;
116  m_bitmap = new wxBitmap( *m_image );
117 
118  return true;
119 }
wxBitmap * m_bitmap
Definition: bitmap_base.h:57
wxImage * m_image
Definition: bitmap_base.h:56

References m_bitmap, and m_image.

Referenced by PL_EDITOR_FRAME::AddPageLayoutItem(), SCH_BITMAP::ReadImageFile(), and TEST_BITMAP_BASE_FIXTURE::TEST_BITMAP_BASE_FIXTURE().

◆ ReadImageFile() [2/2]

bool BITMAP_BASE::ReadImageFile ( wxInputStream &  aInStream)

Reads and stores in memory an image file.

Init the bitmap format used to draw this item. supported images formats are format supported by wxImage if all handlers are loaded by default, .png, .jpeg are always loaded

Parameters
aInStreaman input stream containing the file data
Returns
bool - true if success reading else false.

Definition at line 87 of file bitmap_base.cpp.

88 {
89  auto new_image = std::make_unique<wxImage>();
90 
91  if( !new_image->LoadFile( aInStream ) )
92  {
93  return false;
94  }
95 
96  delete m_image;
97  m_image = new_image.release();
98  m_bitmap = new wxBitmap( *m_image );
99 
100  return true;
101 }
wxBitmap * m_bitmap
Definition: bitmap_base.h:57
wxImage * m_image
Definition: bitmap_base.h:56

References m_bitmap, and m_image.

◆ RebuildBitmap()

void BITMAP_BASE::RebuildBitmap ( )
inline

Definition at line 100 of file bitmap_base.h.

100 { *m_bitmap = wxBitmap( *m_image ); }
wxBitmap * m_bitmap
Definition: bitmap_base.h:57
wxImage * m_image
Definition: bitmap_base.h:56

References m_bitmap, and m_image.

Referenced by Mirror(), DIALOG_IMAGE_EDITOR::OnGreyScaleConvert(), and Rotate().

◆ Rotate()

void BITMAP_BASE::Rotate ( bool  aRotateCCW)

Function Rotate Rotate image CW or CCW.

Parameters
aRotateCCW= true to rotate CCW

Definition at line 330 of file bitmap_base.cpp.

331 {
332  if( m_image )
333  {
334  *m_image = m_image->Rotate90( aRotateCCW );
335  RebuildBitmap();
336  }
337 }
void RebuildBitmap()
Definition: bitmap_base.h:100
wxImage * m_image
Definition: bitmap_base.h:56

References m_image, and RebuildBitmap().

Referenced by SCH_BITMAP::Rotate().

◆ SaveData() [1/2]

bool BITMAP_BASE::SaveData ( FILE *  aFile) const

writes the bitmap data to aFile The format is png, in Hexadecimal form: If the hexadecimal data is converted to binary it gives exactly a .png image data

Parameters
aFileThe FILE to write to.
Returns
bool - true if success writing else false.

Definition at line 122 of file bitmap_base.cpp.

123 {
124  if( m_image )
125  {
126  wxMemoryOutputStream stream;
127  m_image->SaveFile( stream, wxBITMAP_TYPE_PNG );
128 
129  // Write binary data in hexadecimal form (ASCII)
130  wxStreamBuffer* buffer = stream.GetOutputStreamBuffer();
131  char* begin = (char*) buffer->GetBufferStart();
132 
133  for( int ii = 0; begin < buffer->GetBufferEnd(); begin++, ii++ )
134  {
135  if( ii >= 32 )
136  {
137  ii = 0;
138 
139  if( fprintf( aFile, "\n" ) == EOF )
140  return false;
141  }
142 
143  if( fprintf( aFile, "%2.2X ", *begin & 0xFF ) == EOF )
144  return false;
145  }
146  }
147 
148  return true;
149 }
wxImage * m_image
Definition: bitmap_base.h:56

References m_image.

Referenced by WS_DATA_MODEL_IO::format().

◆ SaveData() [2/2]

void BITMAP_BASE::SaveData ( wxArrayString &  aPngStrings) const

writes the bitmap data to an array string The format is png, in Hexadecimal form: If the hexadecimal data is converted to binary it gives exactly a .png image data

Parameters
aPngStringsThe wxArrayString to write to.

Definition at line 152 of file bitmap_base.cpp.

153 {
154  if( m_image )
155  {
156  wxMemoryOutputStream stream;
157  m_image->SaveFile( stream, wxBITMAP_TYPE_PNG );
158 
159  // Write binary data in hexadecimal form (ASCII)
160  wxStreamBuffer* buffer = stream.GetOutputStreamBuffer();
161  char* begin = (char*) buffer->GetBufferStart();
162  wxString line;
163 
164  for( int ii = 0; begin < buffer->GetBufferEnd(); begin++, ii++ )
165  {
166  if( ii >= 32 )
167  {
168  ii = 0;
169  aPngStrings.Add( line );
170  line.Empty();
171  }
172 
173  line << wxString::Format( wxT( "%2.2X " ), *begin & 0xFF );
174  }
175 
176  // Add last line:
177  if( !line.IsEmpty() )
178  aPngStrings.Add( line );
179  }
180 }
void Format(OUTPUTFORMATTER *out, int aNestLevel, int aCtl, CPTREE &aTree)
Function Format outputs a PTREE into s-expression format via an OUTPUTFORMATTER derivative.
Definition: ptree.cpp:205
wxImage * m_image
Definition: bitmap_base.h:56

References Format(), and m_image.

◆ SetBitmap()

void BITMAP_BASE::SetBitmap ( wxBitmap *  aBitMap)
inline

Definition at line 102 of file bitmap_base.h.

103  {
104  delete m_bitmap;
105  m_bitmap = aBitMap;
106  }
wxBitmap * m_bitmap
Definition: bitmap_base.h:57

References m_bitmap.

◆ SetImage()

void BITMAP_BASE::SetImage ( wxImage *  aImage)
inline

Definition at line 86 of file bitmap_base.h.

87  {
88  delete m_image;
89  m_image = aImage;
90  }
wxImage * m_image
Definition: bitmap_base.h:56

References m_image.

◆ SetPixelScaleFactor()

void BITMAP_BASE::SetPixelScaleFactor ( double  aSF)
inline

◆ SetScale()

void BITMAP_BASE::SetScale ( double  aScale)
inline

Member Data Documentation

◆ m_bitmap

wxBitmap* BITMAP_BASE::m_bitmap
private

◆ m_image

◆ m_pixelScaleFactor

double BITMAP_BASE::m_pixelScaleFactor
private

◆ m_ppi

int BITMAP_BASE::m_ppi
private

Definition at line 62 of file bitmap_base.h.

Referenced by BITMAP_BASE(), GetPPI(), and ImportData().

◆ m_scale

double BITMAP_BASE::m_scale
private

Definition at line 54 of file bitmap_base.h.

Referenced by BITMAP_BASE(), GetScale(), GetScalingFactor(), ImportData(), and SetScale().


The documentation for this class was generated from the following files: