p

superficial

package superficial

Ordering
  1. Alphabetic
Visibility
  1. Public
  2. Protected

Type Members

  1. case class BoundaryEdge(pb: PantsBoundary, top: Boolean, positivelyOriented: Boolean) extends OrientedEdge with Product with Serializable

    An edge in the boundary of a pair of pants which is not identified with a boundary component of another pair of pants, i.e., this is part of the boundary of the surface.

    An edge in the boundary of a pair of pants which is not identified with a boundary component of another pair of pants, i.e., this is part of the boundary of the surface.

    pb

    the pants boundary of which this is a part

    top

    whether this is in the top face

    positivelyOriented

    whether the edge is positively oriented

  2. case class BoundaryVertex(pb: PantsBoundary, isFirst: Boolean) extends Vertex with Product with Serializable

    Vertex on the boundary of a pair of pants decomposed into a pair of hexagons

    Vertex on the boundary of a pair of pants decomposed into a pair of hexagons

    pb

    the component of the boundary on which the vertex lies

    isFirst

    whether the vertex is the first vertex.

  3. case class ClosedSurface(n: Int) extends StandardSurface with Product with Serializable
  4. trait CollectionOfHomotopyClasses extends AnyRef
  5. case class Curve(left: PantsBoundary, right: PantsBoundary) extends Product with Serializable

    A curve in the curve system (i.e., the collection of terms) along which we split to get the pants decomposition.

    A curve in the curve system (i.e., the collection of terms) along which we split to get the pants decomposition. This is a quotient of two pants boundaries that have been identified, with orientation determining one as on the left.

    left

    the pants boundary on the left.

    right

    the pants boundary on the right.

  6. case class CurveEdge(curve: Curve, top: Boolean, positivelyOriented: Boolean) extends OrientedEdge with Product with Serializable

    An edge on a curve

    An edge on a curve

    curve

    the curve on which the edge lies

    top

    whether this is the top edge

    positivelyOriented

    whether the edge is positively oriented

  7. case class CurveVertex(curve: Curve, first: Boolean) extends Vertex with Product with Serializable

    vertex on a curve

    vertex on a curve

    curve

    the curve

    first

    whether this is the first vertex

  8. trait Edge extends AnyRef

    An oriented edge in a two-complex

  9. class EdgePair extends AnyRef
  10. sealed trait EdgePath extends AnyRef
  11. trait EquivalenceClass extends AnyRef
  12. case class FormalSum[A](coeffs: Map[A, Int]) extends Product with Serializable

    A formal sum of elements of A with coefficients integers.

  13. sealed trait Generator extends AnyRef

    Contribution of Ankit-Jaiswal and Soumyo Biswas, independent of the rest of the code.

    Contribution of Ankit-Jaiswal and Soumyo Biswas, independent of the rest of the code.

    This program basically abstracts : (i) OrientableSurface (i.e. a connected compact 2-manifold) parametrized by g and r. where, g is its genus and r is the number of components in its boundary. (ii) Surfaces' fundamental group Generators along with the 'relation' over them, (iii) Closed curves/Words (on the surfaces) in terms of Generators, And, verifies whether a given word is homotopic to a simple closed curve.

    NOTE: This program works for surfaces which are not sphere(where g = 0 as well as r = 0).

    Reference:: "Simple Closed Curves on Surfaces" by D.R.J. Chillingworth

  14. trait Hexagon extends Polygon

    A hexagon

  15. trait HomotopyClassesOfPaths extends AnyRef
  16. trait Intersection extends AnyRef
  17. trait NonPosQuad extends TwoComplex
  18. case class NormalArc(initial: Index, terminal: Index, face: Polygon) extends Product with Serializable

    A normal arc in a face

    A normal arc in a face

    initial

    the edge containing the initial point

    terminal

    the edge containing the final point

    face

    the face containing the arc

  19. case class NormalPath(edges: Vector[NormalArc]) extends Product with Serializable
  20. case class OrientableSurface(g: Int, r: Int) extends Product with Serializable

    Contribution of Ankit-Jaiswal and Soumyo Biswas, independent of the rest of the code.

    Contribution of Ankit-Jaiswal and Soumyo Biswas, independent of the rest of the code.

    'a' and 'b' are the two Generators of a OrientableSurface, parametrized by the genus number. And 's' is the generator corressponding to surface's boundary, parametrized by r, the number of components. Because their inverse can also generate the fundamental group; therefore they are also being considered as Generators.

  21. trait OrientedEdge extends Edge
  22. case class PantsBoundary(pants: Index, direction: Z3) extends Product with Serializable

    label for boundary of pants, may be a curve in the curve system or a component of the boundary of the surface; if part of the curve system it will be identified with another PantsBoundary

    label for boundary of pants, may be a curve in the curve system or a component of the boundary of the surface; if part of the curve system it will be identified with another PantsBoundary

    pants

    the index of the pair of pants

    direction

    the prong of the pair of pants

  23. case class PantsHexagon(pants: Index, top: Boolean, cs: Set[Curve]) extends Hexagon with Product with Serializable

    Hexagon in a pair of pants

    Hexagon in a pair of pants

    pants

    the index of the pair of pants

    top

    whether this is the top face

    cs

    system of curves giving the pants decomposition

  24. case class PantsSeam(pants: Index, initial: Vertex, terminal: Vertex, positivelyOriented: Boolean = true) extends OrientedEdge with Product with Serializable

    An edge that is the seam of a pair of pants

    An edge that is the seam of a pair of pants

    pants

    the index of the pair of pants of which this is a seam

    initial

    the initial vertex

    terminal

    the terminal vertex

    positivelyOriented

    whether the edge is positively oriented

  25. case class PantsSurface(numPants: Index, cs: Set[Curve]) extends PureTwoComplex with Product with Serializable

    Surface with a pants decomposition (compact, possibly with boundary and possibly disconnected)

    Surface with a pants decomposition (compact, possibly with boundary and possibly disconnected)

    numPants

    the number of pairs of pants

    cs

    the curve system giving the pants decomposition

  26. trait Polygon extends TwoComplex

    Abstract polygon, with given edges and vertices, i.e.

    Abstract polygon, with given edges and vertices, i.e. a two-complex with a single face.

  27. case class PureComplex(polys: Set[Polygon]) extends PureTwoComplex with Product with Serializable
  28. trait PureTwoComplex extends TwoComplex

    A two-complex with all vertices and edges contained in faces, hence determined by its faces.

  29. class QuadPlot extends AnyRef
  30. trait Quadrangulation extends TwoComplex
  31. trait Quadrilateral extends Polygon

    a quadrilateral is a polygon with four edges.

  32. case class QuotientEdge(edges: Set[Edge]) extends Edge with Product with Serializable

    An edge obtained by identifications

  33. case class QuotientVertex(vertices: Set[Vertex]) extends Vertex with Product with Serializable

    A vertex obtained by identifications

  34. case class SkewCurve(left: PantsBoundary, right: PantsBoundary, twist: Double, length: Double) extends Product with Serializable

    A curve in the curve system for a pants decomposition for a hyperbolic surface obtained by twisting and regluing along the pants system Twists and vertex positions are parametrized as fractions of the length, so are in [0, 1].

    A curve in the curve system for a pants decomposition for a hyperbolic surface obtained by twisting and regluing along the pants system Twists and vertex positions are parametrized as fractions of the length, so are in [0, 1].

    Generically, there are 4 vertices, two at 0 and 0.5 and the other two at twist and twist + 0.5 (mod 1).

    left

    the pants boundary to the left

    right

    the pants boundary to the right

    twist

    the twist, parametrized as a fraction of the length, so is in [0, 1]

    length

    the length of the curve in the hyperbolic structure.

  35. case class SkewCurveEdge(curve: SkewCurve, initialPosition: Double, positivelyOriented: Boolean) extends OrientedEdge with Product with Serializable

    An edge on a skew-curve, i.e., curve in a pants decomposition glued with a twist

    An edge on a skew-curve, i.e., curve in a pants decomposition glued with a twist

    curve

    the skew-curve in the pants decomposition

    initialPosition

    the position of the initial vertex

    positivelyOriented

    whether the edge is positively oriented

  36. case class SkewCurveVertex(curve: SkewCurve, position: Double) extends Vertex with Product with Serializable

    vertex on a skew curve

    vertex on a skew curve

    curve

    the curve

    position

    position on the curve in [0, 1)

  37. case class SkewPantsHexagon(pants: Index, top: Boolean, cs: Set[SkewCurve]) extends Polygon with Product with Serializable

    "hexagon" in a skew pair of pants; note that this is not in general a hexagon as some of the edges are subdivided

    "hexagon" in a skew pair of pants; note that this is not in general a hexagon as some of the edges are subdivided

    pants

    the index of the pair of (skew) pants

    top

    whether this is the top face

    cs

    system of curves giving the pants decomposition

  38. case class SkewPantsSurface(numPants: Index, cs: Set[SkewCurve]) extends PureTwoComplex with Product with Serializable
  39. class StandardSurface extends TwoComplex
  40. trait TwoComplex extends AnyRef

    A polyheadral two complex, with faces polygons, a collection of edges and

  41. class Vertex extends AnyRef

    A vertex in a two-complex

  42. final case class Z3(n: Int) extends AnyVal with Product with Serializable

    One of 0, 1 and 2, indexing the boundaries of a pair of pants.

    One of 0, 1 and 2, indexing the boundaries of a pair of pants. Class created to avoid accidentally mixing with integers

  43. trait sphereWithHoles extends AnyRef
  44. trait surfaceWithBoundary extends AnyRef

Value Members

  1. object CheckQuadrangulation
  2. object Clockwise
  3. object ClosedSurface extends Serializable
  4. object CollectionOfHomotopyClasses
  5. object DoublePaths
  6. object Edge
  7. object EdgePair
  8. object EdgePath
  9. object EquivalenceClass
  10. object Examples
  11. object FormalSum extends Serializable
  12. object Generator
  13. object Hexagon

    Formulas for hyperbolic hexagons

  14. object HomotopyClassesOfPaths
  15. object Intersection
  16. object NonPosQuad
  17. object NormalArc extends Serializable
  18. object NormalPath extends Serializable
  19. object PantsSurface extends Serializable
  20. object Polygon
  21. object PrimitiveExamples
  22. object Quadrangulation
  23. object SkewCurve extends Serializable
  24. object SkewPantsSurface extends Serializable
  25. object SphereComplex
  26. object Staircase
  27. object StandardSurface
  28. object SvgPlot
  29. object Triangles
  30. object TwoComplex
  31. object Vertex
  32. object Z3 extends Serializable
  33. object sphereWithHoles
  34. object surfaceWithBoundary

Ungrouped