HOME

TheInfoList



OR:

In
mathematics Mathematics is a field of study that discovers and organizes methods, Mathematical theory, theories and theorems that are developed and Mathematical proof, proved for the needs of empirical sciences and mathematics itself. There are many ar ...
, an implicit surface is a surface in
Euclidean space Euclidean space is the fundamental space of geometry, intended to represent physical space. Originally, in Euclid's ''Elements'', it was the three-dimensional space of Euclidean geometry, but in modern mathematics there are ''Euclidean spaces ...
defined by an equation : F(x,y,z)=0. An ''implicit surface'' is the set of zeros of a function of three variables. '' Implicit'' means that the equation is not solved for or or . The graph of a function is usually described by an equation z=f(x,y) and is called an ''explicit'' representation. The third essential description of a surface is the '' parametric'' one: (x(s,t),y(s,t), z(s,t)), where the -, - and -coordinates of surface points are represented by three functions x(s,t)\, , y(s,t)\, , z(s,t) depending on common parameters s,t. Generally the change of representations is simple only when the explicit representation z=f(x,y) is given: z-f(x,y)=0 (implicit), (s,t,f(s,t)) (parametric). ''Examples'': #The plane x+2y-3z+1=0. #The
sphere A sphere (from Ancient Greek, Greek , ) is a surface (mathematics), surface analogous to the circle, a curve. In solid geometry, a sphere is the Locus (mathematics), set of points that are all at the same distance from a given point in three ...
x^2+y^2+z^2-4=0. #The
torus In geometry, a torus (: tori or toruses) is a surface of revolution generated by revolving a circle in three-dimensional space one full revolution about an axis that is coplanarity, coplanar with the circle. The main types of toruses inclu ...
(x^2+y^2+z^2+R^2-a^2)^2-4R^2(x^2+y^2)=0. #A surface of
genus Genus (; : genera ) is a taxonomic rank above species and below family (taxonomy), family as used in the biological classification of extant taxon, living and fossil organisms as well as Virus classification#ICTV classification, viruses. In bino ...
2: 2y(y^2-3x^2)(1-z^2)+(x^2+y^2)^2-(9z^2-1)(1-z^2)=0 (see diagram). #The
surface of revolution A surface of revolution is a Surface (mathematics), surface in Euclidean space created by rotating a curve (the ''generatrix'') one full revolution (unit), revolution around an ''axis of rotation'' (normally not Intersection (geometry), intersec ...
x^2+y^2-(\ln(z+3.2))^2-0.02=0 (see diagram ''wineglass''). For a plane, a sphere, and a torus there exist simple parametric representations. This is not true for the fourth example. The implicit function theorem describes conditions under which an equation F(x,y,z)=0 can be solved (at least implicitly) for , or . But in general the solution may not be made explicit. This theorem is the key to the computation of essential geometric features of a surface:
tangent plane In geometry, the tangent line (or simply tangent) to a plane curve at a given point is, intuitively, the straight line that "just touches" the curve at that point. Leibniz defined it as the line through a pair of infinitely close points o ...
s, surface normals, curvatures (see below). But they have an essential drawback: their visualization is difficult. If F(x,y,z) is polynomial in , and , the surface is called algebraic. Example 5 is ''non''-algebraic. Despite difficulty of visualization, implicit surfaces provide relatively simple techniques to generate theoretically (e.g. Steiner surface) and practically (see below) interesting surfaces.


Formulas

Throughout the following considerations the implicit surface is represented by an equation F(x,y,z)=0 where function F meets the necessary conditions of differentiability. The
partial derivative In mathematics, a partial derivative of a function of several variables is its derivative with respect to one of those variables, with the others held constant (as opposed to the total derivative, in which all variables are allowed to vary). P ...
s of F are F_x,F_y,F_z,F_,\ldots.


Tangent plane and normal vector

A surface point (x_0, y_0,z_0) is called regular
if and only if In logic and related fields such as mathematics and philosophy, "if and only if" (often shortened as "iff") is paraphrased by the biconditional, a logical connective between statements. The biconditional is true in two cases, where either bo ...
the
gradient In vector calculus, the gradient of a scalar-valued differentiable function f of several variables is the vector field (or vector-valued function) \nabla f whose value at a point p gives the direction and the rate of fastest increase. The g ...
of F at (x_0, y_0,z_0) is not the zero vector (0, 0, 0), meaning : (F_x(x_0,y_0,z_0),F_y(x_0,y_0,z_0),F_z(x_0,y_0,z_0))\ne (0,0,0). If the surface point (x_0, y_0,z_0) is ''not'' regular, it is called singular. The equation of the tangent plane at a regular point (x_0,y_0,z_0) is :F_x(x_0,y_0,z_0)(x-x_0)+F_y(x_0,y_0,z_0)(y-y_0)+F_z(x_0,y_0,z_0)(z-z_0)=0, and a ''normal vector'' is : \mathbf n(x_0,y_0,z_0)=(F_x(x_0,y_0,z_0),F_y(x_0,y_0,z_0),F_z(x_0,y_0,z_0))^T.


Normal curvature

In order to keep the formula simple the arguments (x_0,y_0,z_0) are omitted: : \kappa_n = \frac is the normal curvature of the surface at a regular point for the unit tangent direction \mathbf v. H_F is the
Hessian matrix In mathematics, the Hessian matrix, Hessian or (less commonly) Hesse matrix is a square matrix of second-order partial derivatives of a scalar-valued Function (mathematics), function, or scalar field. It describes the local curvature of a functio ...
of F (matrix of the second derivatives). The proof of this formula relies (as in the case of an implicit curve) on the implicit function theorem and the formula for the normal curvature of a parametric surface.


Applications of implicit surfaces

As in the case of implicit curves it is an easy task to generate implicit surfaces with desired shapes by applying algebraic operations (addition, multiplication) on simple primitives.


Equipotential surface of point charges

The electrical potential of a point charge q_i at point \mathbf p_i=(x_i,y_i,z_i) generates at point \mathbf p=(x,y,z) the potential (omitting physical constants) : F_i(x,y,z)=\frac. The equipotential surface for the potential value c is the implicit surface F_i(x,y,z)-c=0 which is a sphere with center at point \mathbf p_i. The potential of 4 point charges is represented by : F(x,y,z)=\frac+ \frac+ \frac+\frac. For the picture the four charges equal 1 and are located at the points (\pm 1,\pm 1,0). The displayed surface is the equipotential surface (implicit surface) F(x,y,z)-2.8=0.


Constant distance product surface

A Cassini oval can be defined as the point set for which the product of the distances to two given points is constant (in contrast, for an ellipse the ''sum'' is constant). In a similar way implicit surfaces can be defined by a constant distance product to several fixed points. In the diagram ''metamorphoses'' the upper left surface is generated by this rule: With : \begin F(x,y,z) = & \sqrt\cdot \sqrt \\ & \quad \cdot \sqrt\cdot\sqrt \end the constant distance product surface F(x,y,z)-1.1=0 is displayed.


Metamorphoses of implicit surfaces

A further simple method to generate new implicit surfaces is called ''metamorphosis'' or ''
homotopy In topology, two continuous functions from one topological space to another are called homotopic (from and ) if one can be "continuously deformed" into the other, such a deformation being called a homotopy ( ; ) between the two functions. ...
'' of implicit surfaces: For two implicit surfaces F_0(x,y,z)=0, F_1(x,y,z)=0 (in the diagram: a constant distance product surface and a torus) one defines new surfaces using the design parameter \mu \in ,1/math>: :F_\mu (x,y,z)=\mu F_1(x,y,z)+(1-\mu)\,F_0(x,y,z)=0 In the diagram the design parameter is successively \mu=0, \, 0.33, \, 0.66, \, 1 .


Smooth approximations of several implicit surfaces

\Pi-surfaces can be used to approximate any given smooth and bounded object in R^3 whose surface is defined by a single polynomial as a product of subsidiary polynomials. In other words, we can design any smooth object with a single algebraic surface. Let us denote the defining polynomials as f_i\in\mathbb _1,\ldots,x_ni=1,\ldots,k). Then, the approximating object is defined by the polynomial :F(x,y,z) = \prod_i f_i(x,y,z) - r where r\in\mathbb stands for the blending parameter that controls the approximating error. Analogously to the smooth approximation with implicit curves, the equation :F(x,y,z)=F_1(x,y,z)\cdot F_2(x,y,z)\cdot F_3(x,y,z) -r= 0 represents for suitable parameters c smooth approximations of three intersecting tori with equations : \begin F_1=(x^2+y^2+z^2+R^2-a^2)^2-4R^2(x^2+y^2)=0, \\ ptF_2=(x^2+y^2+z^2+R^2-a^2)^2-4R^2(x^2+z^2)=0, \\ ptF_3=(x^2+y^2+z^2+R^2-a^2)^2-4R^2(y^2+z^2)=0. \end (In the diagram the parameters are R=1, \, a=0.2, \, r=0.01.)


