public class EuclideanPseudoLines extends Object
Constructor and Description |
---|
EuclideanPseudoLines(OM om,
Label infinity)
Prepare the given oriented matroid for Euclidean processing, with
the given line at infinity.
|
EuclideanPseudoLines(OM om,
String infinity,
String... alsoReorient)
Prepare the given oriented matroid for Euclidean processing, with
the given line at infinity, and a hint, which may or may not be followed, concerning
which lines to re-orient.
|
Modifier and Type | Method and Description |
---|---|
PseudoLineDrawing |
asDrawing()
Prepare to draw this arrangement of pseudolines.
|
OM |
getEquivalentOM()
This is the oriented matroid which is actually being processed.
|
Label |
getInfinity()
This is the element at infinity as from the constructor.
|
Permutation |
getPermutation()
The elements of the original oriented matroid are permuted in the equivalent oriented
matroid.
|
Label[] |
getReorientation()
This is the set of elements which were reoriented in the processing of this class.
|
void |
switchFaceLattice()
This method impacts performance.
|
String[] |
toCrossingsString()
Gives a representation of the modified oriented matroid
as a list of crossings strings that can be used in
FactoryFactory.fromCrossings(String...) |
public EuclideanPseudoLines(OM om, String infinity, String... alsoReorient)
om
- The oriented matroid to processinfinity
- Project this element to be the line at infinityalsoReorient
- reorient these elements too, before processing. To find which elements are actually reoriented you must call getReorientation()
NotRank3Exception
- If om is not of rank 3.public EuclideanPseudoLines(OM om, Label infinity)
om
- The oriented matroid to processinfinity
- Project this element to be the line at infinityNotRank3Exception
- If om is not of rank 3.public PseudoLineDrawing asDrawing() throws CoLoopCannotBeDrawnException
CoLoopCannotBeDrawnException
- If one of the elements other than infinity is a co-loop.public void switchFaceLattice()
public String[] toCrossingsString()
FactoryFactory.fromCrossings(String...)
getEquivalentOM()
public OM getEquivalentOM()
EuclideanPseudoLines(OM, String, String...)
,
EuclideanPseudoLines(OM, Label)
,
getReorientation()
public Label[] getReorientation()
EuclideanPseudoLines(OM, String, String...)
,
EuclideanPseudoLines(OM, Label)
,
getEquivalentOM()
public Permutation getPermutation()
public Label getInfinity()
EuclideanPseudoLines(OM, String, String...)
,
EuclideanPseudoLines(OM, Label)