public class LineClip extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
private java.awt.Rectangle |
clipBounds |
private java.awt.Point |
p1 |
private java.awt.Point |
p2 |
Constructor and Description |
---|
LineClip(java.awt.Point p1,
java.awt.Point p2,
java.awt.Rectangle clipBounds)
Constructs a new
LineClip . |
Modifier and Type | Method and Description |
---|---|
private boolean |
cohenSutherland(long x1,
long y1,
long x2,
long y2,
long xmin,
long ymin,
long xmax,
long ymax)
Cohen–Sutherland algorithm.
|
private static int |
computeOutCode(long x,
long y,
long xmin,
long ymin,
long xmax,
long ymax)
The outcode of the point.
|
boolean |
execute()
run the clipping algorithm
|
java.awt.Point |
getP1() |
java.awt.Point |
getP2() |
private java.awt.Point p1
private java.awt.Point p2
private final java.awt.Rectangle clipBounds
public LineClip(java.awt.Point p1, java.awt.Point p2, java.awt.Rectangle clipBounds)
LineClip
.p1
- start point of the clipped linep2
- end point of the clipped lineclipBounds
- Clip boundspublic boolean execute()
public java.awt.Point getP1()
public java.awt.Point getP2()
private boolean cohenSutherland(long x1, long y1, long x2, long y2, long xmin, long ymin, long xmax, long ymax)
private static int computeOutCode(long x, long y, long xmin, long ymin, long xmax, long ymax)