HOME

TheInfoList



OR:

Function Representation (FRep or F-Rep) is used in
solid modeling Solid modeling (or solid modelling) is a consistent set of principles for mathematical and computer modeling of three-dimensional shapes '' (solids)''. Solid modeling is distinguished from related areas of geometric modeling and computer graphi ...
, volume modeling and
computer graphics Computer graphics deals with generating images with the aid of computers. Today, computer graphics is a core technology in digital photography, film, video games, cell phone and computer displays, and many specialized applications. A great de ...
. FRep was introduced in "Function representation in geometric modeling: concepts, implementation and applications" as a uniform representation of multidimensional geometric objects (shapes). An object as a point set in multidimensional space is defined by a single continuous real-valued function f(X) of point coordinates X _1,x_2, ..., x_n/math> which is evaluated at the given point by a procedure traversing a tree structure with primitives in the leaves and operations in the nodes of the tree. The points with f(x_1,x_2, ..., x_n) \ge 0 belong to the object, and the points with f(x_1,x_2, ..., x_n) < 0 are outside of the object. The point set with f(x_1,x_2, ..., x_n)=0 is called an
isosurface An isosurface is a three-dimensional analog of an isoline. It is a surface that represents points of a constant value (e.g. pressure, temperature, velocity, density) within a volume of space; in other words, it is a level set of a continuous fu ...
.


Geometric domain

The geometric domain of FRep in 3D space includes solids with
non-manifold model In solid modeling and computer-aided design, boundary representation (often abbreviated B-rep or BREP) is a method for representing a 3D shape by defining the limits of its volume. A solid is represented as a collection of connected surface ...
s and lower-dimensional entities (surfaces, curves, points) defined by zero value of the function. A primitive can be defined by an equation or by a "black box" procedure converting point coordinates into the function value. Solids bounded by algebraic surfaces, skeleton-based
implicit surface In mathematics, an implicit surface is a surface in Euclidean space 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 o ...
s, and convolution surfaces, as well as procedural objects (such as solid noise), and voxel objects can be used as primitives (leaves of the construction tree). In the case of a voxel object (discrete field), it should be converted to a continuous real function, for example, by applying the trilinear or higher-order interpolation. Many operations such as set-theoretic, blending, offsetting, projection, non-linear deformations, metamorphosis, sweeping, hypertexturing, and others, have been formulated for this representation in such a manner that they yield continuous real-valued functions as output, thus guaranteeing the closure property of the representation.
R-function In mathematics, an R-function, or Rvachev function, is a real-valued function whose sign does not change if none of the signs of its arguments change; that is, its sign is determined solely by the signs of its arguments. Interpreting positive val ...
s originally introduced in V.L. Rvachev's "On the analytical description of some geometric objects", provide C^k continuity for the functions exactly defining the set-theoretic operations (min/max functions are a particular case). Because of this property, the result of any supported operation can be treated as the input for a subsequent operation; thus very complex models can be created in this way from a single functional expression. FRep modeling is supported by the special-purpose language
HyperFun HyperFun (from Hyperdimensional Functions) is a programming language{{cite web , work = HyperFun language specification, version 2.0 , title = HyperFun: Language for FRep Volume Modeling , url = http://hyperfun.org/wiki/doku.php?id=hyperfun:la ...
.


Shape Models

FRep combines and generalizes different shape models like * algebraic surfaces * skeleton based "implicit" surfaces * set-theoretic solids or CSG (
Constructive Solid Geometry Constructive solid geometry (CSG; formerly called computational binary solid geometry) is a technique used in solid modeling. Constructive solid geometry allows a modeler to create a complex surface or object by using Boolean operators to combi ...
) * sweeps * volumetric objects * parametric models * procedural models A more general "constructive hypervolume" allows for modeling multidimensional point sets with attributes (volume models in 3D case). Point set geometry and attributes have independent representations but are treated uniformly. A point set in a geometric space of an arbitrary dimension is an FRep based geometric model of a real object. An attribute that is also represented by a real-valued function (not necessarily continuous) is a mathematical model of an object property of an arbitrary nature (material, photometric, physical, medicine, etc.). The concept of "implicit complex" proposed in "Cellular-functional modeling of heterogeneous objects"V. Adzhiev, E. Kartasheva, T. Kunii, A. Pasko, B. Schmitt, "Cellular-functional modeling of heterogeneous objects", Proc. 7th ACM Symposium on Solid Modeling and Applications, Saarbrücken, Germany, ACM Press, 2002, pp. 192-203. 3-540-65620-0 provides a framework for including geometric elements of different dimensionality by combining polygonal, parametric, and FRep components into a single cellular-functional model of a heterogeneous object.


See also

*
Boundary representation In solid modeling and computer-aided design, boundary representation (often abbreviated B-rep or BREP) is a method for representing a 3D shape by defining the limits of its volume. A solid is represented as a collection of connected surface el ...
*
Constructive Solid Geometry Constructive solid geometry (CSG; formerly called computational binary solid geometry) is a technique used in solid modeling. Constructive solid geometry allows a modeler to create a complex surface or object by using Boolean operators to combi ...
*
Solid modeling Solid modeling (or solid modelling) is a consistent set of principles for mathematical and computer modeling of three-dimensional shapes '' (solids)''. Solid modeling is distinguished from related areas of geometric modeling and computer graphi ...
*
Isosurface An isosurface is a three-dimensional analog of an isoline. It is a surface that represents points of a constant value (e.g. pressure, temperature, velocity, density) within a volume of space; in other words, it is a level set of a continuous fu ...
*
Signed distance function In mathematics and its applications, the signed distance function (or oriented distance function) is the orthogonal distance of a given point ''x'' to the boundary of a set Ω in a metric space, with the sign determined by whether or not ''x'' i ...
*
HyperFun HyperFun (from Hyperdimensional Functions) is a programming language{{cite web , work = HyperFun language specification, version 2.0 , title = HyperFun: Language for FRep Volume Modeling , url = http://hyperfun.org/wiki/doku.php?id=hyperfun:la ...
* Digital materialization


References

{{Reflist


External links

* http://hyperfun.org/FRep/ * https://github.com/cbiffle/ruckus * http://libfive.com/ * http://www.implicitcad.org/ Geometric algorithms Computer graphics 3D computer graphics