Learn R Programming

grip (version 0.1.2)

triangulated_pair_of_pants_surface_helpers: Weighted triangulated pair-of-pants surface helpers

Description

Convenience helpers that triangulate a planar pair-of-pants domain by clipping a regular triangular lattice to a disk with two interior circular holes. The resulting graph is a triangulated surface with three boundary components and a deterministic non-grid topology.

Usage

triangulated.pair.of.pants.surface.embedding(
  resolution = 12,
  outer_radius = 1.1,
  hole_radius = 0.24,
  hole_offset = 0.38,
  hole_height = 0.18,
  surface = c("flat", "saddle", "paraboloid", "ripple", "folded"),
  amplitude = 0.6,
  freq_u = 1,
  freq_v = 1
)

triangulated.pair.of.pants.surface.graph( resolution = 12, outer_radius = 1.1, hole_radius = 0.24, hole_offset = 0.38, hole_height = 0.18, surface = c("flat", "saddle", "paraboloid", "ripple", "folded"), amplitude = 0.6, freq_u = 1, freq_v = 1, normalize = c("median", "mean", "none") )

Value

triangulated.pair.of.pants.surface.embedding() returns an n x 3 numeric matrix with columns x, y, and z.

triangulated.pair.of.pants.surface.graph() returns a list with components:

  • edges: the triangulated pair-of-pants edges,

  • n: number of vertices,

  • edge_weights: induced positive edge lengths,

  • coords_surface: the 3D embedding,

  • coords_param: the canonical 2D pair-of-pants coordinates,

  • weight_scale: the normalization constant applied to the raw edge lengths,

  • family: always "triangulated.pair.of.pants",

  • surface: the chosen surface name,

  • resolution: the lattice-resolution parameter,

  • label: a human-readable family label.

Arguments

resolution

Positive lattice-resolution control. Larger values produce finer triangulations.

outer_radius

Positive radius of the outer boundary.

hole_radius

Positive radius of each interior hole.

hole_offset

Positive horizontal offset of the two hole centers from the vertical axis.

hole_height

Vertical coordinate shared by the two hole centers.

surface

Geometry family used for the 3D lift. One of "flat", "saddle", "paraboloid", "ripple", or "folded".

amplitude

Finite deformation amplitude.

freq_u

Positive ripple frequency in the first planar coordinate. Used only when surface = "ripple".

freq_v

Positive ripple frequency in the second planar coordinate. Used only when surface = "ripple".

normalize

Normalization applied to the induced edge lengths. One of "median", "mean", or "none".

Details

triangulated.pair.of.pants.surface.embedding() returns the 3D coordinates of the clipped lattice vertices in the same vertex order as edges.triangulated.pair.of.pants(). triangulated.pair.of.pants.surface.graph() returns a reusable weighted-graph bundle with the pair-of-pants edges, induced edge weights, 3D embedding, and the 2D parameter coordinates of the clipped domain.