Visualization of implicit surfaces

There are various algorithms for rendering implicit surfaces, including the marching cubes algorithm. Essentially there are two ideas for visualizing an implicit surface: One generates a net of polygons which is visualized (see surface triangulation) and the second relies on ray tracing which determines intersection points of rays with the surface. The intersection points can be approximated by ''sphere tracing'', using a signed distance function to find the distance to the surface.


External links


Implicit surface software


Free implicit surface software

Open-source or free software supporting algebraic implicit surface modelling:
K3DSurf
— A program to visualize and manipulate Mathematical models in 3-6 dimensions. K3DSurf supports Parametric equations and Isosurfaces * CGAL (Computational Geometry Algorithms Library), written in C++, has strong support for implicit surface modeling (Boolean operations on implicit surfaces, Surface meshing for visualization, Implicit curve arrangements). * PyVista, a Python wrapper around VTK for easier handling of implicit surfaces. Simplified API for rendering and manipulating implicit surfaces. It can integrate with numpy. * Some Blender add-ons (metaballs and volumetric modeling for implicit surfaces, and scripting support for custom implicit functions). * SculptsFEM (for solving PDEs on implicit surfaces, Implicit curve generation) * ImpliSolid (open-source), supports sharp edges. * Houdini (supports implicit surface modeling using SDFs and procedural techniques). Houdini Apprentice License is free. * POV-Ray (Persistence of Vision Raytracer) has built-in support for defining complex implicit surfaces. * Vision-based surface reconstruction use implicit functions for statistical modelling of surfaces: SDFStudio, Geo-Neus, PointSDF, etc. * Various other software exist for polygonization of implicit surfaces, in context of Marching cubes, and in general Image-based meshing and Mesh generation, but they are not necessary based on an algebraic close-form field.


Industrial or commercial software using implicit surface software

* Altair InspireWelch, Ken. "Altair Inspire 2023: ... Implicit Modeling Solution." Altair Blog, 30 November 2023. Available at

Accessed 20 January 2025.
* Studio RM, a Geologic modelling software by Datamine Software. *
Maple ''Acer'' is a genus of trees and shrubs commonly known as maples. The genus is placed in the soapberry family Sapindaceae.Stevens, P. F. (2001 onwards). Angiosperm Phylogeny Website. Version 9, June 2008 nd more or less continuously updated si ...
has a library for plotting implicit surfaces.


See also

* Implicit curve


References


Further reading

*Gomes, A., Voiculescu, I., Jorge, J., Wyvill, B., Galbraith, C.:
Implicit Curves and Surfaces: Mathematics, Data Structures and Algorithms
', 2009, Springer-Verlag London, *Thorpe: ''Elementary Topics in Differential Geometry'', Springer-Verlag, New York, 1979, Surfaces Computer-aided design Geometry processing Implicit surface modeling {{Mesh generation