7.3.0. release theprevious over corrections and improvements 7.4.0 Technology CASCADE Open Overview

Open CASCADE Technology

y g o l o n h c e T E D A C S A C n e p O www.opencascade.com

Release Notes O Version 7.4.0 ctober

Copyright © 2019 © Copyright

1 , 2019,

provides

CASCADE OPEN by

than more

500

Page Page

1

/ 13

Open CASCADE Technology

   Draw    Data Exchange              Visualization           Modeling Highlights

Option to simplify result to Option ofBoolean Operation the suppress to historyOption to speed up Boolean generation Enabled robustness Improved and stabilityBoolean of operations BRepMesh control linear interior to Options deflectionin partangular and of the faces for I Improved Improved Fixed with issues Draw starting batch from Harness ViewerImproved 3D manipulations camera ofXDESupport (assemblydata colors, in names) to export VRML structure, ofsome Support non New t Removed Remov ofreadingSupport encoded Possibility withtextures show shapes to dynamic (video) Option Option Option Improved tools for managemImproved font manipulations camera New class of clipping planes Support S Improve of API Removal throat” ofchamfer creationNew modes “constant new A triangulation Possibility calculate to mproved robustness,mproved performance and BRepMesh accuracy algorithm of performanceelection Test ools to import glTF import data to mesh from ools

interface for interface part offetchinginfinite box for finite

al to to exclude to d supportd ofembedded platforms

Boolean Operations solids on open

of of the display

support ofrunning dependency display AIS_ViewController AIS_ViewController

Harness - only geometry

y g o l o n h c e T E D A C S A C n e p O

deprecated Context Local functionality

for www.opencascade.com the

shrunk mesh shrunk mesh presentation

seam edges from display Wireframe visualization performance

old Boolean Operations old - outline outline of ASCII encodings ASCII STEP import in

s from gl2ps from improvement

urface ent

combinations

bitmap image from memory buffer Draw Harness

and s converting

haded objects

(relying OpenGL deprecated functionality) on volume volume

Copyright © 2019 © Copyright

(clip by¾, box,etc.)

2.0 OBJ and formats user input (mouse, touchscreen) user properties shapesof with

in

analysis environment withoutCASROOTenvironment

in scripts

CASCADE OPEN by BRepBndLib

from from AIS

and Extrema

O

peration

s

to

Page Page

2

/ 13

Open CASCADE Technology

    Other

Sample ViewerSample of 3D Optimization of TPrsStd_AISPresent convenient Tools efficient and for traversestructuresof BVH Improved performance built of

y g o l o n h c e T E D A C S A C n e p O www.opencascade.com

integration

- parallelizationin routines in glfw application

ation attribute

Copyright © 2019 © Copyright

CASCADE OPEN by

(OSD_Parallel)

Page Page

3

/ 13

Open CASCADE Technology

      Robustness and quality    Performance   Internal code descendants: of thecontext issue Major improvements ofthe BRepMesh component been have implemented the in Improvements cases corner were tosome that handle before. hard of process generation mesh BRepover OCCT’s componentBRepMesh refactored. has been simplifiesthe new The architecture BRepMesh of Refactoring NewFeatures

ups on specific casesups NURBSsurfaces. of to improvements resolveSome unrestricted consumption of me deflection; improvementsAdditional separately theirfaces boundaries; from Two new parameters Improved presentation of near poles; seam Improved presentation cones of edges;near representation;discrete Pre edges the in of face ofre Localization partially in processing mode; parallel ofc Execution tessellationEdges parallel mo in separation Clear of as structures data Newa internal

- processing of data of resolvea processing to casesmodel common selfof

structure

hecks,healing discrete of model

y g o l o n h c e T E D A C S A C n e p O

#0026106 www.opencascade.com - tessellation inintersectionstessellation case of

auxiliary structures,data and algorithms; tools, by

to control linear to control linear and angular deflection

the relevantedgesthe

for for

“BRepMesh NURBS surfaces specified linear to and angularfit

de;

backbone;

Copyright © 2019 © Copyright

-

revision data its model” of and

only

and models enables of processing

,

and not and and pre model

of representationsof discrete

CASCADE OPEN by the entire face;

of -

the interior part of mory hang and and post

- intersections of

-

Page Page

-

4

/ 13

Open CASCADE Technology

7.3.0 OCCT V Examples

isual improvements

y g o l o n h c e T E D A C S A C n e p O www.opencascade.com

Copyright © 2019 © Copyright 7.4.0 OCCT

CASCADE OPEN by

Page Page

5

/ 13

Open CASCADE Technology

y g o l o n h c e T E D A C S A C n e p O www.opencascade.com

Copyright © 2019 © Copyright

CASCADE OPEN by

Page Page

6

/ 13

Open CASCADE Technology

comparing times to 7.3.0: times. performance~93000 The caseon this been improvedhas shapean aboveThe assemblywhere singlesolid contains a box isreplicated P 7.3.0 OCCT A erformance improvements ccuracy improvements

y g o l o n h c e T E D A C S A C n e p O www.opencascade.com

Copyright © 2019 © Copyright 7.4.0 OCCT

