Function representation for sweeping by a moving solid

Alexi I. Sourin, Alexander A.pasko

Research output: Contribution to journalArticlepeer-review

43 Citations (Scopus)


This paper studies a function representation of point sets swept by moving solids. The original solid-generator is defined by an inequality f(x, y, z, f) > 0 where x, y, z are Cartesian coordinates and fis treated as the time. This definition allows us to include solids which change their shapes in time. Constructive solids can be used as generators also when described by H-functions. The trajectory of the generator can be defined in parametric form as movement of its local coordinate system. In the paper, we did it with superposition of time-dependent affine transformations. To get the function representation F(x, y, z) > 0 of the swept solid, we apply the concept of envelope used before basically for boundary represented objects. We have reduced the problem of swept solid description to global extremum search by /variable. The algorithm of procedural swept solid modeling is discussed. The benefit of our model is that it is applied not only for visualization but allows one to use the swept solid as an argument for other operations. For example, the swept solid can be intersected with other ones that are useful for the implementation of such operations as cutting and drilling. Ordinary texture mapping and hypertexturing can also be applied to it. The possibility of using a functionally defined generator with the variable shape allows us to achieve a complexity of the swept solids which was hardly possible before.

Original languageEnglish
Pages (from-to)11-18
Number of pages8
JournalIEEE Transactions on Visualization and Computer Graphics
Issue number1
Publication statusPublished - 1996
Externally publishedYes


  • Function representation
  • R-functions
  • Solid modeling
  • Sweeping, implicit functions


Dive into the research topics of 'Function representation for sweeping by a moving solid'. Together they form a unique fingerprint.

Cite this