What you will learn in Geometry for Programmers
Chapter by chapter
Chapter 10: Modeling shapes with signed distance functions and surrogates
What you learn in chapter 10 →Chapter 11: Modeling surfaces with boundary representations and triangle meshes
What you learn in chapter 11 →Concepts explained in this book
- interpolationInterpolation is the construction of a function that passes exactly through specified data points.
- vector-to-vector productA vector product is an operation combining vectors, such as a dot product, cross product, or triple product, to produce a scalar or vector.
- projective transformationA projective transformation is a mapping of projective-space points represented by homogeneous linear coordinates that preserves incidence but may not preserve parallelism.
- polynomial degreeThe greatest exponent of a polynomial's variable having a nonzero coefficient.
- coefficientA coefficient is a numerical factor that multiplies a variable or term in a mathematical expression, including a polynomial term.
- voxelA voxel is a volumetric cell in a regularly sampled three-dimensional grid representing spatial data or material occupancy.
- meshA discrete geometric representation composed of connected elements such as vertices, edges, and faces.
- signed distanceA signed distance is a distance assigned a positive or negative sign according to which side of an oriented geometric object contains a point.
- linear systemA linear system is a collection of linear equations whose variables must satisfy all equations simultaneously.
- polynomial functionA polynomial is an expression formed from sums of variable powers multiplied by coefficients.
- derivativeA derivative measures the rate of change of a function with respect to an input variable.
- inner productThe dot product is a scalar product of two vectors formed by summing the products of corresponding coordinates.
- pointA point is a zero-dimensional geometric location that can serve as an element of a curve or surface.
- mathematical functionA mathematical function is a relation that assigns exactly one output to each input in its domain.
- geometric transformationA mapping that changes the position, orientation, size, shape, or other geometric properties of an object.
- gridA grid is a regularly spaced arrangement of cells or sample points used to organize geometric or numerical data.
- integralThe mathematical operation of finding accumulated quantities or antiderivatives, serving as an inverse operation to differentiation up to an additive constant.
- SymPyAn open-source Python library for symbolic mathematics, including algebraic manipulation, computation, and code generation.
- continuous functionContinuity is the property of a function having no excluded domain points within its intended domain and no abrupt changes in value.
- homogeneous coordinatesA homogeneous coordinate is an augmented coordinate representation that encodes points in projective space and supports transformations with matrix operations.
- curvatureCurvature is a quantity describing how rapidly a geometric curve or surface bends, with signed curvature carrying orientation-dependent sign.
- cubic polynomialA cubic equation is an equation containing a polynomial expression of degree three in its variable.
- scalarA scalar is a real number that scales a vector or participates in vector operations as a magnitude factor.
- hyperplaneA hyperplane is a flat affine subspace of one dimension less than its surrounding space, such as a line in two dimensions or a plane in three dimensions.
- projective spaceProjective space is a geometric space that contains Euclidean points and adds points at infinity, with points represented up to nonzero scale.
- boolean operationA Boolean operation is a geometric modeling operation that combines or modifies shapes through set-like actions such as subtraction, intersection, or union.
- Bézier curveA Bézier curve is a polynomial parametric curve defined by control points and Bernstein basis functions.
- inverse distance interpolationInverse distance interpolation is a spatial interpolation method that estimates an unknown value by weighting nearby known values according to the inverse of their distances.
- partial derivativeA partial derivative is the derivative of a multivariable function with respect to one variable while the other variables are held constant.
- rotationA rotation is a geometric transformation that turns points around a fixed center, axis, or origin while preserving distances and angles.
- gradientA gradient is a vector of partial derivatives describing the direction and rate of greatest increase of a multivariable function.
- surfaceA surface is a two-dimensional geometric set embedded in or describing a space.
- affine transformAn affine transformation is a geometric mapping that preserves straight lines and parallelism while allowing translation, rotation, scaling, and shearing.
- dilationDilation is a morphological operation that expands foreground regions or, equivalently, produces an outward offset according to a structuring element.
- parametric curveA parametric curve is a curve whose coordinates are specified as functions of one or more independent parameters.
- matrix-matrix multiplicationMatrix multiplication is an operation that combines matrices by taking row-column dot products to produce a new matrix or vector.
- codomainThe codomain of a function is the specified set containing the function's possible output values.
- domainThe domain of a function is the set of input values for which the function is defined.
- inverseAn inverse transformation is a mapping that reverses another transformation by recovering each original point from its transformed point.
- set intersectionA geometric or set operation whose result consists of elements shared by the combined objects.
- second derivativeA second derivative is the derivative of a first derivative and measures the rate of change of a function's slope or tangent direction.
- line equationA line equation is a mathematical relation whose solution set represents a geometric line.
- marching cubesMarching cubes is an isosurface extraction algorithm that approximates a three-dimensional implicit surface with triangles from scalar samples on a grid.
- dual contouringDual contouring is an isosurface extraction algorithm that places one optimized vertex in each active grid cell and connects neighboring vertices across sign-changing edges.
- triple productThe triple product is the scalar obtained by taking the dot product of one vector with the cross product of two other vectors, equal to the signed volume of their parallelepiped.
- box productA box product is the two-dimensional determinant-like product of vector components used to determine the relative orientation of planar vectors.
- differentiationDifferentiation is the mathematical operation of computing derivatives of functions or expressions.
- identity elementAn identity element is an element that leaves every compatible element unchanged when combined under an operation.
- symbolic solutionA symbolic solution is an algebraic solution expressed in terms of symbols and parameters rather than only evaluated numbers.
- rootA polynomial root is a value of the variable at which the polynomial evaluates to zero.
- NURBS modelA surface representation constructed from weighted control points, knot vectors, and polynomial basis functions within the NURBS framework.
- ordinary least squaresLeast squares is a technique that chooses model parameters by minimizing the sum of squared discrepancies between predicted and observed values.
- signed areaSigned area is an oriented two-dimensional area whose sign records the ordering and orientation of the spanning vectors.
- approximationThe representation of a mathematical object or data set by another function or model that is close to it rather than necessarily exact.
- surface of revolutionA surface of revolution is a surface generated by rotating a curve around an axis.
- computed tomographyAn imaging technique that reconstructs cross-sectional or volumetric representations of internal structures from measurements taken around an object, typically x-ray measurements.
- bilinear functionA bilinear expression is a polynomial expression that is linear in each of two variables and may contain their product.
- projectionA mapping that sends a point or vector to a corresponding point or vector on a specified geometric object or subspace.
- Vandermonde matrixA Vandermonde matrix is a matrix whose rows contain successive powers of specified input values and which arises in polynomial interpolation systems.
- Maclaurin seriesA Maclaurin series is a power series representing a function using its derivatives evaluated at zero.
- Taylor seriesA Taylor series is a power series whose coefficients are determined by the derivatives of a function at a specified center.
- system of equationsA system of equations is a set of equations whose variables are solved subject to all equations simultaneously.
- splineA polynomial spline is a piecewise polynomial curve joined with prescribed smoothness conditions.
- linear dependenceLinear dependence is a relationship in which one equation, vector, or other linear object can be expressed as a linear combination of others.
- radiusA radius is a line segment or distance from the center of a circle to a point on its circumference.
- mean errorMean error is the average magnitude or signed difference between modeled values and reference values over an evaluation set.
- odd polynomialAn odd polynomial is a polynomial satisfying P(x) = -P(-x), so all of its nonzero terms have odd degree.
- signed volumeSigned volume is an oriented measure of the volume spanned by vectors, with sign determined by their ordering and orientation.
- erosionErosion is a morphological operation that shrinks foreground regions or, equivalently, produces an inward offset according to a structuring element.
- cofactor transpositionCofactor transposition is the construction of a transposed cofactor matrix that represents a matrix inverse up to multiplication by the determinant.
- matrix algebraMatrix algebra is the algebraic study of matrices and operations such as addition, multiplication, and inversion.
- line segmentA finite portion of a line bounded by two endpoints.
- computer algebra systemA computer algebra system is software that performs exact or symbolic mathematical manipulation and computation.
- smoothnessSmoothness is the degree to which a mathematical function or geometric object lacks discontinuities, sharp joins, or abrupt changes in direction.
- triangleA polygon bounded by three line segments joining three noncollinear vertices.
- rational Bézier curveA rational Bézier curve is a Bézier curve defined using weighted basis functions normalized by their weighted sum.
- principal curvatureA principal curvature is an extremal signed curvature of a smooth surface at a point, obtained from normal sections in principal directions.
- profile curveA profile curve is a curve describing how the radius of a rotational surface varies with height or another axial coordinate.
- continuous deformation fieldA deformation field is a vector field that specifies how points should be moved according to their positions.
- contourA curve representing the boundary of a model cross-section or printable layer.
- manifold meshA polygonal mesh whose local topology satisfies the manifold property, giving it consistently surface-like neighborhoods.
- distanceDistance is a nonnegative measure of separation between points or between a point and a geometric set.
- planeA plane is a flat two-dimensional geometric surface extending indefinitely in two independent directions.
- basis functionA Bézier basis polynomial is a polynomial factor that weights one value or control point in a Bézier formula.
- order of continuityThe regularity class requiring continuous first derivatives in addition to continuity.
- polylineA polyline is an ordered sequence of connected line segments represented by their successive points.
- Hounsfield unitA Hounsfield unit is a standardized measure of x-ray radiodensity relative to water in computed tomography.
- radiodensityRadiodensity is a measure of a material's attenuation or absorption of X-rays in medical imaging.
- channelA color channel is one component of a digital color representation, such as red, green, blue, or alpha.
- NumPyNumPy is a Python library for numerical computing with multidimensional arrays and mathematical operations.
- image vectorizationImage vectorization is the conversion of raster or scanned image data into vector-based geometric representations.
- interpolantAn interpolant is a function or mathematical expression that matches specified data values at selected inputs.
- translationA translation is a geometric transformation that shifts every point by the same distance in the same direction.
- orthogonalityOrthogonal describes vectors or directions that are perpendicular to each other.
- point at infinityA point at infinity is a projective point with zero homogeneous scale that represents a direction or limiting location beyond Euclidean space.
- basis vectorA basis vector is a vector in a basis whose scaled combinations represent vectors in the associated vector space.
- cellA grid cell is an elementary bounded region of a regular spatial grid used to organize sampled values and geometric reconstruction.
- triangle qualityTriangle quality is the geometric suitability or regularity of a triangle as evaluated by properties such as its angles, side lengths, or aspect ratios.
- quadratic splineA quadratic spline is a spline assembled from polynomial pieces of degree two with prescribed joining conditions.
- bitmapA bitmap is a digital image represented as a grid of individually addressable pixels.
- free coefficientA free coefficient is the constant term in a linear equation that is not multiplied by an unknown variable.
- transpositionA matrix transpose is the matrix obtained by exchanging a matrix's rows and columns.
- code generationCode generation is the automatic translation of a representation or formula into source code in a target programming language.
- symbolic mathematicsSymbolic mathematics is the manipulation and solution of mathematical expressions in terms of symbols rather than only numerical values.
- biarcA biarc is a curve segment composed of two circular arcs joined with continuous position and tangent direction.
- control pointA control point is a point whose position influences the shape or position of a spline or other parametric geometric representation.
- curveA curve is a continuous geometric object representing a one-dimensional path in space.
- lineA line is a straight one-dimensional geometric object extending without curvature.
- Runge phenomenonThe Runge phenomenon is the growth of oscillatory interpolation error near interval endpoints when using high-degree polynomial interpolation at unsuitable nodes.
- arcAn arc is a connected portion of a curve, especially a portion of a circle bounded by endpoint angles.
- slopeA slope is a numerical measure of a line's change in vertical coordinate relative to its change in horizontal coordinate.
- tangentA tangent line is the line that touches a curve at a point and represents the curve's instantaneous direction there.
- biquadratic polynomialA biquadratic polynomial is a two-variable polynomial with degree at most two in each variable.
- biquadratic transformationA biquadratic transformation is a mapping described by expressions that are quadratic in each of two input variables.
- nine-point transformationA nine-point transformation is a two-dimensional polynomial transformation whose two coordinate polynomials each contain nine coefficient terms.
- tensorA multidimensional array is an indexed data structure containing values arranged along two or more dimensions.
- degenerate triangleA degenerate triangle is a triangle with zero area because its vertices coincide or are collinear.
- Gaussian eliminationGauss elimination is a procedure for solving a linear system by systematically eliminating variables from its equations.
- linear approximationA linear approximation is a linear function used to approximate another function over a small interval or near a point.
- rangeThe range of a function is the set of output values that the function actually produces.
- relationA relation is a rule or set of associations that links elements of one set with elements of another set without requiring unique outputs.
- polynomial parametric curveA polynomial parametric curve is a curve whose coordinate functions are polynomials in its parameter.
- rayA ray is a geometric object consisting of an endpoint and all points extending indefinitely in one direction from it.
- implicit equationAn implicit form describes a geometric object through an equation or set of equations that its points satisfy.
- lighting direction vectorA lighting direction vector is a normalized vector directed from a shaded point toward a light source.
- normal mappingNormal mapping is a rendering technique that uses a texture to perturb surface normals without changing the underlying geometry.
- smooth shadingSmooth shading is a rendering technique that interpolates surface normals or related attributes across polygonal faces to produce gradual visual variation.
- orientationOrientation is the ordered directional arrangement of geometric points, vectors, or vertices, such as clockwise versus counterclockwise order.
- boundary representationA boundary representation is a geometric model that represents a solid through its bounding surfaces, curves, and vertices.
- MatplotlibMatplotlib is a Python library for creating static, animated, and interactive visualizations.
- Vandermonde-like systemA Vandermonde system is a linear system whose coefficient matrix contains successive powers of distinct parameter or input values.
- explicit functionAn explicit equation expresses one variable directly as a function of other variables to construct points on a geometric object.
- parametric cubicA cubic polynomial curve is a curve whose coordinate functions are polynomials of degree at most three.
- circumscribed circleA circumcircle is the smallest circle containing a triangle and passing through all three of its vertices.
- incircleAn incircle is the largest circle contained within a triangle and tangent to all three of its edges.
- capA cap is a degenerate triangle whose three distinct vertices lie on the same line.
- needleA needle is a degenerate triangle in which two vertices coincide, producing a sharp endpoint and a coincident pair of vertices.
- plane pickingPlane picking is the selection of connected mesh triangles that lie in a specified geometric plane.
- near-degenerate triangleA nonzero-area triangle whose extreme thinness makes geometric computations numerically error-prone.
- rin/rout metricThe Rin/Rout metric is the ratio of a triangle's incircle radius to its circumcircle radius.
- topologyTopology is the study of properties of geometric objects that remain unchanged under continuous deformations.
- offset operationA geometric offset is a curve, surface, or region constructed at a specified distance from another geometric object.
- marching squaresThe marching-squares algorithm extracts a piecewise-linear contour from scalar values sampled on a two-dimensional grid.
- 3D imageA 3D image is a three-dimensional sampled representation of geometry or spatial data arranged as image-like values.
- hybrid modelA hybrid model is a geometric representation that combines smooth surface elements and triangle mesh elements in one model or across interchangeable representations.
- quasi-signed distance functionA quasi-signed distance function is an approximate scalar field whose values indicate signed proximity to a target surface without necessarily equaling true signed distance.
- continuous color functionA continuous color function maps spatial coordinates to color values while varying continuously across the image domain.
- Gaussian curvatureGaussian curvature is the product of the two principal curvatures at a surface point.
- mean curvatureMean curvature is half the sum of the two principal curvatures at a surface point.
- mesh reductionThe technique of decreasing a mesh's element count while preserving its important shape characteristics within acceptable error.
- point-in-triangle predicateA point-in-triangle predicate determines whether a point lies inside, on the boundary of, or outside a specified triangle.
- relative orientation criterionA relative orientation criterion determines a point's position relative to directed triangle sides by testing the signs of their oriented areas or cross products.
- plane equationA plane equation is a linear relation whose solution set represents a plane in three-dimensional space.
- 3d sculpting3D sculpting is a modeling technique in which an artist directly shapes a highly detailed digital three-dimensional form.
- hybrid representationA hybrid representation combines voxel-based geometry with additional surface information stored at or near boundary voxels.
- level of detailA level of detail is a geometric model at a selected complexity or resolution for rendering or computation.
- basis polynomialA basis polynomial for interpolation is a polynomial that equals one at its associated data-point input and zero at the other interpolation inputs.
- parallelotopeA parallelotope is a geometric region spanned by a finite set of vectors, generalizing parallelograms and parallelepipeds to arbitrary dimensions.
- geometric deformationDeformation modeling is the construction of changed geometric objects by applying a position-dependent displacement function.
- parallelepipedA parallelepiped is a three-dimensional polyhedron with six parallelogram faces arranged in three pairs of parallel planes.
- matrix inversionMatrix inversion is the operation of finding a matrix that multiplies with a given matrix to produce an identity matrix, when such a matrix exists.
- asymptotic notationAsymptotic notation describes the growth rate of a function as its input becomes large while abstracting away lower-order terms and constant factors.
- arc-and-segment pieceAn arc-and-segment piece is a geometric curve segment composed of a circular arc joined smoothly to a straight line segment.
- extremumAn extremum is a local or global minimum or maximum of a function.
- vector normalizationNormalization is the property or operation of making a vector have length one.
- cubic polynomial approximationCubic interpolation is the construction of a polynomial interpolation function of degree three from specified data points.
- standard squareA standard square is a normalized square coordinate region used as an intermediate domain for planar transformations.
- function typeA function type specifies the kinds of inputs and outputs a function accepts, including its domain and codomain.
- scalar fieldA scalar field is a function that assigns a scalar value to each point in a domain.
- set unionA geometric union is a Boolean set operation containing every point belonging to at least one of two or more shapes.
- vector fieldA vector field is a function that assigns a vector to each point in a domain.
- determinantA determinant is a scalar computed from a square matrix that encodes algebraic properties such as invertibility and signed volume scaling.
- algebraic structureAn algebraic system is a set of mathematical entities together with defined operations and rules for manipulating them.
- symbolic computationSymbolic computation is the manipulation of mathematical expressions and objects symbolically rather than only evaluating them numerically.
- segmentation maskAn image mask is a 3D image whose cells indicate, typically with a single bit, whether corresponding spatial regions belong to a selected object or structure.
- ray-triangle intersectionRay-triangle intersection is the geometric computation of determining whether a ray intersects a triangle and, if so, finding the intersection point.
- convex quadrilateralA quadrilateral is a polygon bounded by four line segments joining four vertices.
- rectangular-to-quadrilateral transformationA quadrilateral-to-rectangular transformation is a projective mapping from a quadrilateral image region to a rectangular output domain.
- gyroidA gyroid is a triply periodic minimal surface with a continuous labyrinthine structure and zero mean curvature.
- linear transformationA linear transformation is a mapping in which each output coordinate is a linear combination of the input coordinates and the origin maps to the origin.
- symbolic solverA symbolic solver is a computational procedure or software component that derives algebraic solutions in symbolic form.
- quadratic interpolationQuadratic interpolation is the construction of a polynomial interpolation function of degree two from specified data points.
- convergenceConvergence is the property of an iterative algorithm progressively approaching a solution, often characterized by the rate of that approach.
- position vectorA point vector is a vector conventionally interpreted as representing a point by its components from the origin.
- vector operationA vector operation is a mathematical operation such as vector addition or scalar multiplication that produces or transforms vectors.
- two-point transformationA two-point transformation is a linear transformation specified by the destinations of a pair of input points.
- numerical errorNumerical error is the discrepancy between a computed result and the exact mathematical solution.
- metaballA metaball is a smooth implicit-shape blending technique that combines field contributions from multiple centers to produce organic-looking forms.
- numerical solutionA numerical or numeric solution is a solution represented by evaluated numerical values rather than symbolic expressions.
- derivative rootA derivative root is an input value at which the derivative of a function equals zero.
- locally optimal solutionA local minimum is a point whose function value is no greater than the values at all sufficiently nearby inputs.
- denoisingDenoising is the removal or reduction of unwanted variation and artifacts in sampled image data while preserving meaningful structure.
These guides are generated from the text of Manning books by Manning's knowledge graph and link to the sections they draw on. The full books are available on liveBook and at manning.com.
