What are BREP and CSG | Difference between BREP and CSG

The geometric modelling technique has revolutionized the design and manufacture of products to a great extent. Although there have been various ways of representing an object, the most commonly used modelling technique is Solid Modelling. The two main ways to express solid models are Boundary Representation modelling and Constructive Solid Geometry modelling.


Constructive solid geometry or C-REP/CREP, previously known as computational binary solid geometry, is a reliable modelling technique that allows creating of a complex object from simple primitives using Boolean operations. It is based on the fundamental that a physical object can be divided into a set of primitives or basic elements combined in a particular order by following a set of rules (Boolean operations) to create an object. Typically, they are objects of simple shapes such as cuboids, cylinders, prisms, pyramids, spheres, and cones. CSG cannot represent fillets, chamfers, and other context-based features.

The primitives themselves are regarded as valid CSG models, where each primitive is bounded by orientable surfaces (Half-spaces).

These simple primitives are in generic form and must be confirmed by the user to be used in the design. The primitive may require transformations like scaling, translation, and rotation to be assigned a coveted position.

There are two kinds of CSG schemes:

Primitive based CSG: It is a popular CSG scheme based on bounded solid primitives, R-sets.

Half-space based CSG: This CSG scheme uses unbounded Half-spaces. Bounded solid primitives and their boundaries are considered composite half-spaces and the surfaces of the component half-spaces, respectively.

Some attributes of CSG are as follows:

  • CSG is fundamentally different from the BREP model, where it does not store faces, edges and vertices. Instead, it evaluates them as needed by algorithms.
  • CSG database stores topology and geometry.
  • The validity checking in the CSG scheme occurs indirectly. Each primitive combined using a Boolean operation (r-sets) to build the CSG model fits its validity.
  • The standard data structures used in CSG are graphs and trees.
  • CSG representation is of considerable importance to manufacturing.

In solid modelling and computer-aided design, boundary representation or B-rep / BREP—is the process of representing shapes using the limits. Here a solid is described as a collection of connected surface elements. BREP was one of the first computer-generated representations to represent three-dimensional objects.

BREP defines an object by their spatial boundaries. It details the points, edges, surfaces of a volume.

BREP can also be explained in terms of cell domain combination.

A cell is a connected limitation of the underlying geometry. There are four kinds of cells as per the spatial dimension they inhabit:

  • Vertex
  • Edge
  • Face
  • Volume

A domain is a set of connected cells grouped to define boundaries. Fields define various components inside a non-manifold object.

Boundary representation of models consists of two kinds of information:

Topology: The main topological entities are faces, edges, and vertices.

Geometry: The main geometrical entities are surfaces, curves, and points.

The topological and geometrical entities are intertwined in a way where:

  • the face is a bounded portion of a character.
  • An edge is an enclosed piece of a curve.
  • A vertex lies at a point. Topological items allow making links between geometrical entities.

BREP comes with its share of advantages and disadvantages, which are:

  • It is appropriate for constructing solid models of unusual shapes.
  • A BREP model is relatively simple to convert to the wireframe model.
  • BREP uses only primitive objects and Boolean operations to combine them, unlike CSG (Constructive Solid Geometry).
  • In addition to the Boolean operations, B-rep has extrusion (or sweeping), chamfer, blending, drafting, shelling, tweaking and other actions that use these.
  • BREP is not suitable for applications like tool path generation.


Boundary Representation (BREP) Constructive Solid Geometry (CSG)
BREP describes only the oriented surface of a solid as a data structure composed of vertices, edges, and faces. A solid is represented as a Boolean expression of primitive solid objects of a simpler structure.
A BREP object is easily rendered on a graphic display system. A CSG object is always valid because its surface is closed and orientable and encloses a volume, provided the primitives are authentic in this
We review the possible surface types, the winged-edge representation schema, and the Euler operators for B-rep. For CSG, the basic operations include classifying points, curves, surfaces concerning a solid, detecting redundancies in the representation, and approximating CSG objects systematically.


Reference: https://catiatutor.com/reading-a-part-body-through/

Read More

What are Parametric and Non-parametric Modeling

Up until now, we believe our readers got a clear explanation of reverse engineering. Let us give walkthrough — Reverse engineering is the process of extracting design information after studying a physical product, with the intent to reproduce the product, or to create another object that can interact with it.

In the past, designers resorted to physical measurement of the product to redraw its geometry. Today, designers use 3D scanners to capture measurements. The scanned data is then imported to CAD where the design can be analyzed, processed, manipulated and refined. Two key aspects that fall in place when focusing on reverse engineering process are:

Parametric Model/Modeling

