Content uploaded by Aikaterini Chatzivasileiadi
Author content
All content in this area was uploaded by Aikaterini Chatzivasileiadi on Sep 26, 2018
Content may be subject to copyright.
1
Proceedings of CAD’18, Paris, France, July 9-11, 2018, aaa-bbb
© 2018 CAD Solutions, LLC, http://www.cadconferences.com
Title:
A Review of 3D Solid Modeling Software Libraries for Non-Manifold Modeling
Authors:
Aikaterini Chatzivasileiadi, chatzivasileiadia@cardiff.ac.uk, Cardiff University
Nicholas Mario Wardhana, wardhanan@cardiff.ac.uk, Cardiff University
Wassim Jabi, jabiw@cardiff.ac.uk, Cardiff University
Robert Aish, robert.aish@ucl.ac.uk, University College London
Simon Lannon, lannon@cardiff.ac.uk, Cardiff University
Keywords:
Architectural Design, Non-Manifold Topology, Geometric Kernels, Survey, Evaluation
DOI: …
Non-Manifold Topology:
Mathematically, Non-Manifold Topology (NMT) is defined as cell-complexes that are subsets of
Euclidean Space [15]. Practically, topology refers to the spatial relationships between the various
entities in a model and it describes how geometric entities are connected. 'Non-manifold' is a
geometric topology term that means 'to allow any combination of vertices, edges, surfaces and
volumes to exist in a single logical body' [7]. Such models allow multiple faces meeting at an edge or
multiple edges meeting at a vertex. Coincident edges and vertices are merged. Moreover, non -manifold
topology models have a configuration that cannot be unfolded into a continuous flat piece and are
thus non-manufacturable and not physically realizable. On the contrary, a manifold body without
internal voids can be fabricated out of a single block of material [1].
NMT has been successfully applied in various applications, including in the ship building industry,
[13], the medical field [17], Computer Aided Engineering [19], Computer Aided Design for Mechanical
Engineering [16], structural analyses [18], and Digital Fabrication [9]. Considering its success in these
applications, it would be possible to transfer NMT's success to architecture in order to enhance the
representation of architectural space [8]. NMT’s topological clarity allows architects to better design,
analyze, reason about, and produce their buildings. The potential of NMT in the early design stages is
already acknowledged and research has been undertaken with regard to the advantages of NMT's
application for energy analysis in the early design stages [7], [8]. NMT has already been applied
together with parametric and associative scripting to model the spatial organization of a building [1].
This information was then used to create different analytical and material models of a building.
Moreover, non-manifold spatial models are considered suitable for early structural analysis, as
horizontal and vertical edges can be used to define beams and columns respectively, while internal or
external faces can be used to define floors, roof elements and interior or exterior walls, facades and
partitions [1].
Topological Characteristics of Non-Manifold Objects:
Topological elements of non-manifold objects are hierarchically interrelated and a lower-dimensional
element is used as the boundary of each of several higher dimensional ones [21]. An example is shown
in Fig. 1(a). Boolean set operations are common set operations that are used to combine solids in order
to create more complex objects. They are usually applied to two bodies at a time [3]. The main Boolean
operations are union, intersection and difference, which are regular; merge and impose, which are non-
regular; and imprint, which can be regular or non-regular. Generally a regular Boolean operation
removes any external faces of the input bodies that are within the resulting body, while a non-regular
Boolean operation maintains any external faces of the input bodies that are within the resulting body
2
Proceedings of CAD’18, Paris, France, July 9-11, 2018, aaa-bbb
© 2018 CAD Solutions, LLC, http://www.cadconferences.com
[1]. As a result, regular operations lead to a manifold result, while non-regular operations lead to a
non-manifold result. The manifold or the non-manifold property of the output body cannot be
informed by the input bodies' property, as manifold and non-manifold inputs can lead to manifold or
non-manifold outputs, but not respectively [3]. This is also observed in Fig. 1(b), which shows the
result of different regular or non-regular Boolean operations with manifold inputs.
Fig. 1: (a) An example of hierarchical structure of non-manifold topological elements [14], (b) The
result of different regular or non-regular operations with manifold inputs (adapted from [1]).
Review Methodology:
The intention of this research was to review academic literature and geometric modeling kernels
supporting non-manifold topology. A geometric modeling kernel is a 3D solid modeling software
library that provides geometric and topological data structures, as well as algorithms to model an
architectural space, a building or an artefact. The study included the investigation of the topological
entities used in thirteen data structures, as well as in other proposed class hierarchies suitable for
non-manifold modeling, in terms of the levels they support and the terminology used for each level. In
addition, twelve geometric modeling kernels that support non-manifold topology have been evaluated.
Inconsistencies were expected to be found regarding the terminology and the supported levels in both
the academic research and the kernels, and thus the aim of this research is two-fold; first, to
summarize the academic overview and the review of the modeling kernels in a new terminology and
class hierarchy standard, and then to also propose a testing framework to assess the kernels' support
for non-manifold structures based on the new terminology.
Entities' Terminology in Academic Papers on Non-Manifold Modeling
The advantages of non-manifold representation have been recognized in various studies, such as [5],
[14], and several representation schemes have been proposed for 3D modeling. This section focuses on
the review of the research papers whose authors proposed a non-manifold class hierarchy or used an
existing one. However, it is acknowledged that some of these frameworks have been based on
precursors that are suitable for manifold modeling. In the reviewed papers, various entity names have
been used for different levels considering different topological frameworks. The number of studies
(academic papers) that use each of the entity names are presented in Fig. 2. It is seen that vertex is
used in all studies, while a set of basic elements including vertex (1st level), edge (2nd level), loop (3th
level), face (4th level) and shell (5th level) is shared in almost every scheme. The higher levels in the
topological hierarchy present larger diversity and it seems that region, solid and complex is the
preferred terminology for the 6th, 7th and 8th levels respectively.
3
Proceedings of CAD’18, Paris, France, July 9-11, 2018, aaa-bbb
© 2018 CAD Solutions, LLC, http://www.cadconferences.com
Fig. 2: Number of occurrences of entity names in non-manifold academic research (authors' own).
Entities' Terminology in Non-Manifold Geometry Kernels
The main requirement for the geometric kernel to support conceptual design is to provide a non-
manifold topology so that mixed-dimensional geometry can be allowed [10]. Twelve geometric
modeling kernels that support non-manifold topology, as shown in Tab. 1, were tested and assessed
according to the supported topological entities hierarchy, the license type (included in the full paper)
and the offered topological operations.
Level
Entities
Kernels
No of
instances
OCCT
OVM
CGAL
LibIGL
ARCHMIND
BMesh
ACIS
SOLIDS++
Parasolid
ASM
Rhino
SDK
SMLib
9th
body
•
•
•
3
compound
•
1
model
•
1
brep
•
1
8th
CompSolid
•
1
solid
•
•
2
7th
volume
•
1
region
•
•
•
3
cell
•
•
•
3
lump
•
1
solid
•
1
6th
shell
•
•
•
•
•
•
•
7
5th
face
•
•
•
•
•
•
•
•
•
•
•
•
12
4th
loop
•
•
•
•
•
•
•
•
8
3rd
wire
•
•
2
2nd
edge
•
•
•
•
•
•
•
•
•
•
•
11
1st
vertex
•
•
•
•
•
•
•
•
•
•
•
•
12
No of entities
8
4
6
2
3
4
9
6
7
8
6
7
Tab. 1: Use of entity terminology in non-manifold geometry kernels (authors’ own)
The topological elements used in each kernel vary and so does the hierarchy they use. The variant
number of entities used by each kernel suggests that some kernels provide a richer environment to
work in, while others are simply mesh representation libraries.
4
Proceedings of CAD’18, Paris, France, July 9-11, 2018, aaa-bbb
© 2018 CAD Solutions, LLC, http://www.cadconferences.com
Proposal of a Standardized Entities' Terminology:
In light of a more standardized topological framework a class hierarchy is proposed in Fig. 3. The
terminology is proposed to provide a common concept for the diverse discipline-specific
terminologies, including the ones for conceptual architectural design, structural design, energy
analysis, spatial reasoning and digital fabrication. The terminology is proposed according to the
following principles: to reduce ambiguity, to increase distinctiveness, to use simple words, to use
words that do not imply a specific discipline, and to use independent descriptors between topological
and geometric entities. The entities up to the level of a shell use the currently preferred terminology in
academia and in commercial applications. From then on, a cell implies a region of a bounded space
that can be either filled (solid) or void. This entity resembles real-life cells such as a biological cell and
a prison cell. A CellComplex indicates a series of connected cells and resembles a building complex. A
cluster can contain heterogeneous elements, and is a familiar concept in a number of areas including
biology, architecture and set theory.
Fig. 3: Topological elements class hierarchy with examples (authors’ own).
A Testing Framework for Non-Manifold Topology: A Study Case with OCCT:
As a component of the geometry kernels' review written in Review Methodology, this section presents
a proposed testing framework to assess the kernels' support for non-manifold structures. The tests
particularly aim to identify the provided structural representations of a non-manifold structure and
operations involving these structures. Structural representations are examined using construction
tests, in which a structure is created from simpler primitives; and exploration tests, in which traversals
are done between sub-entities of a shape. Operation tests are focused on the union and slice
operations, which are two non-regular Boolean operations supported by Open CASCADE Technology
(OCCT). The discussions cover the resulting shapes’ correctness and the operations' performances.
Experimentations with other non-manifold kernels regarding kernel capabilities and applications are
reported in various studies [2], [4], [6], [11], [12], [20].
Construction Tests: OCCT provides methods to construct various predefined shapes. A box can thus
be created as a cell by using a built-in class and passing, for example, either two extreme corners of
the box or one corner and the dimension of the box. Alternatively, a similar box structure can be
manually built in a bottom-up manner. Fig. 4(a) shows that the built-in class significantly outperforms
the manual method. The first one requires less than 5 ms even to construct up to 900 cubes, whereas
the manual method grows linearly up to around 10 s to generate the same number of cubes.
Exploration Tests: OCCT allows explorations of sub-entities across different levels. However, it does
not provide a means to directly perform sideways explorations. For example, to iterate through a
series of connected edges, the parent wire must firstly be examined before the constituent edges can
5
Proceedings of CAD’18, Paris, France, July 9-11, 2018, aaa-bbb
© 2018 CAD Solutions, LLC, http://www.cadconferences.com
be checked for adjacency. A mechanism that allows traversal between connected edges would
therefore be convenient to the library users.
Fig. 4: (a) The time complexities of the cubes construction processes using OCCT's built-in class
and a manual construction method. (b) The non-regular union operation’s performance given different
numbers of cubes in three arrangements. (c) The slice operation’s performance given different
numbers of planes in three arrangements.
Non-regular union operation: Non-regular union operation was examined by uniting two shapes in 11
configurations, according to the various ways they could be linked, as shown in Fig. 5. It was found
following this testing that OCCT satisfactorily returned the correct number of sub-entities. In addition,
it could be verified that the cube and the tetrahedron in the rightmost test exactly shared one vertex,
which was the tetrahedron's vertex lying on the cube's face.
Fig. 5: Eleven two-box configurations to assess the non-regular union’s topological correctness.
Fig. 6: (a) Three types of cubes arrangements that were used to assess the non-regular union's
performance. (b) Illustrations of the slice operation evaluation. More slicing planes were inserted to the
cube along the directions of the arrows as the evaluation progressed.
The time complexity of this functionality was tested by performing the union operation on three
arrangements (1D, 2D, and 3D) of overlapping cubes as visualized in Fig. 6(a). These arrangements
were designed such that the same number of input cubes will result in different numbers of sub -
entities. It was found, as depicted in Fig. 4(b), that while all processing times similarly rose
polynomially, the most significant rise occurred with the 3D arrangements, which created the most
complex structures, followed by the 2D and finally the 1D arrangements.
Non-regular slice operation: The non-regular slice operation available in OCCT was assessed by
successively slicing a box with parallel finite planes, each regularly arranged within an interval of 1
unit from the other. Fig. 6(b) shows three arrangements of planes that were designed, and in each
arrangement the planes were perpendicular to 1, 2, and 3 axes of the coordinate system. After each
iteration, the new shape's topology was checked. It was found that this operation produced the correct
numbers of sub-entities.
The same planes arrangements were used to assess the operation's performance. The recorded
times are shown in Fig. 4(c) with respect to the corresponding number of planes and the arrangement
6
Proceedings of CAD’18, Paris, France, July 9-11, 2018, aaa-bbb
© 2018 CAD Solutions, LLC, http://www.cadconferences.com
types. The processing times for the non-regular slice rose polynomially, with operations involving 3D
planes arrangements rising more steeply than the other arrangements due to the shapes' complexity.
Conclusions:
The advantages of non-manifold topology with regard to architectural design, energy analysis,
structural analysis and digital fabrication have been recognized in various studies. It was revealed that
there is an inconsistency regarding the terminology and hierarchy of the topological entities, especially
in the higher levels of the hierarchy, not only among the various non-manifold geometry kernels, but
also among the broader areas of industry and academia. This indicates that the current approach in
non-manifold modeling is fragmented in terms of terminology and there is scope for a more
sophisticated environment that would harness the capabilities of non-manifold kernels. In this respect,
a new class hierarchy was proposed in this paper, with the vision of a more standardized topological
framework. The kernel evaluation shows that while OCCT provides non-manifold representations and
operations, there are still some room for extensions, especially with regard to sideways
traversal/adjacency queries. Future work includes extending these tests to evaluate structures with
undulating faces and also to evaluate other geometry kernels.
Acknowledgements:
This project is funded by a Leverhulme Trust Research Project Grant (Grant No. RPG-2016-016).
References:
[1] Aish, R.; Pratap, A.: Spatial Information Modeling of Buildings Using Non-Manifold Topology
with ASM and DesignScript, in Advances in Architectural Geometry 2012, L. Hesselgren, S.
Sharma, J. Wallner, N. Baldassini, P. Bompas, and J. Raynaud, Eds. Vienna: Springer, 2012, 25–36.
https://doi.org/10.1007/978-3-7091-1251-9_1.
[2] Alleaume, A.: Automatic Non-manifold Topology Recovery and Geometry Noise Removal, in
Proceedings of the 18th International Meshing Roundtable, Berlin, Heidelberg: Springer Berlin
Heidelberg, 2009, 267–279. https://doi.org/10.1007/978-3-642-04319-2_16.
[3] de Arruda, M. C.; Martha, L.; Miranda, A. C.; Lira, W. W.: Boolean operations on non-manifold and
B-rep solids for mesh generation, in XXVII Iberian Latin American Congress on Computational
Methods in Engineering, 2006.
[4] Damiand, G.; Teillaud, M.: A Generic Implementation of dD Combinatorial Maps in CGAL,
Procedia Engineering, 82, January 2014, 46–58. https://doi.org/10.1016/J.PROENG.2014.10.372.
[5] Gursoz, E.; Choi, Y.; Prinz, F.: Vertex-based Representation of Non-manifold Boundaries, in
Geometric Modeling for Product Engineering, 1990, 107–139.
[6] Hert, S.; Hoffmann, M.; Kettner, L.; Pion, S.; Seel, M.: An adaptable and extensible geometry
kernel, Computational Geometry, 38(1–2), September 2007, 16–36.
https://doi.org/10.1016/J.COMGEO.2006.11.004.
[7] Jabi, W.: The Potential of Non-manifold Topology in the Early Design Stages, Computational
Ecologies: Design in the Anthropocene. Proceedings of the 35th Annual Conference of the
Association for Computer Aided Design in Architecture, 2015, 381–393.
[8] Jabi, W.: Linking design and simulation using non-manifold topology, Architectural Science
Review, 59(4), 2016, 323-334. https://doi.org/10.1080/00038628.2015.1117959.
[9] Jabi, W.; Soe, S.; Theobald, P.; Aish, R.; Lannon, S.: Enhancing parametric design through non-
manifold topology, Design Studies, 52(C), 2017, 96-114.
http://doi.org/10.1016/j.destud.2017.04.003.
[10] Kiumarse Zamanian, M.; Fenves, S. J.; Levent Gursoz, E.: Representing spatial abstractions of
constructed facilities, Building and Environment, 27(2), 1991, 221–230.
https://doi.org/10.1016/0360-1323(92)90024-J.
[11] Kremer, M.; Bommes, D.; Kobbelt, L.: OpenVolumeMesh -A Versatile Index-Based Data Structure
for 3D Polytopal Complexes, in 21st International Meshing Roundtable, 2012 .
https://doi.org/10.1007/978-3-642-33573-0 31.
[12] Lee, S. H.: Feature-based non-manifold modeling system to integrate design and analysis of
injection molding products, Journal of Mechanical Science and Technology, 23(5), May 2009,
1331–1341. https://doi.org/10.1007/s12206-009-0407-3.
[13] Lee, S. U.; Roh, M. Il; Cha, J. H.; Lee, K. Y.: Ship compartment modeling based on a non-manifold
7
Proceedings of CAD’18, Paris, France, July 9-11, 2018, aaa-bbb
© 2018 CAD Solutions, LLC, http://www.cadconferences.com
polyhedron modeling kernel, Advances in Engineering Software, 40(5), 2009, 378–388.
https://doi.org/10.1016/j.advengsoft.2007.12.001.
[14] Masuda, H.; Shimada, K.; Numao, M.; Kawabe, S.: A Mathematical Theory and Applications of
Non-Manifold Geometric Modeling, in International Symposium on Advanced Geometric
Modelling for Engineering Applications, 1989, 89–103.
[15] Masuda, H.: Topological operators and Boolean operations for complex-based nonmanifold
geometric models, Computer-Aided Design, 25(2), 1993, 119–129.
https://doi.org/10.1016/0010-4485(93)90097-8.
[16] Mikchevitch, A.; Pernot, J.-P.: Methodology for automatic recovering of 3D partitions from
unstitched faces of non-manifold CAD models, Engineering with Computers, 31(1), January
2015, 73–84. https://doi.org/10.1007/s00366-013-0325-y.
[17] Nguyen, T.: Simplifying The Non-Manifold Topology Of Multi-Partitioning Surface Networks,
Washington University in St. Louis, Missouri, 2011.
[18] Nolan, D. C.; Tierney, C. M.; Armstrong, C. G.; Robinson, T. T.: Defining simulation intent, CAD
Computer Aided Design, 59, 2015, 50–63. https://doi.org/10.1016/j.cad.2014.08.030.
[19] Shimada, K.; Gossard, D.: Bubble Mesh: Automated triangular meshing of non-manifold
geometry by sphere packing, in Proceedings of the 3rd Symposium on Solid Modeling and
Applications, 1995, 409–419. https://doi.org/10.1145/218013.218095.
[20] Sriram, R. D.; Wong, A.; He, L.-X.: gnomes: an object-oriented nonmanifold geometric engine,
Computer-Aided Design, 27(11), November 1995, 853–868. https://doi.org/10.1016/0010-
4485(95)00022-4.
[21] Weiler, K.: Topological structures for geometric modeling, Graduate Faculty of Rensselaer
Polytechnic Institute, 1986.