CAD Assistant

CAD Assistant is a freeware viewer and converter for 3D CAD and mesh files, developed by Open Cascade.

CAD Assistant is based on open source libraries (Open CASCADE Technology, Qt, FreeType, FreeImage, etc.) and employs open formats for CAD and mesh data (STEP, IFC, IGES, BREP, glTF, JT, PLY, STL, OBJ, 3DM). It also supports a set of other file formats like DXF, SAT (ACIS), XT (Parasolid).

It is made to promote open technologies and brings the power of these technologies to the hands of engineers working with 3D data.

Originally developed as a testbed and showcase for the Open CASCADE Technology on mobile platforms, CAD Assistant has been appreciated as fast and handy 3D viewer by thousands of end-users worldwide on mobile and desktop platforms.

Open Cascade provides support and consulting services for its products and free applications, including CAD Assistant.

Please contact us if you have a request regarding CAD Assistant or are interested in other our services.
More information and download links could be found on the official page.

Version 1.6.0 (2021-10-05)

Use the following links to download and install it for your platform:

v.1.5.0, 2020-12-28

v.1.4.2, 2020-03-28

v.1.3.0, 2019-08-24

v.1.2.1, 2019-01-14

v.1.2, 2018-10-30

v.1.1, 2018-08-10

v.1.0, 2018-02-15

v.0.9, 2017-04-03

v.0.8, 2016-11-26

v.0.7, 2016-07-18

v.0.6, 2015-09-10

v.0.5, 2015-05-15

Let's make CAD Assistant more useful and functional together. Please, take the UX survey and pick up features you lack for your daily tasks. It will take 3 minutes of your time.

In addition to regular releases, CAD Assistant provides Beta and Alpha update channels. Preview builds become available more often than regular releases allowing to use new features and bugfixes earlier. These builds, however, might contain also bugs and regressions, which you are encoraged to report.

Update channels in CAD Assistant

Currently, preview update channels are available only on Windows platform. Alpha update channel is expected to provide even more often and less stable builds, but for the moment both Beta and Alpha provide the same builds.

Basic 3D model viewing and converting

Basic functionality is provided by XDE component of Open CASCADE Technology (OCCT). The supported file formats are:

  • STEP (AP203, AP214 and AP242) - ISO 10303 standard for product data representation and exchange among CAD systems (ASCII format).
    Supported data: shape geometry, assembly structure, colors, names, validation properties, file information, dimensions and tolerances (semantic and tessellated PMI).
  •  IGES (5.1 and 5.3) - vendor-neutral format for data exchange among CAD systems (ASCII format).
    Supported data: shape geometry, colors, top-level object names, file information.
  • glTF - API-neutral runtime asset delivery format (ASCII or binary), commonly supported by modeling systems and game engines.
    Supported data: shape geometry (triangulation), assembly structure, PBR metallic-roughness materials with texture maps, names.
  • XBF - BinXCAF, which is a binary persistence format for universal XCAF document structure used by OCCT.
    Format accumulates persistence of various data which can be imported from other files formats like STEP, IGES, ACIS, glTF, etc.
  • BREP - ASCII persistence of shape Boundary representation used by OCCT with open specification.
    Supported data: shape geometry and assembly structure (defined by nested compounds, without names).
  • OBJ Wavefront - format for 3D assets exchange commonly supported by modeling systems and game engines (ASCII format).
    Supported data: triangulation and quads, plain list of named groups, common materials with texture maps.
  • VRML or WRL - ISO 14772 virtual reality modeling language (ASCII format).
    Supported data: triangulation, assembly structure, colors, names.

Additional mesh file formats import is supported with help of Open Asset Import (COLLADA, 3DS, FBX, BLEND) and openNURBS® (3DM) libraries.

CAX-IF test model in CAD Assistant for Android

Assembly structure of the model can be navigated through the tree browser, displaying the names of parts and their instances in the assembly (if available). Assembly components can be hidden or shown as necessary to inspect the model. The selected sub-assembly or part can be queried for its properties including names, product information as well as geometrical ones (area, volume, and centroid).

Properties of a selected part in CAD Assistant

The model can be saved into a neutral (STEP, IGES, glTF, OBJ, PLY, STL) or OCCT internal (BRep, XBF) format.

Viewing mesh data with mapped quantities

Viewing mesh models with associated data is an additional functionality included in CAD Assistant.

Mesh can be read from files in PLY format. This format is chosen for its simplicity and capability to store data associated with mesh nodes and elements. If you have a model represented by mesh in your application, it can be saved easily to PLY format and viewed on a tablet. Additional data (RGB color or scalar) can be added to each polygon or node.

CAD Assistant allows you to view any mesh in wireframe, shaded, and shrink modes. If a mesh contains associated color or scalar data, it can be viewed with elements colored according to the selected quantity. For scalar quantities a color scale is shown, providing controls to narrow the range of displayed colors if necessary to inspect the data with more details.

Results of strength analysis of bulk carrier ship (courtesy RINA S.p.A.)

CAD Assistant supports various Display Modes for analysing mesh structure, material propertes and mapping various quanities, including:

  • Hollow Mesh (mesh wireframe)
  • Mesh Edges (mesh wireframe on top of shading)
  • Mesh Shrinked (shaded mesh with gaps between triangles)
  • Wireframe (topology edges)
  • Flat Shaded (shaded with flat normals to triangles)
  • Smoothly Shaded (default)
  • Shaded with Edges (shaded with topology edges)

