foxit.common.Path Class Reference
Inheritance diagram for foxit.common.Path:
foxit.common.Base

Public Types

enum  PointType {
  PointType.e_TypeMoveTo = 1, PointType.e_TypeLineTo = 2, PointType.e_TypeLineToCloseFigure = 3, PointType.e_TypeBezierTo = 4,
  PointType.e_TypeBezierToCloseFigure = 5
}
 Enumeration for point type in path.
More...
 

Public Member Functions

 Path ()
 Constructor.

 
 Path (Path other)
 Constructor, with another Path object. More...
 
bool AppendEllipse (RectF rect)
 Add an ellipse figure to the end of current path. More...
 
bool AppendRect (RectF rect)
 Add a rectangle figure to the end of current path. More...
 
void Clear ()
 Clear all points. More...
 
bool CloseFigure ()
 Close current figure (which is also the last figure in current path). More...
 
bool CubicBezierTo (PointF point1, PointF point2, PointF point3)
 Add a cubic bezier spline to the end of current figure, by three points: two control points and one target point. More...
 
PointF GetPoint (int index)
 Get a point specified by index. More...
 
int GetPointCount ()
 Get the count of points. More...
 
Path.PointType GetPointType (int index)
 Get the type of a point specified by index. More...
 
bool IsEmpty ()
 Check whether current object is empty or not. More...
 
bool LineTo (PointF point)
 Add a point to the end of current figure, and a line is to be drawn from current point to the new point. More...
 
bool MoveTo (PointF point)
 Add a point to the end of current path, to start a new figure. More...
 
bool RemovePoint (int index)
 Remove a point specified by index. More...
 
bool SetPoint (int index, PointF point, Path.PointType type)
 Change the value and type of a point specified by index. More...
 
void Transform (Matrix2D matrix)
 Transform all points in current path with a given matrix. More...
 

Detailed Description

This class represents a path which contains one or more figures.

Member Enumeration Documentation

◆ PointType

Enumeration for point type in path.

Values of this enumeration should be used alone.

Enumerator
e_TypeMoveTo 

Indicates that the point is the first point of a figure.

e_TypeLineTo 

Indicates that a line is drawn from the previous point to this point.

e_TypeLineToCloseFigure 

Indicates that a line is drawn from the previous point to this point, and this point will also be connected to the nearest e_TypeMoveTo point before this point, in order to close current figure.

e_TypeBezierTo 

Indicates that this point is a control point or ending point for a Bezier spline.

e_TypeBezierToCloseFigure 

Indicates that this point is the ending point for a Bezier spline, and this point will also be connected to the nearest e_TypeMoveTo point before this point, in order to close current figure.

Constructor & Destructor Documentation

◆ Path()

foxit.common.Path.Path ( Path  other)
inline

Constructor, with another Path object.

Parameters
otherAnother Path object.

Member Function Documentation

◆ AppendEllipse()

bool foxit.common.Path.AppendEllipse ( RectF  rect)
inline

Add an ellipse figure to the end of current path.

Parameters
rectThe enclosing rectangle of an ellipse figure.
Returns
true means success, while false means failure.

◆ AppendRect()

bool foxit.common.Path.AppendRect ( RectF  rect)
inline

Add a rectangle figure to the end of current path.

Parameters
rectA rectangle which specifies a rectangle figure.
Returns
true means success, while false means failure.

◆ Clear()

void foxit.common.Path.Clear ( )
inline

Clear all points.

Returns
None.

◆ CloseFigure()

bool foxit.common.Path.CloseFigure ( )
inline

Close current figure (which is also the last figure in current path).

When closing current figure, the last point's type may be changed:


If the last point's type is e_TypeMoveTo, that means the last figure just has one point and cannot be closed and current function will return false.
If the last point's type is e_TypeLineTo, the type will be changed to e_TypeLineToCloseFigure.
If the last point's type is e_TypeLineTo, the type will be changed to e_TypeBezierToCloseFigure.
If the last point's type is already e_TypeLineToCloseFigure or e_TypeBezierToCloseFigure, that means the last figure has been closed. The type will not be changed and function will still return true.

Returns
true means success, while false means failure.

◆ CubicBezierTo()

bool foxit.common.Path.CubicBezierTo ( PointF  point1,
PointF  point2,
PointF  point3 
)
inline

Add a cubic bezier spline to the end of current figure, by three points: two control points and one target point.

If this function succeeds, parameter point3 will become the new "current point".

Parameters
point1New point as the first control point for cubic bezier, in PDF coordinate system .
point2New point as the second control point for cubic bezier, in PDF coordinate system .
point3New point as target point for cubic bezier, in PDF coordinate system .
Returns
true means success, while false means failure.

◆ GetPoint()

PointF foxit.common.Path.GetPoint ( int  index)
inline

Get a point specified by index.

Parameters
indexThe index of the point. Valid range: 0 to (count-1). count is returned by function Path::GetPointCount.
Returns
The specified point.

◆ GetPointCount()

int foxit.common.Path.GetPointCount ( )
inline

Get the count of points.

Returns
The count of points.

◆ GetPointType()

Path.PointType foxit.common.Path.GetPointType ( int  index)
inline

Get the type of a point specified by index.

Parameters
indexThe index of the point. Valid range: 0 to (count-1). count is returned by function Path::GetPointCount.
Returns
The type of specified point. Please refer to e_TypeXXX values and it would be one of these values.

◆ IsEmpty()

bool foxit.common.Path.IsEmpty ( )
inline

Check whether current object is empty or not.

When the current object is empty, that means current object is useless.

Returns
true means current object is empty, while false means not.

◆ LineTo()

bool foxit.common.Path.LineTo ( PointF  point)
inline

Add a point to the end of current figure, and a line is to be drawn from current point to the new point.

If this function succeeds, the new point will become the new "current point".

Parameters
pointNew point, in PDF coordinate system .
Returns
true means success, while false means failure.

◆ MoveTo()

bool foxit.common.Path.MoveTo ( PointF  point)
inline

Add a point to the end of current path, to start a new figure.

If this function succeeds, the new point will become the new "current point", and the new figure will become the new "current figure".

Parameters
pointNew point, in PDF coordinate system .
Returns
true means success, while false means failure.

◆ RemovePoint()

bool foxit.common.Path.RemovePoint ( int  index)
inline

Remove a point specified by index.

Parameters
indexThe index of the point to be removed. Valid range: 0 to (count-1). count is returned by function Path::GetPointCount.
Returns
true means success, while false means failure.

◆ SetPoint()

bool foxit.common.Path.SetPoint ( int  index,
PointF  point,
Path.PointType  type 
)
inline

Change the value and type of a point specified by index.

Parameters
indexThe index of the point. Valid range: 0 to (count-1). count is returned by function Path::GetPointCount.
pointThe new point to set, in PDF coordinate system .
typeThe type used to set to the new point. Please refer to e_TypeXXX values and it should be one of them.
Returns
true means success, while false means failure.

◆ Transform()

void foxit.common.Path.Transform ( Matrix2D  matrix)
inline

Transform all points in current path with a given matrix.

Parameters
matrixA matrix used for transforming.
Returns
None.

Foxit Software Corporation Logo
@2018 Foxit Software Incorporated. All rights reserved.