Set-theoretic (Boolean) operations play a
key role in solid geometric modeling and are widely used to construct complex
objects by combining simpler shapes. The main Boolean operations include union,
intersection, and difference of geometric objects. These operations make it
possible to merge two or more shapes into one, find their intersections, or
subtract one or several shapes from another. Boolean operations are broadly
applied in CAD systems, engineering design, and physical object modeling, and
their implementation has been extensively discussed in both domestic [1] and
international [2–5] research.
The union operation creates a single object
that includes all areas occupied by each of the original objects. From the
set-theoretic perspective, it encompasses all points of the first and second
objects, as well as those in the overlapping region.
The difference operation subtracts one
object from another, leaving only the part of the first object that does not
intersect with the second.
The intersection operation produces a new
object consisting solely of the region where the two original objects overlap.
The implementation of Boolean operations in
computer-aided design (CAD) systems has always involved a number of challenges
[6–8], such as: continuous recalculation and trimming of surfaces at the
intersection points of objects; adjustment of edge and vertex connectivity to
preserve the topological integrity of constructed models; ensuring correct
topology to enable further operations on the models; difficulties in
analytically describing complex shapes resulting from subtraction or
intersection; the need for accurate detection of intersection regions, often
requiring substantial computational resources.
Key aspects of Boolean operations in geometric
modeling include working with solid representations such as boundary
representation (B-rep), constructive solid geometry (CSG), or voxel models.
Boolean operations in such systems require precise computation of new
boundaries that arise from intersections. Challenges stem from computational
complexity, rounding errors, and numerical instability in object
representation. For example, in B-rep, Boolean operations significantly affect
the object’s topology by altering the structure of faces, edges, and vertices:
the number of these elements may change, edges and vertices may split or merge,
and the creation of valid boundaries and closed surfaces becomes problematic.
This can result in incorrect intersections and invalid geometries.
One significant challenge is the reliable
execution of Boolean operations on objects with complex or imperfect
boundaries. For instance, if object boundaries are not closed or violate B-rep
rules, the results may be incorrect. Precision-related issues also arise,
especially in cases where objects intersect over small areas or are nearly
tangent, which can lead to errors such as loss of geometry or surface
artifacts.
Researchers in geometric modeling have
proposed various algorithms to improve the accuracy and robustness of Boolean
operations. Approaches include procedural and adaptive modeling techniques that
reduce errors by more accurately representing and handling intersections.
Recent efforts focus on integrating Boolean operations into modern computing
environments using GPUs and parallel computing, significantly accelerating
performance.
Despite considerable progress, the problem
of improving the reliability and efficiency of Boolean operations remains
relevant. Current research aims to develop algorithms that work with arbitrarily
complex objects and scale effectively for large models used in architecture,
mechanical engineering, and medical visualization.
The use of point calculus in modeling
Boolean operations on solid objects offers potential solutions to many of these
issues or reduces their complexity. For example, concerns related to storing
and processing topological information do not apply to models constructed using
point calculus [9,10], as all geometric and spatial information is inherently
embedded in a single point-based equation.
It should be noted that within the
framework of point calculus, studies focused specifically on set-theoretic
operations have not yet been conducted.
Methods for implementing set-theoretic
operations in point calculus are currently under development, and a unified
approach has not yet been established. This section considers several classes
of solids with various configurations of cutouts and holes.
The simplest to implement in point calculus
are bodies of revolution with axial holes. Their construction relies on a
geometric scheme in which the current point of the body begins its movement
from the axis. To create such solid models, it is sufficient to adjust the
bounds of a linear parameter responsible for filling the interior of the body.
As an example, consider the cylindrical model discussed in [12]. Its point
equation takes the following form:
The linear parameter
,
defined in the range from 0 to 1, is
responsible for filling the internal space of the cylinder with points. If, for
instance, it is limited to the range from 0.5 to 1, the resulting model will be
a cylinder with an axial hole whose diameter equals half the diameter of the
original cylinder (see visualization in Fig. 2a). Notably, no modification of
the point equation is required—only the parameter's range needs adjustment.
This modeling technique is suitable for all bodies of revolution that require
an axial hole shaped similarly to the original body. Consequently, it
significantly simplifies the task of constructing channel-like bodies, as
discussed in [11], since there is no need to analytically account for the
channel wall, thereby simplifying the resulting equation.
If the shape of the hole differs from that
of the body, another modeling technique must be applied. It involves generating
an equation for the hole’s shell and connecting it to the shell of the primary
body using the current point. This method is also suitable when the axis of the
hole or cutout does not align with the body’s axis.
As an example, consider a simple
configuration: a conical cutout within a conical body (Fig. 1). We begin by
defining the equation for the cutout. Since the construction of a conical body
has already been described in [12], we will write the equation for the lateral
surface of the conical cutout based on the given geometric scheme:
|
(1)
|
where
– is the
angular parameter varying from 0 to
,
and the parameters
,
and
represent the ratios
to
,
to
and
to
.
If the
first two parameters are equal, the conical cut will be circular.
Next, we define the lateral surface of the
main cone:
|
(2)
|
It is important to emphasize that the
equations (1) and (2) must use the same angular and linear parameters.
Synchronization of these parameters within the surfaces being joined via the
current point ensures a consistent internal point structure and prevents
self-intersections.
Fig.
1. Geometric diagram of a circular cone with a conical cutout.
We then merge equations (1) and (2) via the
current point
,
using a linear parameter
,
that ranges from 0 to 1:
|
(3)
|
The results of modeling using equation (3)
are shown in Fig. 1b. The model consists of 90,000 points. The base radius of
the cutout is 75% of the base radius of the main cone, and the parameters
and
are
equal. Additional results with
and
are shown in Fig. 1c (for clarity, the model
is visualized in cross-section).
Fig.
2. Visualization of a cylindrical body with axial hole a), a circular cone with
conical cutout b), and a cone with elliptical conical cutout c).
Let us now walk through the modeling of a
truncated cone with a vertical elliptical axial hole. The first step is to
derive the point equation for the truncated cone (Fig. 3). A similar problem
was discussed in [13], although it used a different parameterization, resulting
in a different equation.
Fig.
3. Geometric diagram of a truncated cone.
We define the current points
,
,
on
segments
,
,
respectively,
using a linear parameter
:
|
(4)
|
This defines the vertices of the moving
simplex
,
in which the current point of the ellipse
can be determined as:
|
(5)
|
where
– is the
angular parameter.
The ellipse is then filled with points by
using equation (5) to define the current point
:
|
(6)
|
where
– is a
linear parameter.
We now define the conical body by
substituting equations (1) and (3):
|
(7)
|
Equation (7) represents one of the possible
formulations for the cone. The parameter
corresponds
to height, and the same equation can also be used to model a truncated cone by
setting the parameter
range not from 0 to 1, but from 0
to the ratio of the height of the truncated cone to the height of the full
cone. It should be noted that for the correct construction of the model it is
necessary that the “zero” value of the parameter
defines
the lower plane of the cone
Let us complicate the task and model a
truncated cone with a vertical axial elliptical hole (Fig. 4).
Fig.
4. Geometric diagram of a truncated cone with vertical axial elliptical hole.
The modeling process resembles the previous
example, but here the elliptical cutout must be defined by finding points
and
using
the parallel translation formula:
|
(8)
|
where
.
In equations (8), the
point is the current point of the cone
axis, which makes it possible to form a moving simplex
[14]
for constructing a vertical hole. Next, we determine the current point of the
elliptical hole with subsequent substitution of (4) and (8):
|
(9)
|
where
– is the
angular parameter.
Next, we define point
using (4):
|
(10)
|
We then define the point
on segment
using
(9) and (10):
|
(11)
|
where
– is a
linear parameter.
Equation (11) gives the point-based
equation for a truncated cone with an axial elliptical hole (see Fig. 5). For
this equation to work correctly, a proper relationship must be established
between the fixed parameter
and the maximum value of
the variable parameter
:
Fig.
5. Point-based model of a truncated cone with axial elliptical hole.
If it is necessary to make a cutout, the
shape of which will differ from the shape of the rest of the body, then it is
necessary to make changes in the geometric scheme. It is necessary to write an
equation of the inner surface of the body and connect it with the outer
surface, having previously synchronized their parameters. Synchronization of
parameters is an integral part of this method of constructing geometric solid
objects, since in the event of a violation of the direction or step of the
parameters of the objects being linked together, the geometric properties of
the resulting point body will be violated or completely lost.
For example, let us create an analytical
description of a spherical body with an elliptical internal cutout (Fig. 6).
Fig.
6. Geometric diagram of an elliptical body with a cutout
The internal cut is defined by points lying
on the axes of the local simplex
:
We will take the equation of the elliptic
surface from [15]. Moreover, for both the internal and external bodies the
equations will be the same, except for the support points. The angular
parameters will also coincide, since the points in the bodies must be filled in
the same direction and order.
where
and
.
After obtaining the equations of the
shells, it remains to connect them using the current point
by means of a linear parameter
:
The simulation results are presented in
Fig. 7.
Fig.
7. Point solid model of a sphere with an elliptical inner cutout
The peculiarity of this method of
constructing solid geometric objects is the ability to create the internal
structure of point bodies of revolution without additional changes in the
analytical description, but only by means of working with parameters that
determine the internal structure of the body of revolution.
From the standpoint of creating cutouts and
holes in point calculus, polyhedral bodies are more complex due to the
specifics of their parameterization. This complexity primarily arises because
bodies of revolution are usually based on elliptical equations that involve a
single angular parameter. Moreover, in the case of rotational solids, it is
possible to first generate the surface and only then fill its interior with
points using an additional parameter.
The structure of polyhedral bodies in point
calculus is fundamentally different. These bodies are formed by linking several
straight-line segments using multiple parameters—bypassing the stage of
creating a separate surface. As a result, the equation immediately describes a
body defined by three parameters. This imposes certain limitations on the configurations
of cutouts and holes that can be created in such bodies. The same applies to
polyhedral holes or cutouts in bodies of revolution.
As an example, consider the creation of a
prismatic axial hole inside a cylindrical body (see Fig. 8).
The equations for cylindrical and prismatic
bodies are known from [12]. To construct this configuration, the inner surface
of the cutout must be connected to the outer surface via the current point.
However, there is a challenge in defining the inner surface: during the
construction of prismatic bodies, an explicit equation for their lateral
surface is not obtained at any stage.
Nevertheless, it is still possible to
extract the point array that represents the lateral surface of a prismatic (or
any polyhedral) body. This can be done by generating the full set of body
points and then selecting those corresponding to the desired parameter values.
The specific parameter values depend on how the body is parameterized. This
approach is feasible if a point database is available. However, obtaining an
independent analytical description of the full lateral surface–or the complete
surface–of a polyhedral body is currently not achievable within the framework
of point-based solid modeling.
Therefore, to derive analytical descriptions
for various configurations of cutouts in such bodies, it is proposed to divide
the body into separate parts during the design phase (based on the number of
faces in the body or in the cutout). In the case shown in Fig. 8, this results
in four segments.
Fig.
8. Geometric diagram of a cylindrical body with a square axial hole
Let us assume a spatial simplex
is given, and on its sides
and
– the
points
and
are
defined, representing the hole’s geometry:
The equation for the lateral surface of the
cylinder is written as:
where
,
.
To generate the body, we link the face of
the hole
with the corresponding segment of the
cylindrical surface using the current point, and coordinate the parameters
responsible for forming both the cylinder segment and the wall of the cutout.
We define point
in the
straight line and connect it to point
on the
arc
:
This results in a point-filled surface
.
The parameter
used for
the current point
was chosen to synchronize the
parameterizations of the arc and the line. Also,
.
Next, we define the top face of the body
:
Finally, we connect the two obtained points
and
using a
parameter
:
Fig.
9: Point-based model of a circular cylinder segment with a prismatic cutout
To form the complete body, the segment
shown in Fig. 9 can be duplicated using a circular array. If the hole is
offset, a separate equation must be generated for each segment (the equations
will follow the same structure but differ in the constants that define the
reference points for the hole).
Now, consider an example of a quadrilateral
prism with an elliptical cutout. Let us define a prism in a spatial simplex
with an elliptical hole.
Fig.
10: Geometric diagram of a quadrilateral prism with an elliptical hole
We define the locations of points
and
on lines
and
,
respectively.
It should be noted that if the same
parameters are used for points
and
,
the hole will have a circular shape. If
different parameters are applied, the hole becomes elliptical.
Next, we determine the current point
on one plane
:
And then define the current point
on the second plane
:
The final body equation is constructed by
connecting points
and
:
All parameters used in these equations are
analogous to those described earlier for the cylindrical body with a prismatic
cutout. The construction principles and parameter coordination are also the
same. An example of visualization is shown in Fig. 11.
Fig.
11: Point-based segment of a quadrilateral prism with an elliptical hole
To process parametric equations, the
author's Point Calculus Software was used (certificate of state registration of
the computer program No. 2025610353). The calculation results were exported to
.DXF format, after which the resulting arrays of points were visualized using
freely distributed software CloudCompare (cloudcompare.org).
The conducted study led to the following
conclusions:
1.
Novel methods for constructing solid models
using point calculus have been proposed. Parametric point equations were
derived for several types of solids, including rotational and polyhedral bodies
with various configurations of holes and cutouts. The resulting models were
visualized using a point-based geometric representation.
2.
The features of parameterization for the
generated models were analyzed, with particular attention to parameter
interactions.
3.
A method was proposed for creating holes and
cutouts in rotational bodies without modifying their equations. The geometric
configuration of the model is adjusted through parameter manipulation rather
than analytical changes, which significantly reduces the complexity of the
model's mathematical description and optimizes computational resource usage.
4.
The described modeling techniques allow for
flexible geometric modifications without increasing the amount of data required
for storage and processing. All resulting models are defined by compact
parametric point equations that encode both the external and internal structure
of the object, as well as its spatial orientation. These results open the way
toward modeling more complex configurations of solid bodies using point
calculus.
5.
Visualization of the obtained results was
carried out using a point-represented geometric model.
1.
Golovanov N.N. Geometric modeling. DMK Press,
2024. 408 p.
2.
C. Hoffmann. Geometric and Solid Modeling. —
2002.
3.
R. Rossignac. A.G. Requicha. Solid Modeling //
Review article. — 1994.
4.
Michael E. Mortenson. Geometric Modeling 2nd
Edition. Wiley - 1997.
5.
M. Mantyla. An Introduction to Solid Modeling. —
1988.
6.
Requicha A.G., Voelcker H.B.. Boolean Operations
in Solid Modeling: Boundary Evaluation and Merging Algorithms // Technical
Memorandum. — 1984.
7.
Arruda M.C.. Boolean Operations on Non-Manifold
and B-Rep Solids for Mesh Generation. — 2006.
8.
S. Krishnan, M. Gopi, D. Manocha, M. Mine.
Interactive Boundary Computation of Boolean Combinations of Sculptured Solids.
— 1997.
9.
Konopatskiy E.V.. Theoretical Basis of
Mathematical Apparatus for Parallel Computing Implementation in Computer-Aided
Design Systems / E. Konopatskiy // Programming and Computer Software. – 2024. –
Vol. 50, No. 5. – P. 335-342.
10.
Konopatsky E.V.. Geometric foundations of parallel computing in
computer modeling and computer-aided design systems // Proceedings of the
International Conference on Computer Graphics and Vision "Graphicon".
– 2022. – No. 32. – P. 816-825.
11.
Konopatsky E.V. , Bezditny A.A. The problem of
visualizing solid models in the form of a three-parameter set of points (2022).
Scientific Visualization 14.2: 49 - 61, DOI: 10.26583/sv.14.2.05.
12.
Konopatskiy E.V., Bezditnyi A. A., Lagunova M.V., Naidysh A.V. Principles
of solid modeling in point calculus // Journal of Physics: Conference Series:
5, Omsk, March 16–17, 2021. – Omsk, 2021. – P. 012063. – DOI
10.1088/1742-6596/1901/1/012063.
13.
Bezditny A.A. Shape-forming operations of extrusion and rotation of
solid modeling of geometric objects in point calculus // Bulletin of computer
and information technologies. – 2023. – T. 20, No. 1(223). – P. 18-26. – DOI
10.14489/vkit.2023.01.pp.018-026.
14.
Malyutina, T. P. Assigning a computer surface of a circle involute
by the moving simplex method / T. P. Malyutina, I. P. Davydenko // Bulletin of
the Donbass National Academy of Civil Engineering and Architecture. - 2021. -
No. 3 (149). - P. 51-55.
15.
Konopatskiy E.V., Bezditnyi A.A. Solid modeling of geometric objects
in point calculus / CEUR Workshop Proceedings: 31, Nizhny Novgorod, 27–30 sept.
2021. – Nizhny Novgorod, 2021. – P. 666-672.