Texture maps available within the document can be enabled one-by-one for material diagnostics.

Shrunk mesh presentation in CAD Assistant

Extended CAD model import

More 3D files formats are provided by Open Cascade commercial XDE components:

Data import provided by commercial Open Cascade components is available in CAD Assistant with one restriction - disallowed model export/conversion. Models are accessible with complete structure without model size or another limit.

Common operations

CAD Assistant is optimized for devices with multi-touch screen and provides intuitive manipulation of the view by finger gestures:

  • Select an assembly part by single tap
  • Fit model / selection to the window by double tap.
  • Rotate by single finger
  • Pan or zoom by two fingers

View Cube and context menu provide actions for fitting a model to the window and a choice of standard views. Settings submenu provides access to the viewer and application options, file information, and the message log. Clipping Planes functionality allows accessing inner model details.

Clipping box in CAD Assistant

Material Editor allows easily modifying properties of existing materials (from Bill of Materials within imported document), as well as defining new ones and assigning them to selected objects. CAD Assistant supports displaying common (Blinn-Phong) materials as well as PBR metallic-roughness materials (defined by glTF 2.0 format), including color, metal-roughness, emissive, normal and occlusion texture maps.

Material editor in CAD Assistant

CAD Assistant also includes interactive global illumination GPU-accelerated Path Tracing rendering engine for making photo-realistic screenshots on desktop platforms.

Approximated PBR metal-roughness (above)
vs. Path Tracing (below) renderers in CAD Assistant

CAD Assistant integrates with the OS so that applications supporting file associations will launch it for opening files of relevant types. For instance, you can open a STEP file sent to you by mail by tapping on the attachment in your mail client.

Save file dialog allows saving the current image of the model to PNG format. If Mail is selected as the target directory, the mail client will be automatically started with the saved file as an attachment.

Supported platforms

Currently CAD Assistant is provided for:

  • Windows platform 10 / 8.1 / 7 SP1, 64-bit (with HiDPI display support and SteamVR-capable HMDs).
  • macOS platform, supporting OS X 10.10 (Mavericks) and above.
  • Linux platform, supporting Ubuntu 14.04 and above, x86_64
  • Android platform, supporting version 5 and above.
  • iOS platform (iPad, iPhone), supporting version 8 and above.

It has been tested to work on a range of modern middle-level tablets and smartphones. However, we warn smartphone users that the application is optimized for landscape screen orientation and might be inconvenient on phones in portrait orientation.

Development and support

Open Cascade will continue development of CAD Assistant, improving its performance and adding new features.

Please contact us if you have ideas how to improve the application or wish to use this technology for development of customized solutions for your business.

Use the Forums to post your comments; your feedback is always welcome! We will appreciate users sharing their experience of using the application on particular devices.


The application is provided AS IS, without warranty of any kind.

glTF and the glTF logo are trademarks of the Khronos Group Inc.
openNURBS and Rhinoceros are a registered trademarks of Robert McNeel & Associates.
Android is a trademark of Google LLC.

Mac and macOS are trademarks of Apple Inc., registered in the U.S. and other countries.
Windows is a registered trademark of Microsoft Corporation.

Industrial sector: 
Mechanical engineering
Software type: 
Free of charge
Scope of application: 
3D viewer, Data Exchange, Mobile, Virtual Reality
Functionality / feature-set: 
3D model viewing and converting, Viewing mesh data with mapped quantities, Extended CAD model import
Suitable for: 
Freelance, Personal, Startups, SMEs
Deployment options: 
Desktop: Windows
Mobile/Tablet: Android
Programming Languages: 
Support Options: 
Email, Forum/Community, Video Tutorials/Webinar
Training Options: 
English, French, German, Russian, Spanish
Open Cascade

Questions and Answers

The material assignment workflow is split into two pieces – definition of the list of materials (or colors palette) and assignment of created materials to selected objects.

The details of workflow will depend on desired visual result and destination file format – e.g. STEP supports only colors, glTF only PBR material, OBJ only Blinn-Phong material.
Automatic material conversion is done when necessary, but result of such conversion might be unexpected.

1. Defining new materials

  • Open Material manager.
  • Click "plus" icon to create material.
    When another material was active before, the clone with the same parameters will be created; otherwise new material will have blank properties.
  • Choose between “PBR metallic-roughness” (modern) and “Blinn-Phong” (legacy) material definition model.
    Uncheck both to define “color-only” material.
  • Pick the base color and manage other material properties.
    You may also pick one of presets defined for common materials like bronze or gold.
  • Rename material if needed / repeat steps to define more materials.

2. Assigning materials to selected objects

  • Select one or more objects and open Material manager.
  • Pick one of previously defined materials.
  • Click icon (looking like a drop of paint) to assign material to selected objects.
  • Adjust material properties if needed.
    Modifications will be interactively applied to displayed objects.

In CAD Assistant settings you may also consider changing "Highlight color effect" to non-default option to avoid color modulation of selected part, or setting "Highlighting of selected parts" to Wireframe mode.

CAD Assistant also implements an alternative simplified workflow "Fill with color mode" (see brush icon in Material manager). In this mode, user selects object(s) in 3D Viewer and just clicks a color from palette, which instantly replaces colors / materials previously set to selected objects. This interface might be used as the first step to define the initial list of per-object materials, with adjusting material properties being done using the main Material manager interface as the second step.