A parametric model captures all its information about the data within its parameters. All you need to know for predicting a future data value from the current state of the model is just its parameters.
The parameters are usually finite in dimensions. For a parametric model to predict new data, knowing just the parameters is enough. A parametric model is one where we assume the ‘shape’ of the data, and therefore only have to estimate the coefficients of the model.

Non-parametric Model/Modeling

A non parametric model can capture more subtle aspects of the data. It allows more information to pass from the current set of data that is attached to the model at the current state, to be able to predict any future data.
The parameters are usually said to be infinite in dimensions. Hence, it can express the characteristics in the data much better than parametric models. For a non parametric model, predicting future data is based on not just the parameters but also in the current state of data that has been observed. A non-parametric model is one where we do not assume the ‘shape’ of the data, and we have to estimate the most suitable form of the model, along with the coefficients.

Read More

What is CAD | Types of CAD Models and CAD Formats

The previous sections dealt with the initial and middle stages of reverse engineering. This section highlights a stage which is undoubtedly crucial for product development. After a meshed part is aligned, it goes through either—surface modeling in tools such as Polyworks, which generates a non-parametric model (IGES or STEP format) or parametric modeling where a sketch of the meshed part is created instead of putting it through surfacing (.PRT format). The resultant is generally called, 3D computer aided model or CAD model.

But, what is CAD?  

CAD is the acronym for Computer Aided Design. It covers different variety of design tools used by various professionals like artists, game designers, manufacturers and design engineers.

The technology of CAD systems has tremendously helped users by performing thousands of complex geometrical calculations in the background without anyone having to drop a sweat for it. CAD has its origin in early 2D drawings where one could draw objects using basic views: top, bottom, left, right, front, back, and the angled isometric view.  3D CAD programs allow users to take 2D views and convert them into a 3D object on the screen.  In simple definition, CAD design is converting basic design data into a more perceptible and more understandable design.

Each CAD system has its own algorithm for describing geometry, both mathematically and structurally.  

Different CAD models

Everything comes with its own varieties and CAD modeling is no stranger to it. As the technology evolved, CAD modeling came up in different styles. There are many methods of classifying them, but a broad general classification can be as follows:

  • 2 dimensional or 2D CAD: The early version of CAD that most of us are aware of. These are 2-dimensional drawings on flat sheet with dimensions, layouts and other information needed to manufacture the object.
  • 3 dimensional or 3D CAD: The purpose of both 2D and 3D models is the same. But what sets 3D models apart is its ability to present greater details about the individual component and/or assembly by projecting it as a full-scale 3-dimensional object. 3D models can be viewed and rotated in X, Y, or Z axes. It also shows how two objects can fit and operate which is not possible with 2D CAD.

3D models can be further classified into three categories:

  • 3D Wire-frame Models: These models resemble an entire object made of just wires, with the background visible through the skeletal structure.
  • Surface Models: Surface models are created by joining the 3D surfaces together and look like real-life objects.
  • Solid Models: They are the best representation of real physical objects in a virtual environment. Unlike other models, solid models have properties like weight, volume and density. They are the most commonly used models and serve as prototypes for engineering projects.

CAD model

Types of CAD formats

Different professionals use different software, owing to different reasons like cost, project requirements, features etc. Although, software comes with their own file formats, there are instances where one needs to share their project with someone else, either partners or clients, who are using different software. In such cases, it is necessary that both party software understand each other’s file formats. As a result of this situation, it is necessary to have file formats which can be accommodated in variety of software.

 CAD file formats can be broadly classified into two types:

  • Native File Formats: Such CAD file formats are intended to be used only with the software it comes with. They cannot be shared with any other software which comes with their own CAD formats.
  • Neutral File Formats: These file formats are created to be shared among different software. Thereby it increases interoperability, which is necessary.

 Although there are almost hundreds of file formats out there, the more popular CAD formats are as follows:

STEP: This is the most popular CAD file format of all. It is widely used and highly recommended as most software support STEP files. STEP is the acronym for Standard for the Exchange of Product Data.

IGES: IGES is the acronym for Initial Graphics Exchange Specification. It is an old CAD file format which is vendor-neutral. IGES has fallen out lately since it lacks many features which newer file formats have.

Parasolid: Parasolid was originally developed by ShapeData and is currently owned by Siemens PLM Software.

STL: STL stands for Stereolithography which is the format for 3D information created by 3D systems. STL finds its usage mostly in 3D printers. STL describes only the outer structure or surface geometry of a physical object but doesn’t give out color, texture and other attributes of an object.

VRML: VRML stands for Virtual Reality Modeling Language. Although it gives back more attributes than STL but it can be read by a handful of software.

X3D: X3D is an XML based file format for representing 3D computer graphics.

