# IpeImage Class Reference
[Ipe Objects]

The image object. More...

Inherits IpeObject.

List of all members.

## Public Member Functions

- IpeImage (IpeRepository *rep, const IpeXmlAttributes &attr, IpeString data)
- IpeImage (IpeRepository *rep, const IpeXmlAttributes &attr, IpeBitmap bitmap)
- IpeImage (const IpeRect &rect, IpeBitmap bitmap)
- virtual IpeObject * Clone () const
- virtual IpeImage * AsImage ()
- virtual void SaveAsXml (IpePainter &painter, IpeStream &stream, IpeString layer) const
- virtual void Draw (IpePainter &painter) const
- virtual void Accept (IpeVisitor &visitor) const
- virtual double Distance (const IpeVector &v, const IpeMatrix &m, double bound) const
- virtual void AddToBBox (IpeRect &box, const IpeMatrix &m) const
- virtual void SnapVtx (const IpeVector &mouse, const IpeMatrix &m, IpeVector &pos, double &bound) const
- IpeRect Rect () const
- IpeBitmap Bitmap () const

## Detailed Description

The image object.

## Constructor & Destructor Documentation

IpeImage::IpeImage | ( | IpeRepository * | rep,
|  | const IpeXmlAttributes & | attr,
|  | IpeString | data
| ) | `[explicit]`

| Create from XML stream.

IpeImage::IpeImage | ( | IpeRepository * | rep,
|  | const IpeXmlAttributes & | attr,
|  | IpeBitmap | bitmap
| ) | `[explicit]`

| Create from XML stream with given bitmap.

IpeImage::IpeImage | ( | const IpeRect & | rect,
|  | IpeBitmap | bitmap
| ) | `[explicit]`

| Create a new image.

## Member Function Documentation

IpeObject * IpeImage::Clone | ( |  | ) | const`[virtual]`

| Clone object. Implements IpeObject.

IpeImage * IpeImage::AsImage | ( |  | ) | `[virtual]`

| Return pointer to this object. Reimplemented from IpeObject.

void IpeImage::SaveAsXml | ( | IpePainter & | painter,
|  | IpeStream & | stream,
|  | IpeString | layer
| ) | const`[virtual]`

| Save image in XML stream. Implements IpeObject.

void IpeImage::Draw | ( | IpePainter & | painter | ) | const`[virtual]`

| Draw image. Implements IpeObject.

void IpeImage::Accept | ( | IpeVisitor & | visitor | ) | const`[virtual]`

| Call VisitImage of visitor. Implements IpeObject.

double IpeImage::Distance | ( | const IpeVector & | v,
|  | const IpeMatrix & | m,
|  | double | bound
| ) | const`[virtual]`

| Return distance of transformed object to point v. If larger than bound, can just return bound. Implements IpeObject.

void IpeImage::AddToBBox | ( | IpeRect & | box,
|  | const IpeMatrix & | m
| ) | const`[virtual]`

Extend box to include the object transformed by m.

For Ipe objects in a page, don't call this directly. The IpePgObject caches the bounding box, so it is far more efficient to call IpePgObject::BBox.

If called with an empty box, the result of this function is a tight bounding box for the object, with a little leeway in case the boundary is determined by a spline (it has to be approximated to perform this operation).

Implements IpeObject.

void IpeImage::SnapVtx | ( | const IpeVector & | mouse,
|  | const IpeMatrix & | m,
|  | IpeVector & | pos,
|  | double & | bound
| ) | const`[virtual]`

| Compute possible vertex snapping position for transformed object. Looks only for positions closer than bound. If successful, modify pos and bound. Implements IpeObject.

IpeRect IpeImage::Rect | ( |  | ) | const`[inline]`

| Return the rectangle occupied by the image on the paper. The transformation matrix is applied to this, of course.

IpeBitmap IpeImage::Bitmap | ( |  | ) | const`[inline]`

| Return IpeBitmap of the image.

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

- ipeimage.h
- ipeimage.cpp