Defines a curve.
public class RasterCurve
Public Class RasterCurve
public ref class RasterCurve
The RasterCurve class defines the curve to be used with the AddCurveToRegion method to draw a curve using an array of LeadPoint objects. The ToBezierPoints method is used to convert a curve to a Bezier. The RasterCurve class can define two types of curves, RasterCurveType.Standard and RasterCurveType.Bezier.
This sample creates a smooth region that goes through five points, and inverts the region.
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing;
using Leadtools.ImageProcessing.Color;
using LeadtoolsExamples.Common;
public void RasterCurveExample()
{
string destFileName = Path.Combine(ImagesPath.Path, "Image1_curveinverted.bmp");
// create a new curve object
RasterCurve curve = new RasterCurve();
// define the the curve
curve.Points.Add(new LeadPoint(30, 30));
curve.Points.Add(new LeadPoint(30, 200));
curve.Points.Add(new LeadPoint(130, 130));
curve.Points.Add(new LeadPoint(75, 75));
curve.Points.Add(new LeadPoint(130, 30));
curve.Type = RasterCurveType.Standard;
curve.FillMode = LeadFillMode.Winding;
curve.Tension = 0.5;
curve.Close = RasterCurveClose.Close;
// create an image
using (RasterImage image = new RasterImage(
RasterMemoryFlags.Conventional,
250,
250,
24,
RasterByteOrder.Bgr,
RasterViewPerspective.BottomLeft,
null,
IntPtr.Zero,
0))
{
Assert.IsNotNull(image);
// fill the image
new FillCommand(RasterColor.FromKnownColor(RasterKnownColor.Magenta)).Run(image);
image.AddCurveToRegion(null, curve, RasterRegionCombineMode.Set);
// do something with the region
new InvertCommand().Run(image);
// save the image
using (RasterCodecs codecs = new RasterCodecs())
{
// save the image back to disk
codecs.Save(image, destFileName, RasterImageFormat.Bmp, 24);
}
}
}
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.ImageProcessing.Color
Public Sub RasterCurveExample()
Dim codecs As RasterCodecs = New RasterCodecs()
' load an image
Dim srcFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp")
Dim destFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "Image1_curveinverted.bmp")
Dim image As RasterImage = codecs.Load(srcFileName)
' create a new curve object
Dim curve As RasterCurve = New RasterCurve()
' define the the curve
curve.Points.Add(New LeadPoint(30, 30))
curve.Points.Add(New LeadPoint(30, 200))
curve.Points.Add(New LeadPoint(130, 130))
curve.Points.Add(New LeadPoint(75, 75))
curve.Points.Add(New LeadPoint(130, 30))
curve.Type = RasterCurveType.Standard
curve.FillMode = LeadFillMode.Winding
curve.Tension = 0.5
curve.Close = RasterCurveClose.Close
image.AddCurveToRegion(Nothing, curve, RasterRegionCombineMode.Set)
' do something with the region
Dim cmd As InvertCommand = New InvertCommand()
cmd.Run(image)
' save the image back to disk
codecs.Save(image, destFileName, RasterImageFormat.Bmp, 24)
' Cleanup
image.Dispose()
End Sub
Public NotInheritable Class LEAD_VARS
Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
Raster .NET | C API | C++ Class Library | JavaScript HTML5
Document .NET | C API | C++ Class Library | JavaScript HTML5
Medical .NET | C API | C++ Class Library | JavaScript HTML5
Medical Web Viewer .NET