COLLADA: COLLADA stands for Collaborative Design Activity and is mostly used in gaming and 3D modeling.

DXF: DXF stands for Drawing Exchange Format which is a pure 2D file format native to Autocad.

Use of CAD

Computer-aided design or CAD has pushed the entire engineering process to the next level. One can actually mould or fold, modify or make a new part from scratch, all with the help of CAD modeling software. The many uses of CAD are as follows:

  • CAD is used to generate design and layouts, design details and calculations, 3-D models.
  • CAD transfers details of information about a product in a format that can be easily interpreted by a skilled professional, which therefore facilitates manufacturing process.
  • The editing process in CAD is very fast as compared to manual process.
  • CAD helps in speeding up manufacturing process by facilitating accurate simulation, hence reducing time taken to design.
  • CAD can be assimilated with CAM (Computer Aided Manufacturing), which eases up product development.
Read More

What is CAD Customization & Automation?

There is no doubt computer-aided design or CAD software has changed the game of manufacturing altogether. Manufacturing industry has been using CAD software for sometimes now. These are the times when engineering departments, R&D centres & Design departments use Computer-Aided design (CAD) to ease up the product development process, thereby reducing the entire cycle time. CAD software makes our working fast, efficient & accurate.

While CAD software comes with its own offering of general tools, it is a bit hard to fathom what each individual user may find useful to accomplish very specific tasks. Such limitations have pushed the minds of developers of the CAD systems to come up with the capability of customizing their software to cater to the needs. With customization, it is possible to modify or create new tools that are better suited to our needs. One of the great improvements we can get with customization is to replace a series of commands with a single tool that accomplishes the task.

CAD customization is the activity of creating specific enhancements or tools to support CAD software.

As name suggests, CAD customization means customizing or configuring OOTB (out of the box) CAD software to suit the specific needs of a particular organization.

CAD customization predominantly involves developing supporting tools for CAD software. It is mostly customised which means it is suited to a clients particular requirements. CAD software built en-masse might not satisfy the needs of every requirement, as many organizations have their own specific criteria. That is when customizing CAD software comes into play. Customizing existing CAD software is perhaps the fastest and most economic way of getting the work done. 

Steps for Creating a Customization

Before developing customized CAD software, make some preparations as follows:

  • Try your hands on a few simple drawings; follow a tutorial to see how the commands work.
  • Understand the kind of work the user does, identify the issues he is facing, ask for features the user would like to have.
  • Examine the available customization tools and find the most effective way to get the job done.
  • An deep understanding of the function library is an absolutely necessary condition for customization.
  • Use Software Engineering methods to plan the development of the customized system.
How CAD Customization is done

Most CAD systems provide the following two mechanisms

  • Record-Edit-Play of a macro or VB code

VBA stands for Visual Basic Applications, which is an event driven programming language by Microsoft. It also allows integration with other applications that use VBA. The implementation of VBA in CAD customization is easy to learn and use. Developers can create application prototypes and receive feedback on designs quickly. VBA provides an extremely efficient way for manipulating CAD objects and exchanging data with other applications.

  • Develop an Add-On using Open APIs or toolkits

Another method for customizing CAD software is by developing add-ons using open source API’s and toolkits. One can develop API implementations by using a developer toolkit. Nowadays, many API’s come as open source which makes the whole operation a lot smoother. API’s can be fabricated as per the requirements and can be applied as an added feature. One important factor is that, the API must be compatible with the said CAD software.

Benefits of CAD Customization

Customization of CAD software has indeed introduced us to many benefits which are as follows:

  • Access to a functionality that does not exist in the OOTB package
  • Improving the efficiency of the team by providing tools for faster development
  • Reducing the manual error in performing many tasks
  • Reducing the skill requirement of the operator (A wizard for a process can allow a user with relatively less experience to complete the tasks)
  • Capture and protect the proprietary domain knowledge in a custom command/wizard
  • By applying time saving automation, it increases productivity
  • Reduces workload by huge proportions eliminating tedious tasks, data entries, and numerous repetitive steps.
  • The usage of custom made algorithms helps in reducing errors
  • Customization is a great mean to integrate a software with latest technologies
Read More

What is Geometric Modeling

The culture of design & manufacturing incorporates various crucial aspects for the production of a market efficient product. Computer-aided Engineering or CAE comes up as a central part of the entire manufacturing process. Over the years, the function of CAE has evolved so much that it has developed its applications depending upon the type of usage and execution.  Geometric Modeling happens to be one of the most popular CAE applications.  

The computer/software generated mathematical representation of an object’s geometry is called Geometric Modeling. As curves are easy to manipulate and bend as per application, geometric modeling uses curves extensively to construct surfaces. The formation of curves can be achieved by,