CASCADE OPEN by

bythan more

10 Page Page

7

/ 13

Open CASCADE Technology

  optimizations such as: implement the classes tree descendBVH taking traversconvenient New BVHstructures of traverse convenient forTools > incmeshshape > dparallel > ploadMODELING command Harness parametersDraw the parallelization can be adjusted new via Test implem OSD_Parallel::For() between TBB either built using or If preallocat working OSD_ThreadPool::Launcher usage CPU resources by algorithms OCCT sizeglobal The of number threads nestingthread(previously independent loop each level created and ba fromresources better multithreaded execution willlowerdue reusable overhead to threadfrom benefit with support. pool improved thread Algorithms relying on Built tasks multithreaded pool for Thread Meshing details toFor the related thestructure and before. as side to visualapplication obtain qualitythe same presentation and/or performance of be necessaryit may parameters call tune theBRepMesh of of to algorithm on the thenewIn version Implicationson porting

with OCCT isbuilt support,is possibleTBB it will automatically. accepted be box test. atIf Full inclusion some is always metric first processed Descent - BVH_Traverse BVH_Traverse multi in

entation via fully

tasks tasks

part ofOCCT part documentation. e

dparallel

thread matches by the by Eachnodebest branch. the has a thenode and metric, with best the - threading support (when OCCT (whenthreading support OCCT receiving index of

- occt 1 multiplication

-

OSD_ThreadPool e

local (likehandles) storage file deflection iscontrolled more ac deflection y g o l o n h c e T E D A C S A C n e p O OSD_Parallel::SetUseOcctThreads()

0.1 of BVH tree tree of and BVH www.opencascade.com like this:

and particular

- - BVH_PairTraverse parallel nbThreads 10

lancing within nested chain multithreaded algorithms

).

directly tocontrast (inOSD_Parallel) define can

criteria) a pointthe ofnode is itstree the fully (i.e. accepted

thread withinthe po , which, allows

a instance can be adjusted controlbetter for of

, pair ofpair trees BVH

its children aregoing not to and be checked

Copyright © 2019 © Copyright - the usage ofcomponentupdated the usage

nbDefThreads 10 on is used

classes

application level. Algorithms using to to

accountdifferent into scenarios and find dynamically switch to optimizeto with data. work cu

rately. to thisDue improvement without TBB) without hasTBB) been ing

- ol; ol; can be used this have intr been in parallelization parallelization in

, the necessary result faster.

OSD_Parallel

CASCADE OPEN by respectively

global flag. Within the global flag. Within

, which , in resulted

oduced oduced for

These .

for to

see

Page Page

8

/ 13

Open CASCADE Technology

ReadObj can New be accessed from readers Draw viacommands Harness RWMesh_CoordinateSystemConverter coordinate systemsreaders allowand system input (see file as parameters defining CAD systems Y OBJ) glTF (and most use files MTL (from Polygonsfile). are automatically triangles tools. into using BRepMesh split reading supports reader polygonal (groups)OBJ colorsnames information, and OCCT building fromcode. source library, RapidJSON (HAVE_RAPIDJSON)whichrelies on beshould enabled while preserves Reader files. namestriangulation, structure, scene and colors. T (glTF +common bin), embedded (base64 supports versions 1.0and glTF reader 2.0 of specifications format and handles currentlyformat file features, unsupp Low structures relyingleveland reader internal on introduced have been New classes Tools into elements the tree. T   optimizations are already imple between somemin/max distance object and BVH tree betweenor twotrees. BVH All New classes    Th   leaf and rejection node acceptance: classes use these toTo user needs implementthe methods rulesthe defining the for

he new e optimizationse the methods traverse of tree for are optional: traverse. IsMetricBetter de RejectMetric Accept rejected. the comparison of criteria box withand the if some define shouldnode be RejectNode trees trees case ofIn the case ofIn Stop - level reader can be used translating reader into for level data non

termi element of treeelement of BVH for - is BVH_B

like this: stops the stops traversewhen theresult isachieved.

nes nes computed. -

performs processing the thetree.performs of elements of RWGltf_CafReader BVH_Distance reading glTF and OBJ files OBJ and glTF reading BVH_PairDistance BVH_Distance workingwith Z whether - oxSet

-

operates boundingthe with should boxand node provide the of

compares themetric ofthe node with one theglobal and y g o l o n h c e T E D A C S A C n e p O - www.opencascade.com comparesthe two defines metrics and thedirection of the

to

class the should node be rejected. rea

are are d -

: and up coordinate system. coordinate up implements implements

glTF how thedistance justmented, user need - computed. up coordinateup which system can be unexpected by :

BVH_PairDistance and

how distance between the and OBJ consist Readers offiles. two parts

orted by XDEdocument.

RWObj_CafReader

- simpleand convenient interface Copyright © 2019 © Copyright tool). encoded mesh and data) binary (glb) glTF

a

s intotranslator

from from

To this handle To

s implement the

to to define:

CASCADE OPEN by - objectto XDEstructures, including

with toolkit TKRWMesh

the an

tools XDEdocument.

