# 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 elements, which define the boundary between interior and exterior points.

## Overview

A boundary representation of a model comprises topological components (faces, edges and vertices) and the connections between them, along with geometric definitions for those components (surfaces, curves and points, respectively). A face is a bounded portion of a surface; an edge is a bounded piece of a curve and a vertex lies at a point. Other elements are the shell (a set of connected faces), the loop (a circuit of edges bounding a face) and loop-edge links (also known as winged edge links or half-edges) which are used to create the edge circuits.

## Compared to constructive solid geometry

Compared to the constructive solid geometry (CSG) representation, which uses only primitive objects and Boolean operations to combine them, boundary representation is more flexible and has a much richer operation set. In addition to the Boolean operations, B-rep has extrusion (or sweeping), chamfer, blending, drafting, shelling, tweaking and other operations which make use of these.

## History

The basic method for BREP was developed independently in the early 1970s by both Ian C. Braid in Cambridge (for CAD) and Bruce G. Baumgart at Stanford (for computer vision). Braid continued his work with the research solid modeller BUILD which was the forerunner of many research and commercial solid modelling systems. Braid worked on the commercial systems ROMULUS, the forerunner of Parasolid, and on ACIS. Parasolid and ACIS are the basis for many of today's commercial CAD systems.
Following Braid's work for solids, a Swedish team led by Professor Torsten Kjellberg, developed the philosophy and methods for working with hybrid models, wire-frames, sheet objects and volumetric models during the early 1980s. In Finland, Martti Mäntylä produced a solid modelling system called GWB. In the USA Eastman and Weiler were also working on Boundary Representation and in Japan Professor Fumihiko Kimura and his team at Tokyo University also produced their own B-rep modelling system.
Initially CSG was used by several commercial systems because it was easier to implement. The advent of reliable commercial B-rep kernel systems like Parasolid and ACIS, mentioned above, as well as OpenCASCADE and C3D that were later developed, has led to widespread adoption of B-rep for CAD.
Boundary representation is essentially a local representation connecting faces, edges and vertices. An extension of this was to group sub-elements of the shape into logical units called geometric features, or simply features. Pioneering work was done by Kyprianou in Cambridge also using the BUILD system and continued and extended by Jared and others. Features are the basis of many other developments, allowing high-level "geometric reasoning" about shape for comparison, process-planning, manufacturing, etc.
Boundary representation has also been extended to allow special, non-solid model types called non-manifold models. As described by Braid, normal solids found in nature have the property that, at every point on the boundary, a small enough sphere around the point is divided into two pieces, one inside and one outside the object. Non-manifold models break this rule. An important sub-class of non-manifold models are sheet objects which are used to represent thin-plate objects and integrate surface modelling into a solid modelling environment.

## Standardization

Standardization for boundary representation took time to develop. In a meeting organized by the Computer-Aided Manufacturing International (CAM-I) in 1979 the IGES format was discussed for solid model transfer. IGES was not, then, suitable. Another complication was the coexistence of, then, two major representations, CSG and Boundary Representation, although use of CSG in commercial systems started to decline later. Further developments within CAM-I led to the Experimental Boundary Format, known as XBF, which was proposed to IGES as a possibility for extension to cover Boundary Representation models. However, this was not taken up. Towards the end of the 1980s a project called CAD*I developed a standard representation which then became one of the bases for the development of the STEP solid model format, the first widely accepted data exchange format for Boundary Representation.
In the world of data-exchange, STEP, the Standard for the Exchange of Product Model data also defines some data models for boundary representations in a neutral form which can be mapped to specific data structures. The common generic topological and geometric models are defined in ISO 10303-42 Geometric and topological representation. The following Application Integrated Resources (AICs) define boundary models that are constraints of the generic geometric and topological capabilities:
* ISO 10303-511 Topologically bounded surface, definition of an advanced face, that is a bounded surface where the surface is of type elementary (plane, cylindrical, conical, spherical or toroidal), or a swept surface, or B-spline surface. The boundaries are defined by lines, conics, polylines, surface curves, or b spline curves
* ISO 10303-514 Advanced boundary representation, a solid defining a volume with possible voids that is composed by advanced faces
* ISO 10303-509 Manifold surface, a non intersecting area in 3D that is composed by advanced faces
* ISO 10303-521 Manifold subsurface, a sub-area out of a manifold surface
* ISO 10303-508 Non-manifold surface, any kind of advanced face arrangement
* ISO 10303-513 Elementary boundary representation similar to ISO 10303-514, but restricted to the elementary surfaces only
* ISO 10303-512 Faceted boundary representation a simplified surface model constructed by planar surfaces only