A set of points,

Analytic functions, or

Other curves/functions

The mathematical representation of an object can be displayed on a computer and used for generation of drawings; which go on for analysis and eventual manufacturing of the object. In general, there are three conventional steps to create a geometric model:

  • Creating key geometric elements by using commands like points, lines, and circles.
  • Applying Transformations on the geometric elements using commands like rotation, achieve scaling, and other related transformations functions.
  • Constructing the geometric model using various commands that integrates the elements of the geometric model to form the desired shape.
  • Two Dimensional or 2D: It projects a two-dimensional view and is used for flat objects.
  • 1 2D: It projects the views beyond the 2D and enables viewing of 3D objects that have no sidewall details.
  • Three Dimensional or 3D: This representation permits complete three-dimensional viewing of the model with intricate geometry. The most leading process of geometric modeling in 3D is Solid modeling.

Depending upon the representations of objects, geometric modeling system can be classified into three categories, which are:

  • Solid modeling

Also known as volume modeling, this is the most widely used method as it provides a complete description of solid modeling.

  • Wireframe modeling

It is a simple modeling system, which is used to represent the object by the help of lines only. Hence, it is also known as Line model representation. However, wireframe modeling is not enough to express complex solids; therefore, it is used to describe only wiring systems.  

  • Surface modeling

This type of modeling represents the object by its surface, and it is used to describe the object with a clear view of manufacturing. By this clear point of view, surface modeling cannot be used to develop an internal surface of any model. Surface modeling uses Bezier and B-spines.

Requirements of Geometric Modeling

The various requirements of geometric modeling are as follows:

  • The cross-section, hidden lines, dimensions are needed for Graphical Visualization.
  • Interchangeable manufacturing tolerance analysis is required while inspection of parts.
  • There should also be properties evaluation and geometrical evaluations in Area, Volume, and property evaluation in Weight, Density, etc..
  • Need for Finite element analysis and Kinematic analysis.
  • Parts classification, planning, etc. in manufacturing.

Geometric modeling is a vast and elaborate field of CAE and requires in-depth study. The next articles dive deep into the various types and facets of geometric modeling.


Read More

Why CAD Customization is needed

As previously stated; one might encounter complex design situations in engineering scenarios. Earlier, designs were drawn on sheets with pen and necessary scaling instruments and manufactured manually using old school techniques. But now, with the advent of CAD customization, the entire work-process has become easier and smoother than ever.

When CAD customization is integrated in CAD software application, a number of advantages occur. With CAD customization, the production of a drawing and design of a mechanical component can be generated with great accuracy. This facilitates the engineers to have tools to make quick modifications to any issues found in the design. The design can be customized according to the needs outlined before or after the CAD design is generated.

Need for CAD Customization
  • Implementing a functionality that does not exist in the OOTB package: The activity of CAD customization is carried out when a particular organization needs tailor made CAD software to address their need. It might be a separate functionality that a specific task needs or it might be about a format.
  • Repetitive tasks can be done in a single click: Working on a product using CAD software can involves repetitive actions. This often ends up consuming a lot of time. Although, most CAD software provides generic features, one can have it customized for specific functions that repeat more like a loop.
  • Checklist for inspection can be customized: You can reinvent the way you conduct by creating smart inspection templates. This aids in streamlining the quality and documentation processes even more.
  • Wizards can be created for guiding the use through the complete workflow: Wizards are used to properly set something up. In some cases, wizards are used for setting up all tool-path and drilling operations within the CAD-CAM system. CAD customization can setup automated wizards for carrying out repetitive tasks and regression testing without having to put in extra emphasis and time on those, thus completing a workflow without human intervention.
  • Big time saving impact: Companies have the capability to automate design, process, and systems integration when customizing CAD software. With customization of CAD functions, companies automate redundant tasks and experience great time savings.
  • Core focus on product development: CAD customization allows engineers to keep their prime focus on product development without having to worry about support functions.
  • CAD Customization effect on digital thread: CAD customization and automation of CAD software propels advancement in areas such as the digital thread.
Challenges with CAD customization

Like every other entity out there, CAD customization comes with its own drawback. One big challenge with CAD customization is keeping it in sync with the latest technology in the market. Also, every CAD software is gets its new releases so it becomes quite hectic to keep a check and customizing accordingly. We have learned before how add-ons/plug-ins has been introduced to add new features to CAD software. Such add-ons are also prone to updates which need to be worked upon to make it compatible with customized software. Modern technology, however, is working its way towards making the process of updating and customizing a more lenient process.


Read More

Page 2 of 2