FloaterTransform Property (original) (raw)
Summary
Transformation matrix used by the floater image of this item.
Syntax
Property Value
The transformation matrix used by the floater image of this item. Default value is Identity.
Example
using Leadtools;
using Leadtools.Controls;
using Leadtools.Codecs;
using Leadtools.Drawing;
using Leadtools.ImageProcessing;
using Leadtools.ImageProcessing.Color;
public void ImageViewerFloaterTransform_Example()
{
var item = _imageViewer.Items[0];
if (item == null)
return;
if (item.Floater == null)
{
var xForm = RasterRegionXForm.Default;
using (var image = item.Image.Clone())
{
var width = image.ImageWidth / 2;
var height = image.ImageHeight / 2;
image.AddRectangleToRegion(xForm, new LeadRect(width, height, width, height), RasterRegionCombineMode.Set);
xForm = RasterRegionXForm.Default;
xForm.ViewPerspective = RasterViewPerspective.TopLeft;
var rc = image.GetRegionBounds(xForm);
var command = new CopyRectangleCommand(rc, RasterMemoryFlags.Conventional);
command.Run(image);
var floater = command.DestinationImage;
rc = image.RectangleFromImage(RasterViewPerspective.TopLeft, rc);
if (floater != null)
{
xForm.ViewPerspective = RasterViewPerspective.TopLeft;
var regionData = RasterRegionConverter.GetGdiPlusRegionData(image, xForm);
xForm.ViewPerspective = RasterViewPerspective.TopLeft;
xForm.XOffset -= rc.Left;
xForm.YOffset -= rc.Top;
}
floater.MakeRegionEmpty();
var transform = item.FloaterTransform;
transform.Translate(-floater.ImageWidth, -floater.ImageHeight);
item.FloaterTransform = transform;
item.Floater = floater;
}
}
else
{
var floater = item.Floater;
var transform = item.FloaterTransform;
transform.Translate(-1, -1);
item.FloaterTransform = transform;
}
}