elementsof the ReadGltf , OBJ glTF and

the

to to find box

to

he reader

and

and add

the

tree tree :

low to to Page Page

-

9

/ 13

Open CASCADE Technology

application. and robustit can be used more rapid integration ofViewerOCCTfor 3D into supports twoand withcooperates class Viewer. 3D This standardsupports mouse varioustouchpad, keyboard)(mouse, devices camera onto manipulations in OCCT n A Controller View > vviewcubevc > vinit > ploadVISUALIZATION can be Newactivated Draw in via object the Harness used scheme by smo vertices, AIS_ViewCube global axescoordinate of system. indicating toalternative n A view cube Interactive > vfit > XDisplay > vinit > ReadGltfDBuggy. > ploadXDEVISUALIZATION

ew ew class oth animation. The look

class

which

AIS_ViewCube AIS_ViewController AIS_Trihedron -

dispMode 1D allow user allow user

OCCT 3D View OCCT 3D interactiverepresents an with cube pickable the -

thread thread

y g o l o n h c e T E D A C S A C n e p O www.opencascade.com application.

approach (with threads separate for

to - n

open one standard views. withof isdone Transition introducedhas been - -

feel of feel

- residen a er update picking update pipeline(including er selection) and

explore

implements

a

new can be adjusted tocolor object fit

t auxiliary in displayed object

Copyright © 2019 © Copyright

mapping of user input ofuser mapping events from

and to

provid touchscreen inputlayouts, vviewcube

CASCADE OPEN by e

an interactive cube and sides, edges GUI

command and

a rendering view corner

like this: the Page Page ) so ,

10

/ 13

Open CASCADE Technology

timings. with frame extended. tools The Tools Viewerprofilingfor 3D integrated into performance OCCT have been viewer performance of 3D analysis forTools > vclipplanepln > vdisplayb > vinit > boxb204010030 > ploadMODELINGVISUALI Drawclippingcan beIn activated via Harness, chains command Graphic3d_ClipPlane::SetChainNextPlane() Graphic3d_ClipPlane boxand presentations. section previously.This in supportedoperation addition to Clippingdefining Planes logical(disjunction) OR Viewer3D nowCl supports viewer 3D in clipping Complex experienceuser within cameraperspective projection. utilizesView also Controller from picking information services in QtQuickapplication.and redirectingsuccessfullyfor input used user from GUI is,however, framework thescope class beyond of this user providing integration acrossexperience uniform The platforms. with particular Draw already benefi Harness

- enables dispMode 1

y g o l o n h c e T E D A C S A C n e p O www.opencascade.com now analy counters more to provide - set

properties class providing interactive ¾ section (whenproviding ¼of ¾section iscut interactive off) detail

ipping Chains Chains ipping -

boxint 2555 ts from ts from migration onto ZATION

New is through available newfeature

-

see methods documentation for which Copyright © 2019 © Copyright

.

defin

native Xlib, APIs (WinAPI, Cocoa)

AIS_ViewController e

logic s

CASCADE OPEN by e and can and e chart display a

al -

currentlywas it

to AND (conjunction)

provid vclipplane

e

a

by better better

like this: Page Page

11

/ 13

Open CASCADE Technology

> vsetcolorbg255 255 > vinit > pspheres1 > boxb201 3 > ploadMODELINGVISUALIZATION like this: used arewithinNew available Draw options command Harness to possible (see boundaries withflag whichallows Viewer3D nownew supports flag outline shape of displayDynamic > vrenderparams > vdisplayvc > vviewcubevc > vinit > ploadVISUALIZATION vrenderparams onscreencounters performance canThe be Draw in viaactivated command Harness Graphic3d_RenderingParams::and activ OCCT toolscan These be helpful for

ated with minimal efforts ated

- based application.Asbased they into integrated Viewer, are 3D they be easily can

Aspect_IS_HIDDENLINE -

w 1024 achiev includ

Prs3d_Drawer::SetFaceBoundaryUpperContinuity() like this: -

e trihedron bottomright100 y g o l o n h c e T E D A C S A C n e p O ing

HLR - - www.opencascade.com perfCounters full h 512

within outline Shaded presentation.shape Combination ofthis

- alike alike

- optimization of e

see

without ffect Graphic3d_Aspects::SetDrawSilhouette()

Graphic3d_RenderingParams::CollectedStats interior style interior suppressedseam edges and ToShowStats

Copyright © 2019 © Copyright -

expensive mode perfChart 100 performance

.

CASCADE OPEN by vaspects ofvisualization pipeline l

ling algorithms.

and can be , )

it make

f , ace ace Page Page

in

12

/ 13

Open CASCADE Technology

> vaspectsbs > vfit > vdisplay

- - -

setFaceBoundaryColor BLACK setFaceBoundaryDraw 1 dispMode 1bs

-

y g o l o n h c e T E D A C S A C n e p O setDrawSilhouette 1 www.opencascade.com

Copyright © 2019 © Copyright -

setMostContinuity c0 - setEdgeColor BLACK

- setInteriorStyle HIDDENLINE

CASCADE OPEN by

Page Page

13

/ 13