public class Join extends java.lang.Object implements Rhomb, java.io.Serializable
Yarn
s (pseudolines).
The Joins may shift about relative to one another, but each Join always
refers to the same two Yarns.
This was created to be a faster alternative to SimpleRhomb
, but it
doesn't seem to be much faster in practice.Modifier and Type | Field and Description |
---|---|
static long |
serialVersionUID
For serialization.
|
int |
type
The congruence class of rhomb.
|
Constructor and Description |
---|
Join(Point p,
Yarn y1,
Yarn y2)
Public constructor.
|
Modifier and Type | Method and Description |
---|---|
void |
collapse()
Remove this Join.
|
static Join |
createJoin(Point p,
Yarn y1,
Yarn y2)
Public static factory method.
|
SimpleRhomb |
createSimpleRhomb()
Produce a SimpleRhomb representation of the same rhomb.
|
boolean |
equals(java.lang.Object obj)
Two Joins are equal if they represent the intersection of the same two Yarns.
|
java.lang.String |
gapString()
String representation for gap.
|
int |
getAngle()
Getter method.
|
Point |
getPoint()
Getter method.
|
SimplePolygon2D |
getRhomb()
Getter method.
|
double |
getScale()
Get the scale for drawing.
|
int |
getType()
Getter method.
|
Point |
getV1()
Getter method.
|
Point |
getV2()
Getter method.
|
Point[] |
getVertices()
Getter method.
|
Yarn |
getY1()
Getter method.
|
Yarn |
getY2()
Getter method.
|
int |
hashCode()
Use the sum of the hasCodes of the two Yarns.
|
boolean |
onEdge()
Determine if this Join is on the edge of a pseudoline arrangement.
|
java.lang.String |
postscriptString()
String representation for Postscript.
|
void |
setScale(double s)
Set the scale for drawing.
|
void |
shift(Point vector)
Shift the point by a given vector.
|
java.lang.String |
toString()
Basic String representation.
|
public static final long serialVersionUID
public final int type
public static Join createJoin(Point p, Yarn y1, Yarn y2)
p
- A reference point indicating the corner of the rhomb with even angle and two outward-pointing arrows.y1
- The first Yarn incident with this Join.y2
- The second Yarn incident with this Join.public SimpleRhomb createSimpleRhomb()
createSimpleRhomb
in interface Rhomb
public boolean equals(java.lang.Object obj)
equals
in class java.lang.Object
public int hashCode()
hashCode
in class java.lang.Object
public Yarn getY1()
public Yarn getY2()
public int getType()
public boolean onEdge()
public void collapse()
public void shift(Point vector)
public SimplePolygon2D getRhomb()
public void setScale(double s)
public double getScale()
public int getAngle()
public Point[] getVertices()
Point.N()
-1 coordinates.)public Point getPoint()
public Point getV1()
public Point getV2()
public java.lang.String toString()
toString
in class java.lang.Object
public java.lang.String gapString()
public java.lang.String postscriptString()
postscriptString
in interface Rhomb