From 0a6d974274b2ae5466c0868c9914c1345b8bc802 Mon Sep 17 00:00:00 2001 From: Vera Sdobnova Date: Thu, 1 Oct 2020 15:18:59 +0300 Subject: [PATCH] 0027191: Documentation - redesign of information architecture -- revision (overview and samples) Revision of Introduction, Overview, Samples, Tutorial - Technical Overview is incorporated into Introduction - Samples (from Overview) and Tutorial are moved into new section Tutorials and Samples - Content of Getting Started section (Draw Test Harness and Experimenting with Draw Test Harness) is moved into Tutorial and Samples section. - Content changes: links to Open Cascade website promoting paid training and support are deleted. - Some pictures in User Guides (Foundation Classes, Modeling Data, Modeling Algorithms) and Tutorial are updated to improve quality and correct mistakes. --- dox/FILES_HTML.txt | 7 +- dox/build/build_occt/building_occt.md | 2 +- dox/contribution/coding_rules.md | 2 +- dox/contribution/contribution.md | 21 +- .../contribution_workflow.md | 10 +- .../documentation/documentation.md | 26 +- dox/contribution/git_guide/git_guide.md | 4 +- dox/contribution/tests/tests.md | 2 +- .../images/0001.png | Bin .../images/0002.png | Bin .../images/0003.png | Bin .../images/0004.png | Bin .../images/0008.png | Bin .../images/0012.png | Bin .../images/0013.png | Bin .../images/0014.png | Bin .../images/technical_overview_schema.png | Bin dox/introduction/introduction.md | 951 +++++++++--------- dox/resources/occ_logo.png | Bin 7532 -> 6669 bytes dox/samples/draw_scripts.md | 125 +++ dox/samples/images/overview_overview_qt.png | Bin 0 -> 165475 bytes dox/samples/images/sample_ios_uikit.png | Bin 0 -> 48744 bytes dox/samples/images/sample_webgl.png | Bin 0 -> 75733 bytes dox/samples/images/samples_c__ie.png | Bin 0 -> 38265 bytes dox/samples/images/samples_draw.png | Bin 0 -> 17567 bytes .../images/samples_java_android_occt.jpg | Bin 0 -> 13697 bytes dox/samples/images/samples_mvc.png | Bin 0 -> 32022 bytes .../images/samples_qml_android_occt.jpg | Bin 0 -> 14519 bytes dox/samples/images/samples_qt.png | Bin 0 -> 64276 bytes dox/samples/ocaf.md | 594 +++++++++++ dox/samples/ocaf_func.md | 286 ++++++ dox/samples/samples.md | 152 +++ .../boolean_operations/boolean_operations.md | 1 + .../images/technical_overview_occt_logo.png | Bin 6640 -> 0 bytes .../images/technical_overview_over.png | Bin 9737 -> 0 bytes dox/technical_overview/technical_overview.md | 328 ------ dox/tutorial/images/tutorial_image004.png | Bin 1948 -> 5600 bytes dox/tutorial/images/tutorial_image005.png | Bin 1875 -> 5483 bytes dox/tutorial/images/tutorial_image006.png | Bin 2747 -> 6766 bytes dox/tutorial/images/tutorial_image011.png | Bin 2794 -> 8316 bytes dox/tutorial/images/tutorial_image012.png | Bin 3221 -> 8001 bytes dox/tutorial/images/tutorial_image013.png | Bin 2633 -> 4389 bytes dox/tutorial/images/tutorial_image014.png | Bin 3333 -> 5089 bytes dox/tutorial/images/tutorial_image015.png | Bin 4437 -> 7479 bytes dox/tutorial/images/tutorial_image016.png | Bin 4158 -> 8337 bytes dox/tutorial/images/tutorial_image017.png | Bin 5864 -> 11688 bytes dox/tutorial/images/tutorial_image018.png | Bin 2876 -> 11413 bytes 47 files changed, 1702 insertions(+), 809 deletions(-) rename dox/{technical_overview => introduction}/images/0001.png (100%) rename dox/{technical_overview => introduction}/images/0002.png (100%) rename dox/{technical_overview => introduction}/images/0003.png (100%) rename dox/{technical_overview => introduction}/images/0004.png (100%) rename dox/{technical_overview => introduction}/images/0008.png (100%) rename dox/{technical_overview => introduction}/images/0012.png (100%) rename dox/{technical_overview => introduction}/images/0013.png (100%) rename dox/{technical_overview => introduction}/images/0014.png (100%) rename dox/{technical_overview => introduction}/images/technical_overview_schema.png (100%) create mode 100644 dox/samples/draw_scripts.md create mode 100644 dox/samples/images/overview_overview_qt.png create mode 100644 dox/samples/images/sample_ios_uikit.png create mode 100644 dox/samples/images/sample_webgl.png create mode 100644 dox/samples/images/samples_c__ie.png create mode 100644 dox/samples/images/samples_draw.png create mode 100644 dox/samples/images/samples_java_android_occt.jpg create mode 100644 dox/samples/images/samples_mvc.png create mode 100644 dox/samples/images/samples_qml_android_occt.jpg create mode 100644 dox/samples/images/samples_qt.png create mode 100644 dox/samples/ocaf.md create mode 100644 dox/samples/ocaf_func.md create mode 100644 dox/samples/samples.md delete mode 100644 dox/technical_overview/images/technical_overview_occt_logo.png delete mode 100644 dox/technical_overview/images/technical_overview_over.png delete mode 100644 dox/technical_overview/technical_overview.md diff --git a/dox/FILES_HTML.txt b/dox/FILES_HTML.txt index fa5783b594..46e89cb7a2 100644 --- a/dox/FILES_HTML.txt +++ b/dox/FILES_HTML.txt @@ -7,14 +7,17 @@ introduction/introduction.md +samples/samples.md ../samples/mfc/standard/ReadMe.md ../samples/CSharp/ReadMe.md ../samples/CSharp/ReadMe_D3D.md - ../samples/qt/AndroidQt/ReadMe.md ../samples/java/jniviewer/ReadMe.md ../samples/ios/UIKitSample/ReadMe.md ../samples/webgl/ReadMe.md +samples/ocaf.md +samples/ocaf_func.md +samples/draw_scripts.md tutorial/tutorial.md @@ -26,8 +29,6 @@ build/build_documentation/building_documentation.md debug/debug.md upgrade/upgrade.md -technical_overview/technical_overview.md - user_guides/user_guides.md user_guides/foundation_classes/foundation_classes.md user_guides/modeling_data/modeling_data.md diff --git a/dox/build/build_occt/building_occt.md b/dox/build/build_occt/building_occt.md index ccb5a062fd..4ee6a6d0d1 100644 --- a/dox/build/build_occt/building_occt.md +++ b/dox/build/build_occt/building_occt.md @@ -6,7 +6,7 @@ Build OCCT {#build_upgrade__building_occt} @note Before building OCCT, make sure to have all required third-party libraries installed. The list of required libraries depends on what OCCT modules will be used, and your preferences. The typical minimum is **Freetype** (necessary for Visualization) and **Tcl/Tk** (for DRAW). -See @ref OCCT_OVW_SECTION_2 "requirements on 3rdparty libraries" for a full list. +See @ref intro_req "requirements on 3rdparty libraries" for a full list. On OS X we recommend to use native libraries. @section build_occt_windows Windows diff --git a/dox/contribution/coding_rules.md b/dox/contribution/coding_rules.md index 8eb1f4e8ad..7f8f6238c7 100644 --- a/dox/contribution/coding_rules.md +++ b/dox/contribution/coding_rules.md @@ -1,4 +1,4 @@ -Coding Rules {#occt_dev_guides__coding_rules} +Coding Rules {#occt_contribution__coding_rules} ====================================== @tableofcontents diff --git a/dox/contribution/contribution.md b/dox/contribution/contribution.md index e64324b0bd..c16159c16b 100644 --- a/dox/contribution/contribution.md +++ b/dox/contribution/contribution.md @@ -1,15 +1,10 @@ - Developer Guides {#dev_guides} -================ +Contribution {#contribution} +============ -The following documents provide information on OCCT building, development and testing: +This chapter contains the detailed infomation about contribution procedure: -* @subpage occt_contribution__documentation "Documentation system" -* @subpage occt_dev_guides__coding_rules "Coding Rules" -* @subpage occt_dev_guides__contribution_workflow "Contribution Workflow" -* @subpage occt_dev_guides__git_guide "Guide to installing and using Git for OCCT development" -* @subpage occt_dev_guides__tests "Automatic Testing system" -* @subpage occt__debug "Debugging tools and hints" - -The following guide provides information relevant to upgrading applications developed with previous versions of OCCT, to recent one: - -* @subpage occt__upgrade "Upgrade from previous OCCT versions" +* @subpage occt_contribution__contribution_workflow +* @subpage occt_contribution__git_guide +* @subpage occt_contribution__coding_rules +* @subpage occt_contribution__tests +* @subpage occt_contribution__documentation diff --git a/dox/contribution/contribution_workflow/contribution_workflow.md b/dox/contribution/contribution_workflow/contribution_workflow.md index 6e9ff697c9..f700e9fc3c 100644 --- a/dox/contribution/contribution_workflow/contribution_workflow.md +++ b/dox/contribution/contribution_workflow/contribution_workflow.md @@ -1,4 +1,4 @@ -Contribution Workflow {#occt_dev_guides__contribution_workflow} +Contribution Workflow {#occt_contribution__contribution_workflow} ==================================== @tableofcontents @@ -144,7 +144,7 @@ Change of layout or re-formatting of the existing code is allowed only in the pa @note If deemed useful, re-formatting or cosmetic changes affecting considerable parts of the code can be made within a dedicated issue. -The changes should comply with the OCCT @ref occt_dev_guides__coding_rules "Codng Rules". +The changes should comply with the OCCT @ref occt_contribution__coding_rules "Codng Rules". It is especially important to comment the code properly so that other people can understand it easier. The modification should be tested by running OCCT tests (on the platform and scope available to **Developer**) and ensuring absence of regressions. @@ -163,7 +163,7 @@ When the test case cannot be provided for any reason, the maximum possible infor If the change affects a functionality described in @ref user_guides "User Guides", the corresponding user guide should be updated to reflect the change. -If the change affects OCCT test system, build environment, or development tools described in @ref dev_guides "Developer Guides", the corresponding guide should be updated. +If the change affects OCCT test system, build environment, or development tools described in @ref build_upgrade "Build, Debug and Upgrade" or @ref contribution "Contribution", the corresponding guide should be updated. The changes that break compatibility with the previous versions of OCCT (i.e. affecting API or behavior of existing functionality in the way that may require update of existing applications based on an earlier official release of OCCT to work correctly) should be described in the document @ref occt__upgrade "Upgrade from previous OCCT versions". It is recommended to add a sub-section for each change described. @@ -183,7 +183,7 @@ In case if the fix is implemented on the previous release of OCCT, the branch ca The branch name should be composed of letters **CR** (abbreviation of "Change Request") followed by the issue ID number (without leading zeros). It is possible to add an optional suffix to the branch name after the issue ID, e.g. to distinguish between several versions of the fix (see @ref occt_contribution_nonstd_rebase). -See @ref occt_dev_guides__git_guide "Guide to using GIT" for help. +See @ref occt_contribution__git_guide "Guide to using GIT" for help. @note When a branch with the name given according to the above rule is pushed to Git, a note is automatically added to the corresponding issue in Mantis, indicating the person who has made the push, the commit hash, and (for new commits) the description. @@ -226,7 +226,7 @@ The possible variants are: @subsection occt_contribution_workflow_review Code review -The **Reviewer** analyzes the proposed solution for applicability in accordance with OCCT @ref occt_dev_guides__coding_rules "Coding Rules" and examines all changes in the sources, test case(s), and documentation to detect obvious and possible errors, misprints, or violations of the coding style. +The **Reviewer** analyzes the proposed solution for applicability in accordance with OCCT @ref occt_contribution__coding_rules "Coding Rules" and examines all changes in the sources, test case(s), and documentation to detect obvious and possible errors, misprints, or violations of the coding style. If the Reviewer detects some problems, he can either: diff --git a/dox/contribution/documentation/documentation.md b/dox/contribution/documentation/documentation.md index bea03d425f..3c8b768365 100644 --- a/dox/contribution/documentation/documentation.md +++ b/dox/contribution/documentation/documentation.md @@ -5,6 +5,22 @@ @section OCCT_DM_SECTION_1 Introduction +OCCT documentation is provided in several forms: + +- This overview provides general description of OCCT structure, functionality, modules, and features. + It is available in HTML format (generated by Doxygen) and includes User and Developer Guides. + The sources of this documentation are contained in **dox** subdirectory of OCCT sources + (plain text format is used, with mixed MarkDown / Doxygen syntax mark-up). + +- User and Developer Guides describing in details OCCT modules and development tools are also available in + Adobe Portable Document Format (PDF). To read this format, you need Adobe Acrobat Reader, + which is a freeware and can be downloaded from the Adobe site. + +- Full reference documentation covering all OCCT classes generated automatically by Doxygen + software is provided in HTML format. + Reference documentation is presented in **Modules --> Toolkits --> Packages --> Classes** + logic structure with cross-references to all OCCT classes and complete in-browser search by all classes. + This document provides practical guidelines for generation and editing of OCCT user documentation. @section OCCT_DM_SECTION_2 Prerequisites @@ -122,16 +138,16 @@ The documentation is generated in subfolder *doc* : @section OCCT_DM_SECTION_4 Adding a New Document -Place a new document in the folder taking into account its logical position in the documentation hierarchy. For instance, the document *svn.md* about the use of SVN to work with OCCT source code can be placed into /dox/dev_guides/. +Place a new document in the folder taking into account its logical position in the documentation hierarchy. For instance, the document *svn.md* about the use of SVN to work with OCCT source code can be placed into /dox/contribution/. If there are images in the document, it should be placed in its own folder containing a subfolder for images. For instance: -* /dox/dev_guides/svn/ -- for *svn.md* file; -* /dox/dev_guides/svn/images/ -- for images. +* /dox/contribution/svn/ -- for *svn.md* file; +* /dox/contribution/svn/images/ -- for images. Add a relative path to *svn.md* in file dox/FILES.txt. For instance @verbatim -dev_guides/svn/svn.md +contribution/svn/svn.md @endverbatim **Note** that the order of paths to documents in *FILES.txt* is reproduced in the Table of Contents in the HTML output, thus they need to be placed logically. @@ -154,7 +170,7 @@ http://www.stack.nl/~dimitri/doxygen/manual A document file in *.md format must start with a proper header defining a caption and a unique tag. @verbatim -Documentation System {#dev_guides__documentation} +Documentation System {#contribution__documentation} ===================== @endverbatim diff --git a/dox/contribution/git_guide/git_guide.md b/dox/contribution/git_guide/git_guide.md index 7d93c422e2..da07e71f3f 100644 --- a/dox/contribution/git_guide/git_guide.md +++ b/dox/contribution/git_guide/git_guide.md @@ -1,4 +1,4 @@ -Guide to installing and using Git for OCCT development {#occt_dev_guides__git_guide} +Guide to installing and using Git for OCCT development {#occt_contribution__git_guide} ================================= @tableofcontents @@ -17,7 +17,7 @@ Guide to installing and using Git for OCCT development {#occt_dev_guides__git_gu For the experienced Git users it can be enough to read sections 1 and 3 of this document to start working with the repository. - Familiarize yourselves with the @ref occt_dev_guides__contribution_workflow "Contribution Workflow document" + Familiarize yourselves with the @ref occt_contribution__contribution_workflow "Contribution Workflow document" that describes how Git is used for processing contributions to OCCT. This and related documents are available at the Resources page diff --git a/dox/contribution/tests/tests.md b/dox/contribution/tests/tests.md index 3164b2f02f..0d81ee7734 100644 --- a/dox/contribution/tests/tests.md +++ b/dox/contribution/tests/tests.md @@ -1,4 +1,4 @@ - Automated Testing System {#occt_dev_guides__tests} + Automated Testing System {#occt_contribution__tests} ====================================== @tableofcontents diff --git a/dox/technical_overview/images/0001.png b/dox/introduction/images/0001.png similarity index 100% rename from dox/technical_overview/images/0001.png rename to dox/introduction/images/0001.png diff --git a/dox/technical_overview/images/0002.png b/dox/introduction/images/0002.png similarity index 100% rename from dox/technical_overview/images/0002.png rename to dox/introduction/images/0002.png diff --git a/dox/technical_overview/images/0003.png b/dox/introduction/images/0003.png similarity index 100% rename from dox/technical_overview/images/0003.png rename to dox/introduction/images/0003.png diff --git a/dox/technical_overview/images/0004.png b/dox/introduction/images/0004.png similarity index 100% rename from dox/technical_overview/images/0004.png rename to dox/introduction/images/0004.png diff --git a/dox/technical_overview/images/0008.png b/dox/introduction/images/0008.png similarity index 100% rename from dox/technical_overview/images/0008.png rename to dox/introduction/images/0008.png diff --git a/dox/technical_overview/images/0012.png b/dox/introduction/images/0012.png similarity index 100% rename from dox/technical_overview/images/0012.png rename to dox/introduction/images/0012.png diff --git a/dox/technical_overview/images/0013.png b/dox/introduction/images/0013.png similarity index 100% rename from dox/technical_overview/images/0013.png rename to dox/introduction/images/0013.png diff --git a/dox/technical_overview/images/0014.png b/dox/introduction/images/0014.png similarity index 100% rename from dox/technical_overview/images/0014.png rename to dox/introduction/images/0014.png diff --git a/dox/technical_overview/images/technical_overview_schema.png b/dox/introduction/images/technical_overview_schema.png similarity index 100% rename from dox/technical_overview/images/technical_overview_schema.png rename to dox/introduction/images/technical_overview_schema.png diff --git a/dox/introduction/introduction.md b/dox/introduction/introduction.md index 61c7f01f55..e1b9c43f4a 100644 --- a/dox/introduction/introduction.md +++ b/dox/introduction/introduction.md @@ -7,26 +7,512 @@ @figure{/resources/occt_logo.png} @htmlonly@endhtmlonly -@section OCCT_OVW_SECTION_1 Welcome - Welcome to Open CASCADE Technology (OCCT), a software development platform providing services for 3D surface and solid modeling, CAD data exchange, and visualization. Most of OCCT functionality is available in the form of C++ libraries. OCCT can be best applied in development of software dealing with 3D modeling (CAD), manufacturing / measuring (CAM) or numerical simulation (CAE). -@section OCCT_OVW_SECTION_2 Copyrights - -Open CASCADE Technology and all materials, including this documentation, is -Copyright (c) 1999-2018 by OPEN CASCADE S.A.S. All rights reserved. - @htmlonly
@endhtmlonly https://www.opencascade.com @figure{/resources/occ_logo.png} @htmlonly
@endhtmlonly - License --------- +@section intro_overview Overview + +Open CASCADE Technology (OCCT) is an object-oriented C++ class library designed for rapid production of sophisticated domain-specific CAD/CAM/CAE applications. + +A typical application developed using OCCT deals with two or three-dimensional (2D or 3D) geometric modeling +in general-purpose or specialized Computer Aided Design (CAD) systems, manufacturing +or analysis applications, simulation applications, or even illustration tools. + +OCCT library is designed to be truly modular and extensible, providing C++ classes for: + * Basic data structures (geometric modeling, visualization, interactive selection and application specific services); + * Modeling algorithms; + * Working with mesh (faceted) data; + * Data interoperability with neutral formats (IGES, STEP); + +The C++ classes and other types are grouped into packages. Packages are organized into toolkits (libraries), to which you can link your application. Finally, toolkits are grouped into seven modules. + +This modular structure is illustrated in the diagram below. + +@figure{/introduction/images/technical_overview_schema.png} + +* @ref intro_overview_fclasses "Foundation Classes" module underlies all other OCCT classes; +* @ref intro_overview_moddata "Modeling Data" module supplies data structures to represent 2D and 3D geometric primitives and their compositions into CAD models; +* @ref intro_overview_modalgo "Modeling Algorithms" module contains a vast range of geometrical and topological algorithms; + * @ref intro_overview_mesh "Mesh" toolkit from "Modeling Algorithms" module implements tessellated representations of objects; +* @ref intro_overview_visu "Visualization" module provides complex mechanisms for graphical data representation; +* @ref intro_overview_de "Data Exchange" module inter-operates with popular data formats and relies on @ref intro_overview_heal "Shape Healing" to improve compatibility between CAD software of different vendors; +* @ref intro_overview_ocaf "Application Framework" module offers ready-to-use solutions for handling application-specific data (user attributes) and commonly used functionality (save/restore, undo/redo, copy/paste, tracking CAD modifications, etc). + +In addition, @ref intro_overview_draw "Open CASCADE Test Harness", also called Draw, provides an entry point to the library and can be used as a testing tool for its modules. + +@subsection intro_overview_fclasses Foundation Classes + +**Foundation Classes** module contains data structures and services used by higher-level Open CASCADE Technology classes: + + * Primitive types, such as Boolean, Character, Integer or Real; + * String classes that handle Unicode strings; + * Collection classes that handle statically or dynamically sized aggregates of data, such as arrays, lists, queues, sets and hash tables (data maps). + * Classes providing commonly used numerical algorithms and basic linear algebra calculations (addition, multiplication, transposition of vectors and matrices, solving linear systems etc). + * Fundamental types like color, date and time information; + * Primitive geometry types providing implementation of basic geometric and algebraic entities that define and manipulate elementary data structures. + * Exception classes that describe situations, when the normal execution of program is abandoned; + +This module also provides a variety of general-purpose services, such as: + * Safe handling of dynamically created objects, ensuring automatic deletion of unreferenced objects (smart pointers); + * Standard and specialized memory allocators; + * Extended run-time type information (RTTI) mechanism maintaining a full type hierarchy and providing means to iterate over it; + * Encapsulation of C++ streams; + * Basic interpreter of expressions facilitating the creation of customized scripting tools, generic definition of expressions, etc.; + * Tools for dealing with configuration resource files and customizable message files facilitating multi-language support in applications; + * Progress indication and user break interfaces, giving a possibility even for low-level algorithms to communicate with the user in a universal and convenient way; + * and many others... + +See the details in @ref occt_user_guides__foundation_classes "Foundation Classes User's Guide" + +@subsection intro_overview_moddata Modeling Data + +**Modeling Data** supplies data structures to implement boundary representation (BRep) of objects in 3D. +In BRep the shape is represented as an aggregation of geometry within topology. +The geometry is understood as a mathematical description of a shape, e.g. as curves and surfaces (simple or canonical, Bezier, NURBS, etc). +The topology is a data structure binding geometrical objects together. + +Geometry types and utilities provide geometric data structures and services for: + * Description of points, vectors, curves and surfaces: + * their positioning in 3D space using axis or coordinate systems, and + * their geometric transformation, by applying translations, rotations, symmetries, scaling transformations and combinations thereof. + * Creation of parametric curves and surfaces by interpolation and approximation; + * Algorithms of direct construction; + * Conversion of curves and surfaces to NURBS form; + * Computation of point coordinates on 2D and 3D curves; + * Calculation of extrema between geometric objects. + +Topology defines relationships between simple geometric entities. +A shape, which is a basic topological entity, can be divided into components (sub-shapes): + * Vertex -- a zero-dimensional shape corresponding to a point; + * Edge -- a shape corresponding to a curve and bounded by a vertex at each extremity; + * Wire -- a sequence of edges connected by their vertices; + * Face -- a part of a plane (in 2D) or a surface (in 3D) bounded by wires; + * Shell -- a collection of faces connected by edges of their wire boundaries; + * Solid -- a finite closed part of 3D space bounded by shells; + * Composite solid -- a collection of solids connected by faces of their shell boundaries; + * Compound -- a collection of shapes of arbitrary type. + +Complex shapes can be defined as assemblies (compounds) of simpler entities. + +See the details in @ref occt_user_guides__modeling_data "Modeling Data User's Guide" + +3D geometric models can be stored in OCCT native BREP format. +See @ref specification__brep_format "BREP Format Description White Paper" for details on the format. + +@subsection intro_overview_modalgo Modeling Algorithms + +**Modeling Algorithms** module groups a wide range of topological and geometric algorithms used in geometric modeling. +Basically, there are two groups of algorithms in Open CASCADE Technology: + * High-level modeling routines used in the real design; + * Low-level mathematical support functions used as a groundwork for the modeling API. + +Low-level *geometric tools* provide the algorithms, which: + * Calculate the intersection of two curves, surfaces, or a curve and a surface; + * Project points onto 2D and 3D curves, points onto surfaces and 3D curves onto surfaces; + * Construct lines and circles from constraints; + * Construct free-form curves and surfaces from constraints (interpolation, approximation, skinning, gap filling, etc). + +Low-level *topological tools* provide the algorithms, which: + * Tessellate shapes; + * Check correct definition of shapes; + * Determine the local and global properties of shapes (derivatives, mass-inertia properties, etc); + * Perform affine transformations; + * Find planes in which edges are located; + * Convert shapes to NURBS geometry; + * Sew connected topologies (shells and wires) from separate topological elements (faces and edges). + +Top-level API provides the following functionality: + * Construction of Primitives: + * Boxes; + * Prisms; + * Cylinders; + * Cones; + * Spheres; + * Toruses. + * Kinematic Modeling: + * Prisms -- linear sweeps; + * Revolutions -- rotational sweeps; + * Pipes -- general-form sweeps; + * Lofting. + +@figure{/introduction/images/0001.png "Shapes containing pipes with variable radius produced by sweeping"} + + * Boolean Operations, which allow creating new shapes from the combinations of source shapes. For two shapes *S1* and *S2*: + * *Common* contains all points that are in *S1* and *S2*; + * *Fuse* contains all points that are in *S1* or *S2*; + * *Cut* contains all points in that are in *S1* and not in *S2*. + +See @ref specification__boolean_operations "Boolean Operations" User's Guide for detailed documentation. + + * Algorithms for local modifications such as: + * Hollowing; + * Shelling; + * Creation of tapered shapes using draft angles; + * Algorithms to make fillets and chamfers on shape edges, including those with variable radius (chord). + + * Algorithms for creation of mechanical features, i.e. depressions, protrusions, ribs and grooves or slots along planar or revolution surfaces. + +@figure{/introduction/images/0004.png} + +See the details in @ref occt_user_guides__modeling_algos "Modeling Algorithms User's Guide". + +@subsection intro_overview_mesh Mesh + +**Mesh** toolkit provides the functionality to work with tessellated representations of objects in form of triangular facets. This toolkit contains: +- data structures to store surface mesh data associated to shapes and basic algorithms to handle them; +- data structures and algorithms to build triangular surface mesh from *BRep* objects (shapes); +- tools for displaying meshes with associated pre- and post-processor data (scalars or vectors). + +Open CASCADE SAS also offers Advanced Mesh Products: +- Open CASCADE Mesh Framework (OMF) +- Express Mesh + +@figure{/introduction/images/0003.png} + +@subsection intro_overview_visu Visualization + +**Visualization** module provides ready-to-use algorithms to create graphic presentations from various objects: shapes, meshes, etc. + +In Open CASCADE Technology visualization is based on the separation of CAD data and its graphical presentation. +The module also supports a fast and powerful interactive selection mechanism. + +Visualization module relies on the following key toolkits: +- *TKV3d* toolkit defines a high-level API called (Application Interactive Services* (AIS) for working with interactive objects. +- *TKService* toolkit defines a low-level API for managing and creating presentations from primitive arrays. + This toolkit defines an abstraction layer for defining an arbitrary graphic driver responsible for actual rendering. +- *TKOpenGl* toolkit implements the graphic driver using OpenGL and OpenGL ES libraries. + +While low-level API operates with primitive arrays (triangles, lines, points), the higher level includes services for building presentations for B-Rep shapes (shaded and wireframe). +A comprehensive list of standard interactive objects includes topological shape, mesh presentation, various dimensions, manipulators and others. +It provides a solid basis for rapid application development, while flexible and extensible API allows development of highly customized application-specific presentations. + +Here are a few examples of OCCT Visualization features: +* Camera-driven view projection and orientation. + Perspective, orthographic and stereographic projections are supported. +* Support of Common (diffuse/ambient/specular) and PBR metallic-roughness material models. +* Possibility to flexibly adjust appearance of dimensions in a 3D view. + The 3D text object represents a given text string as a true 3D object in the model space. +* Definition of clipping planes through the plane equation coefficients. + Ability to define visual attributes for cross-section at the level or individual clipping planes. + In the image below different parts of the rocket are clipped with different planes and hatched. +@figure{/introduction/images/0008.png, "Display of shape cross-section and dimensions"} + +* Support of built-in and application-specific GLSL shaders. +@figure{/introduction/images/0013.png, "Fragment shader implementing custom clipping surface"} + +* Optimization of rendering performance through the algorithms of: + * View frustum culling, which skips the presentation outside camera at the rendering stage; + * Back face culling, which reduces the rendered number of triangles and eliminates artifacts at shape boundaries. +* Real-time ray tracing technique using recursive Whitted's algorithm and Bounded Volume Hierarchy effective optimization structure. +@figure{introduction/images/0002.png, "Real time visualization by ray tracing method"} +@figure{introduction/images/0012.png, "Simulation of a glass cover"} + +For more details, see @ref occt_user_guides__visualization "Visualization User's Guide". + +The visualization of OCCT topological shapes by means of VTK library provided by VIS component is described in a separate @ref occt_user_guides__vis "VTK Integration Services" User's Guide. + +@subsection intro_overview_de Data Exchange + +**Data Exchange** allows developing OCCT-based applications that can interact with other CAD systems by writing and reading CAD models to and from external data. + +@figure{/introduction/images/0014.png,"Shape imported from STEP"} + +**Data Exchange** is organized in a modular way as a set of interfaces that comply with various CAD formats: IGES, STEP, STL, VRML, etc. +The interfaces allow software based on OCCT to exchange data with various CAD/PDM software packages, maintaining a good level of interoperability. +This module handles various problems of interoperability between CAD systems, caused by differences in model validity criteria and requirements to internal representation. + +* **Standardized Data Exchange** interfaces allow querying and examining the input file, converting its contents to a CAD model and running validity checks on a fully translated shape. + The following formats are currently supported: + * @ref occt_user_guides__step "STEP" (AP203: Mechanical Design, this covers General 3D CAD; AP214: Automotive Design; AP242). + * @ref occt_iges_1 "IGES" (up to 5.3). + * **glTF** 2.0 reader and writer. + * **OBJ** mesh file reader. + * **VRML** converter translates Open CASCADE shapes to VRML 1.0 files (Virtual Reality Modeling Language). + * **STL** converter translates Open CASCADE shapes to STL files. + STL (STtereoLithography) format is widely used for rapid prototyping (3D printing). +* @ref occt_user_guides__xde "Extended data exchange" (XDE) allows translating additional attributes attached to geometric data (colors, layers, names, materials etc). +* Advanced Data Exchange Components + are available in addition to standard Data Exchange interfaces to support interoperability and data adaptation (also using @ref intro_overview_heal "Shape Healing") with CAD software using the following proprietary formats: + * ACIS SAT + * Parasolid + * DXF + * IFC + * JT + +These components are based on the same architecture as interfaces with STEP and IGES. + +@subsection intro_overview_heal Shape Healing + +**Shape Healing** library provides algorithms to correct and adapt the geometry and topology of shapes imported to OCCT from other CAD systems. + +Shape Healing algorithms include, but are not limited to, the following operations: + * Analyze shape characteristics and, in particular, identify the shapes that do not comply with OCCT geometry and topology validity rules by analyzing geometrical objects and topology: + - check edge and wire consistency; + - check edge order in a wire; + - check the orientation of face boundaries; + - analyze shape tolerances; + - identify closed and open wires in a boundary. + * Fix incorrect or incomplete shapes: + - provide consistency between a 3D curve and its corresponding parametric curve; + - repair defective wires; + - fit the shapes to a user-defined tolerance value; + - fill gaps between patches and edges. + * Upgrade and change shape characteristics: + - reduce curve and surface degree; + - split shapes to obtain C1 continuity; + - convert any types of curves or surfaces to Bezier or B-Spline curves or surfaces and back; + - split closed surfaces and revolution surfaces. + +Each sub-domain of Shape Healing has its own scope of functionality: + +| Sub-domain | Description | Impact on the shape | +| :--- | :---- | :---- | +| Analysis | Explores shape properties, computes shape features, detects violation of OCCT requirements. | The shape itself is not modified. | +| Fixing | Fixes the shape to meet the OCCT requirements. | The shape may change its original form: modification, removal or creation of sub-shapes, etc.) | +| Upgrade | Improves the shape to fit some particular algorithms. | The shape is replaced with a new one, but geometrically they are the same. | +| Customization | Modifies the shape representation to fit specific needs. | The shape is not modified, only the mathematical form of its internal representation is changed. | +| Processing | Mechanism of shape modification via a user-editable resource file. | | + +For more details, refer to @ref occt_shg "Shape Healing User's guide". + +@subsection intro_overview_ocaf Application Framework + +**Open CASCADE Application Framework** (OCAF) handles Application Data basing on the Application/Document paradigm. +It uses an associativity engine to simplify the development of a CAD application thanks to the following ready-to-use features and services: + +* Data attributes managing the application data, which can be organized according to the development needs; +* Data storage and persistence (open/save); +* Possibility to modify and recompute attributes in documents. + With OCAF it is easy to represent the history of modification and parametric dependencies within your model; +* Possibility to manage multiple documents; +* Predefined attributes common to CAD/CAM/CAE applications (e.g. to store dimensions); +* Undo-Redo and Copy-Paste functions. + +Since OCAF handles the application structure, the only development task is the creation of application-specific data and GUIs. + +OCAF differs from any other CAD framework in the organization of application data, as there the data structures are based on reference keys rather than on shapes. +In a model, such attributes as shape data, color and material are attached to an invariant structure, which is deeper than the shapes. +A shape object becomes the value of *Shape* attribute, in the same way as an integer number is the value of *Integer* attribute and a string is the value of *Name* attribute. + +OCAF organizes and embeds these attributes in a document. OCAF documents, in their turn, are managed by an OCAF application. + +For more details, see @ref occt_user_guides__ocaf "OCAF User's Guide". + +@subsection intro_overview_draw Draw Test Harness + +**Test Harness** or **Draw** is a convenient testing tool for OCCT libraries. +It can be used to test and prototype various algorithms before building an entire application. +It includes: +- A command interpreter based on the TCL language; +- A number of 2D and 3D viewers; +- A set of predefined commands. + +The viewers support operations such as zoom, pan, rotation and full-screen views. + +The basic commands provide general-purpose services such as: +- Getting help; +- Evaluating a script from a file; +- Capturing commands in a file; +- Managing views; +- Displaying objects. + +In addition, **Test Harness** provides commands to create and manipulate curves and surfaces (geometry) and shapes, access visualization services, work with OCAF documents, perform data exchange, etc. + +You can add custom commands to test or demonstrate any new functionalities, which you develop. + +For more details, see @ref occt_user_guides__test_harness "Draw Test Harness Manual". + +@section intro_req Requirements + +Open CASCADE Technology is designed to be highly portable and is known to +work on wide range of platforms. +Current version is officially certified on Windows (IA-32 and x86-64), +Linux (x86-64), OS X / macOS (x86-64), Android (armv7 and x86), and +iOS (armv7, arm64) platforms. + +The tables below describe the recommended software configurations +for which OCCT is certified to work. + +@subsection intro_req_cpp C++ Compiler / IDE + +| OS | Compiler | +| --------- | ----------- | +| Windows | Microsoft Visual Studio: 2008 SP1, 2010 SP1, 2012 Update 4, 2013 Update 5, 2015 Update 3, 2017 1, 2019
, LLVM (ClangCL), GCC 4.3+ (Mingw-w64)| +| Linux | GNU gcc 4.3+
LLVM CLang 3.6+ | +| OS X / macOS | XCode 6 or newer | +| Android | NDK r10, GNU gcc 4.8 or newer | +| Web | Emscripten SDK 1.39 or newer (CLang) | + +1) VC++ 141 64-bit is used for regular testing and for building binary package of official release of OCCT on Windows. + +@subsection intro_req_libs Third-party libraries + +| Component | Requirement | +| --------- | ----------- | +| Graphic library | OpenGL 3.3+, OpenGL ES 2.0+
Direct3D 9 | +| Qt (for samples and demos) | Desktop: Qt 4.8.6+ https://www.qt.io/download/
Android: Qt 5.3.2+ https://www.qt.io/download/ | +| TCL (for testing tools) | Tcl/Tk 8.6.3+ https://www.tcl.tk/software/tcltk/download.html
or ActiveTcl 8.6 https://www.activestate.com/activetcl/downloads (for Windows)| +| Freetype (for text rendering) | FreeType 2.4.11-2.7.1 https://sourceforge.net/projects/freetype/files/ | +| FreeImage (optional, for support of common 2D graphic formats) | FreeImage 3.17.0+ https://sourceforge.net/projects/freeimage/files | +| FFmpeg (optional, for video recording) | FFmpeg 3.1+ https://www.ffmpeg.org/download.html | +| RapidJSON (optional, for reading glTF) | RapidJSON 1.1+ https://rapidjson.org/ | +| Intel TBB (optional, for multithreaded algorithms) | TBB 4.x or 5.x https://www.threadingbuildingblocks.org/ | +| VTK (for VTK Integration Services | VTK 6.1+ https://www.vtk.org/download/ | +| Doxygen (optional for building documentation) | Doxygen 1.8.5+ https://www.stack.nl/~dimitri/doxygen/download.html | + +@subsection intro_req_hw Hardware + +| Component | Requirement | +| --------- | ----------- | +| Minimum memory | 512 MB, 1 GB recommended | +| Free disk space (complete installation) | 600 MB approx. | + +On desktop, 3D viewer for optimal performance requires graphics processing unit (GPU) supporting OpenGL 3.3 or above. +Ray tracing requires OpenGL 4.0+ or OpenGL 3.3+ with *GL_ARB_texture_buffer_object_rgb32* extension. +Textures within ray tracing will be available only when *GL_ARB_bindless_texture extension* is provided by driver. + +On mobile platforms, OpenGL ES 2.0+ is required for 3D viewer (OpenGL ES 3.1+ is recommended). +The ray tracing is not yet available on mobile platforms. +Some old hardware might be unable to execute complex GLSL programs (e.g. with high number of light sources, clipping planes). + +OCCT 3D Viewer, in general, supports wide range of graphics hardware - from very old to new. +Therefore, if you observe some unexpected visual issues - first check for OpenGL driver update (or firmware update in case of mobile platforms); +but beware that driver update might also come with new bugs. +Don't forget to report these bugs to vendors. + +@section intro_install Installation + +In most cases you need to rebuild OCCT on your platform (OS, compiler) before +using it in your project, to ensure binary compatibility. +See @ref build_upgrade for instructions on building OCCT from sources on supported platforms. + +The following subsections describe how OCCT can be installed from ready-to-use packages on different platforms. + +@subsection intro_install_windows Windows + +On Windows Open CASCADE Technology can be installed with binaries precompiled by +Visual C++ 2010 with installation procedure. + +**Recommendation:** + +If you have a previous version of OCCT installed on your station, +and you do not plan to use it along with the new version, you might want to uninstall +the previous version (using Control Panel, Add/Remove Programs) before +the installation of this new version, to avoid possible problems +(conflict of system variables, paths, etc). + +**Attention:** For full installation OCCT requires approximately 650 Mb of disk space, +but during the installation process you will need 1,2 Gb of free disk space. + +OCCT installation with reference documentation requires 1,4 Gb on disk. + + * Download the OCCT installer from OPEN CASCADE web site using the link. you have been provided + * Launch the installer and follow the instructions. + +The includes and binaries of third-party libraries necessary for building and launching +OCCT are included into binary distribution (built with Visual C++ 2010). +When the installation is complete, you will find the directories for 3rd party products +(some might be absent in case of custom installation) and the main **OCCT** directory: + +@figure{/introduction/images/overview_3rdparty.png} + +The contents of the OCCT-7.4.0 directory (called further "OCCT root", or $CASROOT) are as follows: + +@figure{/introduction/images/overview_installation.png, "The directory tree"} + + * **adm** This folder contains administration files, which allow rebuilding OCCT; + * **adm/cmake** This folder contains files of CMake building procedure; + * **adm/msvc** This folder contains Visual Studio projects for Visual C++ 2010, 2012, 2013, 2015, 2017 and 2019 which allow rebuilding OCCT under Windows platform in 32 and 64-bit mode; + * **data** This folder contains CAD files in different formats, which can be used to test the OCCT functionality; + * **doc** This folder contains OCCT documentation in HTML and PDF format; + * **dox** This folder contains sources of OCCT documentation in plain text (MarkDown) format; + * **inc** This folder contains copies of all OCCT header files; + * **samples** This folder contains sample applications. + * **src** This folder contains OCCT source files. They are organized in folders, one per development unit; + * **tests** This folder contains scripts for OCCT testing. + * **tools** This folder contains sources of Inspector tool. + * **win64/vc10** This folder contains executable and library files built in optimize mode for Windows platform by Visual C++ 2010; + +@subsection intro_install_linux Linux + +OCCT is available as package "opencascade" in official repositories of many Linux distributions. + +See https://repology.org/project/opencascade/versions for overview of available repositories. + +@subsection intro_install_mac macOS + +On macOS, OCCT is available in Homebrew (https://formulae.brew.sh/formula/opencascade) +amd MacPorts (https://ports.macports.org/port/opencascade/summary) repositories. + +@section intro_env Environment Variables + +To run any Open CASCADE Technology application you need to set the environment variables. + +### On Windows + +You can define the environment variables with env.bat script located in the +$CASROOT folder. This script accepts two arguments to be used: +the version of Visual Studio (vc10 -- vc142) and the architecture (win32 or win64). + +The additional environment settings necessary for compiling OCCT libraries and samples +by Microsoft Visual Studio can be set using script custom.bat located in the same folder. +You might need to edit this script to correct the paths to third-party libraries +if they are installed on your system in a non-default location. + +Script msvc.bat can be used with the same arguments for immediate launch of Visual Studio for (re)compiling OCCT. + +### On Unix + + + If OCCT was built by Code::Blocks, you can define the environment variables with env_cbp.sh or custom_cbp.sh script. + + If OCCT was built by Automake, you can define the environment variables with env_amk.sh or custom_amk.sh script. + +The scripts are located in the OCCT root folder. + +### Description of system variables: + + * **CASROOT** is used to define the root directory of Open CASCADE Technology; + * **PATH** is required to define the path to OCCT binaries and 3rdparty folder; + * **LD_LIBRARY_PATH** is required to define the path to OCCT libraries (on UNIX platforms only; **DYLD_LIBRARY_PATH** variable in case of macOS); + * **MMGT_OPT** (optional) if set to 1, the memory manager performs optimizations as described below; if set to 2, + Intel (R) TBB optimized memory manager is used; if 0 (default), every memory block is allocated + in C memory heap directly (via malloc() and free() functions). + In the latter case, all other options starting with *MMGT*, except MMGT_CLEAR, are ignored; + * **MMGT_CLEAR** (optional) if set to 1 (default), every allocated memory block is cleared by zeros; + if set to 0, memory block is returned as it is; + * **MMGT_CELLSIZE** (optional) defines the maximal size of blocks allocated in large pools of memory. Default is 200; + * **MMGT_NBPAGES** (optional) defines the size of memory chunks allocated for small blocks in pages + (operating-system dependent). Default is 10000; + * **MMGT_THRESHOLD** (optional) defines the maximal size of blocks that are recycled internally + instead of being returned to the heap. Default is 40000; + * **MMGT_MMAP** (optional) when set to 1 (default), large memory blocks are allocated using + memory mapping functions of the operating system; if set to 0, + they will be allocated in the C heap by malloc(); + * **CSF_LANGUAGE** (optional) defines default language of messages; + * **CSF_DEBUG** (optional, Windows only): if defined then a diagnostic message is displayed in case of an exception; + * **CSF_DEBUG_BOP** (optional): if defined then it should specify directory where diagnostic data on problems occured in Boolean operations will be saved; + * **CSF_MDTVTexturesDirectory** defines the directory for available textures when using texture mapping; + * **CSF_ShadersDirectory** (optional) defines the directory for GLSL programs for Ray Tracing renderer (embedded resources are used when variable is undefined); + * **CSF_SHMessage** (optional) defines the path to the messages file for *ShapeHealing*; + * **CSF_XSMessage** (optional) defines the path to the messages file for **STEP** and **IGES** translators; + * **CSF_StandardDefaults**, **CSF_StandardLiteDefaults*, **CSF_XCAFDefaults**, and **CSF_PluginDefaults** define paths to directory where configuration files for OCAF persistence are located (required for open/save operations with OCAF documents); + * **CSF_IGESDefaults** and **CSF_STEPDefaults** (optional) define paths to directory where resource files of **IGES** and **STEP** translators are located; + * **CSF_XmlOcafResource** is required in order to set the path to **XSD** resources, which defines XML grammar. + * **CSF_MIGRATION_TYPES** is required in order to read documents that contain old data types, such as *TDataStd_Shape*; + +@section intro_license License + +Open CASCADE Technology and all materials, including this documentation, is +Copyright (c) 1999-2018 by OPEN CASCADE S.A.S. All rights reserved. Open CASCADE Technology is free software; you can redistribute it and / or modify it under the terms of the @ref license_lgpl_21 "GNU Lesser General Public License (LGPL) version 2.1", with additional @ref occt_lgpl_exception "exception". @@ -50,24 +536,7 @@ WARRANTY OF ANY KIND. The entire risk related to any use of the OCCT code and materials is on you. See the @ref occt_public_license "license" text for formal disclaimer. - Trademark information ----------------------- - -You are hereby informed that all software is a property of its respective authors and is protected by -international and domestic laws on intellectual property and trademarks. -Should you need further information, directly contact the authors. - -**CAS.CADE** and **Open CASCADE** are registered trademarks of -OPEN CASCADE S.A.S. - -**Linux** is a registered trademark of Linus Torvalds. - -**Windows** is a registered trademark of Microsoft Corporation in the United States and other countries. - -**Mac** and the Mac logo are trademarks of Apple Inc., registered in the U.S. and other countries. - - Acknowledgments ------------------ +@section intro_acknowledge Acknowledgments The following parties are acknowledged for producing tools which are used within Open CASCADE Technology libraries or for release preparation. @@ -156,432 +625,14 @@ RapidJSON is optionally used by OCCT for reading glTF files (https://rapidjson.o **DejaVu** fonts are a font family based on the Vera Fonts under a permissive license (MIT-like, https://dejavu-fonts.github.io/License.html). DejaVu Sans (basic Latin sub-set) is used by OCCT as fallback font when no system font is available. -**Delabella** is an open-source, cross-platform implementation of the Newton Apple Wrapper algorithm producing 2D Delaunay triangulation. -Delabella is used by BRepMesh as one of alternative 2D triangulation algorithms. -Delabella is licensed under the MIT license (https://github.com/msokalski/delabella). +**Delabella** is an open-source, cross-platform implementation of the Newton Apple Wrapper algorithm producing 2D Delaunay triangulation. Delabella is used by BRepMesh as one of alternative 2D triangulation algorithms. Delabella is licensed under the MIT license (https://github.com/msokalski/delabella). Adobe Systems, Inc. provides **Adobe Reader**, which can be used to view files in Portable Document Format (PDF). -@section OCCT_OVW_SECTION_3 Documentation +**CAS.CADE** and **Open CASCADE** are registered trademarks of OPEN CASCADE S.A.S. -OCCT documentation is provided in several forms: +**Linux** is a registered trademark of Linus Torvalds. -- This overview provides general description of OCCT structure, functionality, modules, and features. - It is available in HTML format (generated by Doxygen) and includes User and Developer Guides. - The sources of this documentation are contained in **dox** subdirectory of OCCT sources - (plain text format is used, with mixed MarkDown / Doxygen syntax mark-up). +**Windows** is a registered trademark of Microsoft Corporation in the United States and other countries. -- User and Developer Guides describing in details OCCT modules and development tools are also available in - Adobe Portable Document Format (PDF). To read this format, you need Adobe Acrobat Reader, - which is a freeware and can be downloaded from the Adobe site. - -- Full reference documentation covering all OCCT classes generated automatically by Doxygen - software is provided in HTML format. - Reference documentation is presented in **Modules --> Toolkits --> Packages --> Classes** - logic structure with cross-references to all OCCT classes and complete in-browser search by all classes. - -See @ref occt_contribution__documentation "OCCT Documentation Guide" for details on OCCT documentation system. - -**Generation of HTML documentation** - -To generate HTML documentation from sources contained in *dox* subdirectory, -you need to have Tcl and Doxygen 1.8.5 (or above) installed on your system. - -Use script **gendoc** (batch file on Windows, shell script on Linux / Mac OSX) to generate documentation. - -To generate Overview documentation: - - cmd> gendoc -overview - -To generate Reference manual: - - cmd> gendoc -refman - -Run this command without arguments to get help on supported options. - -@section OCCT_OVW_SECTION_5 Requirements - -Open CASCADE Technology is designed to be highly portable and is known to -work on wide range of platforms. -Current version is officially certified on Windows (IA-32 and x86-64), -Linux (x86-64), OS X / macOS (x86-64), Android (armv7 and x86), and -iOS (armv7, arm64) platforms. - -The tables below describe the recommended software configurations -for which OCCT is certified to work. - -@subsection overview_req_cpp C++ Compiler / IDE - -| OS | Compiler | -| --------- | ----------- | -| Windows | Microsoft Visual Studio: 2008 SP1, 2010 SP1, 2012 Update 4, 2013 Update 5, 2015 Update 3, 2017 1, 2019
, LLVM (ClangCL), GCC 4.3+ (Mingw-w64)| -| Linux | GNU gcc 4.3+
LLVM CLang 3.6+ | -| OS X / macOS | XCode 6 or newer | -| Android | NDK r10, GNU gcc 4.8 or newer | -| Web | Emscripten SDK 1.39 or newer (CLang) | - -1) VC++ 141 64-bit is used for regular testing and for building binary package of official release of OCCT on Windows. - -@subsection overview_req_libs Third-party libraries - -| Component | Requirement | -| --------- | ----------- | -| Graphic library | OpenGL 3.3+, OpenGL ES 2.0+
Direct3D 9 | -| Qt (for samples and demos) | Desktop: Qt 4.8.6+ https://www.qt.io/download/
Android: Qt 5.3.2+ https://www.qt.io/download/ | -| TCL (for testing tools) | Tcl/Tk 8.6.3+ https://www.tcl.tk/software/tcltk/download.html
or ActiveTcl 8.6 https://www.activestate.com/activetcl/downloads (for Windows)| -| Freetype (for text rendering) | FreeType 2.4.11-2.7.1 https://sourceforge.net/projects/freetype/files/ | -| FreeImage (optional, for support of common 2D graphic formats) | FreeImage 3.17.0+ https://sourceforge.net/projects/freeimage/files | -| FFmpeg (optional, for video recording) | FFmpeg 3.1+ https://www.ffmpeg.org/download.html | -| RapidJSON (optional, for reading glTF) | RapidJSON 1.1+ https://rapidjson.org/ | -| Intel TBB (optional, for multithreaded algorithms) | TBB 4.x or 5.x https://www.threadingbuildingblocks.org/ | -| VTK (for VTK Integration Services | VTK 6.1+ https://www.vtk.org/download/ | -| Doxygen (optional for building documentation) | Doxygen 1.8.5+ https://www.stack.nl/~dimitri/doxygen/download.html | - -@subsection overview_req_hw Hardware - -| Component | Requirement | -| --------- | ----------- | -| Minimum memory | 512 MB, 1 GB recommended | -| Free disk space (complete installation) | 600 MB approx. | - -On desktop, 3D viewer for optimal performance requires graphics processing unit (GPU) supporting OpenGL 3.3 or above. -Ray tracing requires OpenGL 4.0+ or OpenGL 3.3+ with *GL_ARB_texture_buffer_object_rgb32* extension. -Textures within ray tracing will be available only when *GL_ARB_bindless_texture extension* is provided by driver. - -On mobile platforms, OpenGL ES 2.0+ is required for 3D viewer (OpenGL ES 3.1+ is recommended). -The ray tracing is not yet available on mobile platforms. -Some old hardware might be unable to execute complex GLSL programs (e.g. with high number of light sources, clipping planes). - -OCCT 3D Viewer, in general, supports wide range of graphics hardware - from very old to new. -Therefore, if you observe some unexpected visual issues - first check for OpenGL driver update (or firmware update in case of mobile platforms); -but beware that driver update might also come with new bugs. -Don't forget to report these bugs to vendors. - -@section OCCT_OVW_SECTION_4 Installation - -In most cases you need to rebuild OCCT on your platform (OS, compiler) before -using it in your project, to ensure binary compatibility. -See @ref build_upgrade for instructions on -building OCCT from sources on supported platforms. - -@subsection OCCT_OVW_SECTION_4_1 Using Windows installer - -On Windows Open CASCADE Technology can be installed with binaries precompiled by -Visual C++ 2010 with installation procedure. - -**Recommendation:** - -If you have a previous version of OCCT installed on your station, -and you do not plan to use it along with the new version, you might want to uninstall -the previous version (using Control Panel, Add/Remove Programs) before -the installation of this new version, to avoid possible problems -(conflict of system variables, paths, etc). - -**Attention:** For full installation OCCT requires approximately 650 Mb of disk space, -but during the installation process you will need 1,2 Gb of free disk space. - -OCCT installation with reference documentation requires 1,4 Gb on disk. - - * Download the OCCT installer from OPEN CASCADE web site using the link. you have been provided - * Launch the installer and follow the instructions. - -The includes and binaries of third-party libraries necessary for building and launching -OCCT are included into binary distribution (built with Visual C++ 2010). -When the installation is complete, you will find the directories for 3rd party products -(some might be absent in case of custom installation) and the main **OCCT** directory: - -@figure{/introduction/images/overview_3rdparty.png} - -The contents of the OCCT-7.4.0 directory (called further "OCCT root", or $CASROOT) are as follows: - -@figure{/introduction/images/overview_installation.png, "The directory tree"} - - * **adm** This folder contains administration files, which allow rebuilding OCCT; - * **adm/cmake** This folder contains files of CMake building procedure; - * **adm/msvc** This folder contains Visual Studio projects for Visual C++ 2010, 2012, 2013, 2015, 2017 and 2019 which allow rebuilding OCCT under Windows platform in 32 and 64-bit mode; - * **data** This folder contains CAD files in different formats, which can be used to test the OCCT functionality; - * **doc** This folder contains OCCT documentation in HTML and PDF format; - * **dox** This folder contains sources of OCCT documentation in plain text (MarkDown) format; - * **inc** This folder contains copies of all OCCT header files; - * **samples** This folder contains sample applications. - * **src** This folder contains OCCT source files. They are organized in folders, one per development unit; - * **tests** This folder contains scripts for OCCT testing. - * **tools** This folder contains sources of Inspector tool. - * **win64/vc10** This folder contains executable and library files built in optimize mode for Windows platform by Visual C++ 2010; - -@section OCCT_OVW_SECTION_4_2 Environment Variables - -To run any Open CASCADE Technology application you need to set the environment variables. - -### On Windows - -You can define the environment variables with env.bat script located in the -$CASROOT folder. This script accepts two arguments to be used: -the version of Visual Studio (vc10 -- vc142) and the architecture (win32 or win64). - -The additional environment settings necessary for compiling OCCT libraries and samples -by Microsoft Visual Studio can be set using script custom.bat located in the same folder. -You might need to edit this script to correct the paths to third-party libraries -if they are installed on your system in a non-default location. - -Script msvc.bat can be used with the same arguments for immediate launch of Visual Studio for (re)compiling OCCT. - -### On Unix - - - If OCCT was built by Code::Blocks, you can define the environment variables with env_cbp.sh or custom_cbp.sh script. - - If OCCT was built by Automake, you can define the environment variables with env_amk.sh or custom_amk.sh script. - -The scripts are located in the OCCT root folder. - - -### Description of system variables: - - * **CASROOT** is used to define the root directory of Open CASCADE Technology; - * **PATH** is required to define the path to OCCT binaries and 3rdparty folder; - * **LD_LIBRARY_PATH** is required to define the path to OCCT libraries (on UNIX platforms only; **DYLD_LIBRARY_PATH** variable in case of macOS); - * **MMGT_OPT** (optional) if set to 1, the memory manager performs optimizations as described below; if set to 2, - Intel (R) TBB optimized memory manager is used; if 0 (default), every memory block is allocated - in C memory heap directly (via malloc() and free() functions). - In the latter case, all other options starting with *MMGT*, except MMGT_CLEAR, are ignored; - * **MMGT_CLEAR** (optional) if set to 1 (default), every allocated memory block is cleared by zeros; - if set to 0, memory block is returned as it is; - * **MMGT_CELLSIZE** (optional) defines the maximal size of blocks allocated in large pools of memory. Default is 200; - * **MMGT_NBPAGES** (optional) defines the size of memory chunks allocated for small blocks in pages - (operating-system dependent). Default is 10000; - * **MMGT_THRESHOLD** (optional) defines the maximal size of blocks that are recycled internally - instead of being returned to the heap. Default is 40000; - * **MMGT_MMAP** (optional) when set to 1 (default), large memory blocks are allocated using - memory mapping functions of the operating system; if set to 0, - they will be allocated in the C heap by malloc(); - * **CSF_LANGUAGE** (optional) defines default language of messages; - * **CSF_DEBUG** (optional, Windows only): if defined then a diagnostic message is displayed in case of an exception; - * **CSF_DEBUG_BOP** (optional): if defined then it should specify directory where diagnostic data on problems occured in Boolean operations will be saved; - * **CSF_MDTVTexturesDirectory** defines the directory for available textures when using texture mapping; - * **CSF_ShadersDirectory** (optional) defines the directory for GLSL programs for Ray Tracing renderer (embedded resources are used when variable is undefined); - * **CSF_SHMessage** (optional) defines the path to the messages file for *ShapeHealing*; - * **CSF_XSMessage** (optional) defines the path to the messages file for **STEP** and **IGES** translators; - * **CSF_StandardDefaults**, **CSF_StandardLiteDefaults*, **CSF_XCAFDefaults**, and **CSF_PluginDefaults** define paths to directory where configuration files for OCAF persistence are located (required for open/save operations with OCAF documents); - * **CSF_IGESDefaults** and **CSF_STEPDefaults** (optional) define paths to directory where resource files of **IGES** and **STEP** translators are located; - * **CSF_XmlOcafResource** is required in order to set the path to **XSD** resources, which defines XML grammar. - * **CSF_MIGRATION_TYPES** is required in order to read documents that contain old data types, such as *TDataStd_Shape*; - -@section OCCT_OVW_SECTION_7 Getting Started - -@subsection OCCT_OVW_SECTION_7_1 Draw Test Harness - -Draw is a command interpreter based on TCL and a graphical system used for testing and demonstrating OCCT modeling libraries. - -Draw can be used interactively to create, display and modify objects such as curves, surfaces and topological shapes. - -@figure{/introduction/images/overview_draw.png} - -Scripts can be written to customize Draw and perform tests. -New types of objects and new commands can be added using C++ programming language. - -Draw contains: - - * A command interpreter based on TCL command language. - * A 2D an 3D graphic viewer with support of operations such as zoom, pan, rotation and full-screen views. - * An optional set of geometric commands to create and modify curves and surfaces and to use OCCT geometry algorithms. - * A set of topological commands to create and modify BRep shapes and to use OCCT topology algorithms. - * A set of graphic commands for view and display operations including Mesh Visualization Service. - * A set of Application framework commands for handling of files and attributes. - * A set of Data Exchange commands for translation of files from various formats (IGES,STEP) into OCCT shapes. - * A set of Shape Healing commands: check of overlapping edges, approximation of a shape to BSpline, etc. - -You can add new custom test harness commands to Draw in order to test -or demonstrate a new functionality, which you are developing. - -Currently DRAW Test Harness is a single executable called *DRAWEXE*. - -Commands grouped in toolkits can be loaded at run-time thereby implementing dynamically loaded plug-ins. -Thus you can work only with the commands that suit your needs adding -the commands dynamically without leaving the Test Harness session. - -Declaration of available plug-ins is done through special resource file(s). -The *pload* command loads the plug-in in accordance with -the specified resource file and activates the commands implemented in the plug-in. - -The whole process of using the plug-in mechanism as well as the instructions for extending Test Harness is described in the @ref occt_user_guides__test_harness. - -Draw Test Harness provides an environment for OCCT automated testing system. -Check its @ref occt_dev_guides__tests "Automated Testing System" for details. - -Remarks: - -* The DRAWEXE executable is delivered with the installation procedure on Windows platform only. -* To start it, launch DRAWEXE executable from Open CASCADE Technology/Draw Test Harness item of the Start\\Programs menu. - -@subsection OCCT_OVW_SECTION_7_2 Experimenting with Draw Test Harness - - Running Draw ------------- - -**On Linux:** - -* If OCCT was built by Code::Blocks use $CASROOT/draw.sh file to launch *DRAWEXE* executable. - -Draw[1]> prompt appears in the command window - -Type *pload ALL* - -**On Windows:** - -Launch Draw executable from Open CASCADE Technology\\Test Harness\\Draw Test Harness -item of the Start\\Programs menu or Use $CASROOT\\draw.bat file to launch *DRAWEXE* executable. - -Draw[1]> prompt appears in the command window - -Type pload ALL - -**Creating your first geometric objects** - -1. In the command window, type *axo* to create an axonometric view -2. Type *box b -10 -10 -10 20 20 20* to create a cube *b* of size 20, parallel to the X Y Z axis and centered on the origin. The cube will be displayed in the axonometric view in wireframe mode. -3. Type *fit* to fill the viewer with the cube -4. Type *pcylinder c 2 30* to create a cylinder *c* of radius 2 and height 30. The cylinder will be displayed in addition to the cube - -**Manipulating the view** - -1. Type *clear* to erase the view -2. Type *donly c* to display the cylinder only -3. Type *donly b* to display the cube only -4. Type *hlr hlr b* to display the cube in the hidden line removal mode - -**Running demonstration files** - -1. Type *cd ../..* to return to the root directory -2. Type *cd samples/tcl* to reach the *DrawResources* directory -3. Type *source \* to run the demonstration file provided with Open CASCADE. The following demonstration files are available: - * DataExchangeDemo.tcl: demonstrates sample sequence of operations with writing and reading IGES file - * ModelingDemo.tcl: demonstrates creation of simple shape and displaying it in HLR mode - * VisualizationDemo.tcl: demonstrates use of 3d viewer - * cad.tcl: creates solid shape looking like abbreviation "CAD" - * bottle.tcl: creates bottle as in OCCT Tutorial - * drill.tcl: creates twist drill bit shape - * cutter.tcl: creates milling cutter shape - * xde.tcl: demonstrates creation of simple assembly in XDE - * materials.tcl: demonstrates visual properties of materials supported by 3d viewer - * raytrace.tcl: demonstrates use of ray tracing display in 3d viewer - * dimensions.tcl: demonstrates use of dimensions, clipping, and capping in 3d viewer - -**Getting Help** - -1. Type *help* to see all available commands -2. Type *help \* to find out the arguments for a given command - -@subsection OCCT_OVW_SECTION_7_3 Programming Samples - -@subsubsection OCCT_OVW_SECTION_7_3_1 MFC - -Visual C++ programming samples containing 10 Visual C++ projects -illustrating how to use a particular module or functionality. - -The list of MFC samples: - - * Geometry - * Modeling - * Viewer2d - * Viewer3d - * ImportExport - * Ocaf - * Triangulation - * HLR - * Animation - * Convert - -@figure{/introduction/images/overview_mvc.png} - -**Remarks:** - - * MFC samples are available only on Windows platform; - * To start a sample use Open CASCADE Technology\\Samples\\Mfc\\ item of the Start\\Programs menu; - * Read carefully readme.txt to learn about launching and compilation options. - -See \subpage samples_mfc_standard "Readme" for details. - -@subsubsection OCCT_OVW_SECTION_7_3_2 Qt - -OCCT contains three samples based on Qt application framework - - Import Export -------------- - - Import Export programming sample contains 3D Viewer and Import / Export functionality. - -@figure{/introduction/images/overview_qt.png} - - Tutorial ---------- - -The Qt programming tutorial teaches how to use Open CASCADE Technology services to model a 3D object. -The purpose of the tutorial is not to explain all OCCT classes but -to help start thinking in terms of the Open CASCADE Technology. - -This tutorial assumes that the user has experience in using and setting up C++. -From the viewpoint of programming, Open CASCADE Technology is designed -to enhance user's C++ tools with high performance modeling classes, methods and functions. -The combination of these resources allows creating substantial applications. - -**See also:** @ref occt__tutorial "OCCT Tutorial" - -**Remarks:** - - * Qt samples are available on all supported platforms; - * To start a sample on Windows use Open CASCADE Technology\\Samples\\Qt\\ item of the Start\\Programs menu. - -@subsubsection OCCT_OVW_SECTION_7_3_3 C# - -C# sample demonstrates integration of OCCT 3D Viewer and Import / Export functionality into .NET applications (using Windows Forms and WPF front ends). - -@figure{/introduction/images/overview_c__ie.png} - -Import: - - * BRep - * Iges - * Step - -Export: - - * Brep - * Iges - * Step - * Stl - * Vrml - -See \subpage samples_csharp_occt "C# sample Readme" for details. - -There is also another C# example with the same functionality, which demonstrates the integration of Direct3D Viewer into .NET applications using WPF front end. - -See \subpage samples_csharp_direct3d "Direct3D C# sample Readme" for details. - -@subsubsection OCCT_OVW_SECTION_7_3_4 Android - -There are two samples are representing usage OCCT framework on Android mobile platform. They represent an OCCT-based 3D-viewer with CAD import support in formats BREP, STEP and IGES: jniviewer (java) and AndroidQt (qt+qml) - -jniviewer -@figure{/introduction/images/samples_java_android_occt.jpg} -Java -- See \subpage samples_java_android_occt "Android Java sample Readme" for details. - -AndroidQt -@figure{/introduction/images/samples_qml_android_occt.jpg} -Qt -- See \subpage samples_qml_android_occt "Android Qt sample Readme" for details. - -@subsubsection OCCT_OVW_SECTION_7_3_5 iOS - -There is a sample demonstrating usage of OCCT on iOS with Apple UIKit framework. - -@figure{/introduction/images/sample_ios_uikit.png} - -See \subpage occt_samples_ios_uikit "iOS sample Readme" for details. - -@subsubsection OCCT_OVW_SECTION_7_3_6 Web - -WebGL Viewer sample demonstrating usage of OCCT 3D Viewer in Web browser with Emscripten SDK can be found in `samples/webgl`. - -@figure{/introduction/images/sample_webgl.png} - -See \subpage occt_samples_webgl "WebGL sample Readme" for details. +**Mac**, **OS X**, **macOS**, and the Mac logo are trademarks of Apple Inc., registered in the U.S. and other countries. diff --git a/dox/resources/occ_logo.png b/dox/resources/occ_logo.png index 0ca8a9662a80a98d695be3803116ccbf070beec1..de4c6124a045525c42904663bdcddff55a0fa79c 100644 GIT binary patch literal 6669 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 Jg|c1r{{RQ#oiG3Z literal 7532 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/samples/tcl. To play around them please +follow the steps below: + +1. Start DRAWEXE +2. Type *cd ../..* to return to the root directory +3. Type *cd samples/tcl* to reach the *DrawResources* directory +4. Type *source \* to run the demonstration file provided with Open CASCADE. The following demonstration +files are available: + * DataExchangeDemo.tcl: demonstrates sample sequence of operations with writing and reading IGES file + * ModelingDemo.tcl: demonstrates creation of simple shape and displaying it in HLR mode + * VisualizationDemo.tcl: demonstrates use of 3d viewer + * cad.tcl: creates solid shape looking like abbreviation "CAD" + * bottle.tcl: creates bottle as in OCCT Tutorial + * drill.tcl: creates twist drill bit shape + * cutter.tcl: creates milling cutter shape + * xde.tcl: demonstrates creation of simple assembly in XDE + * materials.tcl: demonstrates visual properties of materials supported by 3d viewer + * raytrace.tcl: demonstrates use of ray tracing display in 3d viewer + * dimensions.tcl: demonstrates use of dimensions, clipping, and capping in 3d viewer + * ... + +Draw is a command interpreter based on TCL and a graphical system used for testing and demonstrating OCCT modeling libraries. + +Draw can be used interactively to create, display and modify objects such as curves, surfaces and topological shapes. + +@figure{/introduction/images/overview_draw.png} + +Scripts can be written to customize Draw and perform tests. +New types of objects and new commands can be added using C++ programming language. + +Draw contains: + + * A command interpreter based on TCL command language. + * A 2D an 3D graphic viewer with support of operations such as zoom, pan, rotation and full-screen views. + * An optional set of geometric commands to create and modify curves and surfaces and to use OCCT geometry algorithms. + * A set of topological commands to create and modify BRep shapes and to use OCCT topology algorithms. + * A set of graphic commands for view and display operations including Mesh Visualization Service. + * A set of Application framework commands for handling of files and attributes. + * A set of Data Exchange commands for translation of files from various formats (IGES,STEP) into OCCT shapes. + * A set of Shape Healing commands: check of overlapping edges, approximation of a shape to BSpline, etc. + +You can add new custom test harness commands to Draw in order to test +or demonstrate a new functionality, which you are developing. + +Currently DRAW Test Harness is a single executable called *DRAWEXE*. + +Commands grouped in toolkits can be loaded at run-time thereby implementing dynamically loaded plug-ins. +Thus you can work only with the commands that suit your needs adding +the commands dynamically without leaving the Test Harness session. + +Declaration of available plug-ins is done through special resource file(s). +The *pload* command loads the plug-in in accordance with +the specified resource file and activates the commands implemented in the plug-in. + +The whole process of using the plug-in mechanism as well as the instructions for extending Test Harness is described in the @ref occt_user_guides__test_harness. + +Draw Test Harness provides an environment for OCCT automated testing system. +Check its @ref occt_contribution__tests "Automated Testing System" for details. + +Remarks: + +* The DRAWEXE executable is delivered with the installation procedure on Windows platform only. +* To start it, launch DRAWEXE executable from Open CASCADE Technology/Draw Test Harness item of the Start\\Programs menu. + +Experimenting with Draw Test Harness +------------------------------------ + + Running Draw +------------ + +**On Linux:** + +* If OCCT was built by Code::Blocks use $CASROOT/draw.sh file to launch *DRAWEXE* executable. + +Draw[1]> prompt appears in the command window + +Type *pload ALL* + +**On Windows:** + +Launch Draw executable from Open CASCADE Technology\\Test Harness\\Draw Test Harness +item of the Start\\Programs menu or Use $CASROOT\\draw.bat file to launch *DRAWEXE* executable. + +Draw[1]> prompt appears in the command window + +Type pload ALL + +**Creating your first geometric objects** + +1. In the command window, type *axo* to create an axonometric view +2. Type *box b -10 -10 -10 20 20 20* to create a cube *b* of size 20, parallel to the X Y Z axis and centered on the origin. The cube will be displayed in the axonometric view in wireframe mode. +3. Type *fit* to fill the viewer with the cube +4. Type *pcylinder c 2 30* to create a cylinder *c* of radius 2 and height 30. The cylinder will be displayed in addition to the cube + +**Manipulating the view** + +1. Type *clear* to erase the view +2. Type *donly c* to display the cylinder only +3. Type *donly b* to display the cube only +4. Type *hlr hlr b* to display the cube in the hidden line removal mode + +**Running demonstration files** + +1. Type *cd ../..* to return to the root directory +2. Type *cd samples/tcl* to reach the *DrawResources* directory +3. Type *source \* to run the demonstration file provided with Open CASCADE. The following demonstration files are available: + * DataExchangeDemo.tcl: demonstrates sample sequence of operations with writing and reading IGES file + * ModelingDemo.tcl: demonstrates creation of simple shape and displaying it in HLR mode + * VisualizationDemo.tcl: demonstrates use of 3d viewer + * cad.tcl: creates solid shape looking like abbreviation "CAD" + * bottle.tcl: creates bottle as in OCCT Tutorial + * drill.tcl: creates twist drill bit shape + * cutter.tcl: creates milling cutter shape + * xde.tcl: demonstrates creation of simple assembly in XDE + * materials.tcl: demonstrates visual properties of materials supported by 3d viewer + * raytrace.tcl: demonstrates use of ray tracing display in 3d viewer + * dimensions.tcl: demonstrates use of dimensions, clipping, and capping in 3d viewer + +**Getting Help** + +1. Type *help* to see all available commands +2. Type *help \* to find out the arguments for a given command \ No newline at end of file diff --git a/dox/samples/images/overview_overview_qt.png b/dox/samples/images/overview_overview_qt.png new file mode 100644 index 0000000000000000000000000000000000000000..9ec815c13fe9fac1adfd6c9b76a5762f97714f7a GIT binary patch literal 165475 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�^l<_jjMV`O*VTB%v0`WH6%xcy2lcEaSZ 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 literal 0 HcmV?d00001 diff --git a/dox/samples/images/sample_ios_uikit.png b/dox/samples/images/sample_ios_uikit.png new file mode 100644 index 0000000000000000000000000000000000000000..703e8e5e4fc0e84c503215de3eb5ee0f0ae83e98 GIT binary patch literal 48744 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 literal 0 HcmV?d00001 diff --git a/dox/samples/images/sample_webgl.png b/dox/samples/images/sample_webgl.png new file mode 100644 index 0000000000000000000000000000000000000000..7d3781faad88696c45c7dd093a92002ce3e40ad7 GIT binary patch literal 75733 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%0Dy^Z;~k)p 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

UF~}wER9vu(Hkrb+0kW<~2T#%GdMVe$ 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 Vl~J-a3Z97r#y8CL-|D$M{vRJcg3tf} literal 3221 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 diff --git a/dox/tutorial/images/tutorial_image013.png b/dox/tutorial/images/tutorial_image013.png index af84d793dee3e62a20a295c936189e188037a4dc..ea2f026cdea3d9ac8c716bc01df329b73532720e 100644 GIT binary patch literal 4389 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 literal 2633 zcmeHJ`&*KC6n}YpQ`Ahah^7$QJS|K0uo(0IYd6t@_Wt=OT5 zQUGA7^xuc-V%0JbogysI|I754sn-+Vlm`QWZ#2`j02f# zBu>nvKQi!aGD_6)6rP&;y7ea*Hg-i8HAp|lV|Hf~uTR)7<$EBO%|#i4xD@+e80Y>D z2D!TLwcEFV2~Z4|exk#xOz>d2r=}R1Bo^H~aT0nKBry-u&iG)VBDYu`$L(kefxQuN zQNN?Y77TGv2?%4?u>2Hzl^{hwmWc6WW z_LB+S>{sineJdwJLyw6{C59X^d{?09S*UlsK> zY1UVjk+zDDKN8(>OPX+VOrF_Fp~FsCV}2Z^o^AlILfE z63O5DTSF_++92vK(%Osu*+kN}7eT%S$o;+dQX!gwQ3(oH-}I~I1N6;5yAePa2wr=` z@-s{#UgBiy`N_qnT72q@Pc!oWzDQoHH5l5+n&B$!t+#?LiH^#5pRqh1uR+&2!X*h$ zoKEjLG^g`?-4crljegv1Gz#~hbhv`k%}qG%Kyz*R{XFxaHju?)%@-LCO1ndd=GHf@ zaC{<9cLXwxe~{Se zWhVFDF8VDBK~Gz~jw@0`7@<&&exmQuj zTCx(eQW@S)Pv1%EET*0!3tgMV1Etd;%u_DD8@p1%(>PSaLAP0-tNXiWuF-cGv>$F? zEzRZXtW6wI`oVk@noNz&pthMs(honp6I(Wh!sN&)5Bd8w{vAM zyGM$`{*_CO@Qdv_=S6xUztT}_-b0@}_neF#a=YKZ#l)`6T{P#JN1Pi?`T}|uuIlRG hanz&=ENJNnJ59;fD}2hGmm=pM5Ec{>SRW9Z^A90+c=`YU diff --git a/dox/tutorial/images/tutorial_image014.png b/dox/tutorial/images/tutorial_image014.png index f9635174f96b9c5be3e327baa97e4c4c68400635..5cd409860c917130c6fb7c6496313632cfa4dff0 100644 GIT binary patch literal 5089 zcmeHLYfw|?x{mdNcWVWqf}nOEu^JJP1|(c;5zwkoDnURvCH#7>uO z*TAv%pzzn8AolG{Q0!hE==I+l{!e*O|7PdlAe_?SM@b3=C#4-jz;Itcg(Q8)T?v!o`i6kk^g5-&aEwlW&r}f2GrJ6&HV@3=9fF zNR?}F`@E-4cs-2cNEG@w&izA~pyKOjpvZNU|4{LxN8I4=Y|rDz^O{|KjvxQBYpz8(cA6Ae z(K_n975_^XSIVT*SH2ZBtS`nC3dWc0G8dWDz>0u?fQ-)WIL?{&#eH29bA9#Ba8lcXD5o+*-@=H8u45dX{rEK!LOQ!&s>HbNlAW1s zcfksU7oz#_ZR>9MdRKtEM2S|!1aF(osAqXWfW&SJzp&yF`>#byCza=BCPy^VWPyE{1nlw z9?uZX4z2$5i|5m%H&Z%7Gci3qJvEgLROi;M^2Z0d*ejW?yP{;2>2C*`Z5X|YHRXb+ z=EDsj<2I?t&kylM$5ky5BHv`2!@^b5=^vj>547zUd$PpznLm8u2Z4!1B zMK9Yq;Gd=eO?qiVhM?IVJ$TtJ#*=&H?(F$r?H>(#%`ZKZkiW}IJ09x(iFa)|P#F)h zadu7f!jt}lV9Sitzg!OYK>=964u_iWyWCS z!&CV1s!+zqo(XryDP87^?dTW)fowSc*zEFhHcz&I=eut(npUEn!>Ytx6Ku*U;48o2 zLVw!FDOKcoJ5rLh)laQIa3qCd#g?b^+4=c&jsyTrB!*=tpW{eAqXm?RH0a$Uv-1y~kbas8(C*-LTRLi9`}peJ`*A2218j<2c8uLW>(;r<)n{p`3k! znVFf#BRS1-ha!KeaskMM{{`(phaN9e==U|mcnQX}G1WI=`JJ8LQP+-Z>-uNfPGAVX zjg)?rxo@8>R_XClC8TGtH$KF&J=P_UQ*|J}EaB(5N;(}COv}g@Bo9t(Z+*bneN%!Q zY`l8udQ@^&S=VLDFuP$k_|kI`ihE?saaOW3t+H0CL~R4pSt~!aYjN3nwpbLwByz!B zdOSZ2Jj<@HRYrk#`UTtdEvT?OwG`Ynm$>6Of?tZJwDmCQ2YWhujn{QD}BXaLv*vhSpmdI6U1Oz%|WQy^t!s_>&IH z?<|^^Cyw|mYg#WV580C#YaL9?1BEt=q7LgZL`mnP1No*_vdw4h!s-^AHyIve49|-y zqy;PV_}~(9;1y?^lkR>cAuy3j|MT>@jw->6*oW3Y%5r{NdDf8mpgXQw;|`s*VkJQ* zGh+0!wQO&3etF%{k}K)leeBJ*oj}La>A(@g;~S(wiCk&f#%K1Yz9MyVI2_w!YQN-^ zkYM2aXEDllFws$~#gKap(Lom%e`>JjxE6;kWvfgBJLbfLiKZ`ayxaq6M71EEDEYm+ z)zZcWUWzBEtnKE({m-xlu}I~g?vo^TV#-j0x7p@gdv;}()}$sj_r@>3cl61uD}E=k z-I@!)@unVmS~b;fRaO?xySFy)s9dF>^&VJvM}LUa{bc2jh7xQ>dwFxC*;m-pqe?Q> z-<^KeHh(F+v~^T7bOVMEN|BHw9)r0z)lJ1X-h3hFOxgwu$i0%zf3QAPnl-+OdaJsq z$r`D0$@^Ad#d)7kzhY$$W0J=cW7GXH2%sThFcJAzQ6fzK2q2w46qnQ;H~)16GxUAr zKPFao7-!38%?I=Ml^!E?F9?4Yn|V+jK_qTksHq~F6aa>jAn$r5YE)af$s2WHWCzZW z?QyMrplw(pN8S_D_U4g z(Z{NLTl1i648kz`w+kcFnEPDl-R)V2SvbM=h9$SvMiI9qGUq~0YgnYC&DLBr^-LoH zgMpB`fuGx~9wWPL)w7~POlTNPX{Hst*2f26Qby|s-I}yTDFhu!zSx5u!7G@p*!9Kd zBAu(MJWgsOmuL@sBTc01rgBHPQ1f9ns?xD8rW5U!0gwkY37Dq9QI2(aN>q2)|L|}t z+Tmrib7c~==K+d)(Q&$_TpSiuLimaQ(eaT435Oofw!p?`(K=YSVEbC&1JVA$?YMNV z*&3^Ej<3WfGgX9Ptrp!Zmmj-&Fuz=`4v;4irCA*1VJp9Cs0BNzIt*aaR%^HWXCHJ= zs;(K1S&MI{L_Y5C@2~r*S&*gX8*sG+JP8tFfR+0NKNBlf%Nr%gA?1Q9cIMKjt;426 zYLP84xIKFbi#@Tg_16G+-&mRT2a(j_cJaM}g+kElL$l~H+!PdTb*9LS^ zlD@wc5vNplsm{JCV!V(bJ;*&p%Ca|EUTtd^%Z7icyuVs*rwp#>&)nRJCJ^AlFLtxP z<-^q)|7*sfOWee)OV2Qj!fbb*F4>LMcRg86pnPupZlqa*N7=UYzc)fw{bxN|Crh(( zA9kb?Mors@vANnmDCS866-h8Hl*wOIWUgIVNm-d?4o*>36i83j0c!SAd$IRQyP`hX zbHC5ZqIp?YOjO<0Y|Pd;_?TjK3P*lLk+X@r|EF6D_Vrlih+s>*;Un& z^hdE95QkC;(!Bj!F#l~F{s#kuY z78frh>WseLqh#zz=6I3YNRB~vMM&W2wJ))UutQ@<%T~l7@fH zEl5+$np_{G>n;Rg0gG6araYEAc>anosVjVpYI)9tuqoP6_XokqlQ)@`eavG)M2t+}miux*ilu;rC2SGwbL1n%icubWdss!!I!2PId& z^6thqcx(4+Ts2mnV>p9Y>Vv8qbsr=gK`rS|zgd^N_J8Xi^{r5bsI&7lt=Fbl5MUh` z7&vw)&8dF=r-@XF+CUweocmU9G%aQ~MLJz%4)*p2Gei;aX@l`E$=T8WRg$BlBMf%9 ztV4MhXM~OV@$B#>dAS-bOG76Kj@QtsmI! zZigPpe1DkohDX!lJnx?!`=RMi>7M}+hqgR+YvVrYnbK8MlN(b32}!5JtE|7Om7xM? zy*STXzlS@O0eWCC!5GjTmj)s6A(^SusRc8U;=L;}HH z8|riEa!mx#LX0SesTdK?4E;;k1JW+AVh4F1UR5#Pj)W8p#RKjKg>|+Wkk5Ehg^nes zL%LXW`a-r^H=d%69f=wsm-*AGvp!ZO<5^9=_0L2?_x*TAWcAfCGGHl#NZpfoKIQCw zKK#fEgMvzQ-KBr0j<`_pT!uRIO}UR{|BPR7+qENS_m}j>zX$`5QDrE%{A6#cx=Be7 z7#YhXjO-Q(GTf$E%9Y3*-*jmgyU^j?_b)$$Uf@c}XZQCyN2PwWZbMxBaT1ajbEwN@ zoe6!HD^;?@iZjgqm}+-T0;agJ{a6o=*1)mLc|1))bT=l+pF_`VEpsJxSF$8XOloQ> z9>4T+P*36Fo7q>1HGLE1JKG0QTt!l=5|dROHe3&}Cl)yBROJWq@s%SA{n(Q_HrV3E zOHtO86MyfKt|K`yc#W%s0S|J;3wO6l~L9_6O zM@pez=9f3!Ne}}jTj?65@N3=#$nyPn;Bi3@$>c5TZg{2KJSam#7O<&D5F3J6f1&S; zO;v8;p=mEEmpgC>Ymzk(LxOC2bM7uM5CNkhv<0H6cH|2ZUr$-UtL98Hrxo*eFK5%znN26Bz`C zSb-^*ivBkn0k!VABN2&2U!P1&e|hXqU2ggj0)@5Lk};V>@d<`t2-M_A8CKZA<>~4p zX+!%u;9$rb2)x4HseF&Ai>cRWm!Ld;VhnO97H_iy3>kyeVms9=O@MW=(9rUaZjrt~ zy6f9pFq%8xWdQUlcl9D|u!eMi#TW#B$jMZ)%haU|5vIEg(BCRXi&>3r7dMb0_!x17D)?>{~0Lgx6Z zZ~Rzjb+u#T`E$nNV_Y#P&kQU={u1-x9>Aa*VBlcPR59>$DYveO3?dre7^b+@CE#*!E}4EF_HNj8}=}XcoRsX%rcn6_py1 zL%ea0bQ@Y?)I8Mpt9lgoR(Lbw2OP`zDQ%DyrYF7o6P4C{9+jiTME}4VJn_~&hozso zW-pxWZ%k0bZ7w{kIlsxkVqT5?8bQfQGhrVgzTv{WcN+3YIsFmFHri-kXR|@03z5O* zeG!XG>w4~ENsNaj4ZoLipYdKuM}3;!Hh0DIc@DXDJ>H2vCWI%< zo1K>q2ZZTu&dE(psEjJxwUzihl8#Sxfo{AE?_9+UB`qu~R zjcjpO1hT$T+5Fy^)_xf!S$106XOMZ;N7R~RgzE6PC>fTnSV(gQCP_)?fg?gE%2rO} ziM^i#rL5Xv+DgwCd@mJ_#?9zw1a;9_JleMX&zz{6ymwefz`WyTX(Yoy`P^9GGwVTex$xD>bs%*A3t3>m?sbjW{%L5ACcy2hWSy6K6eDX z-9Xp(8$@LM&AKPc!=FEQ83AYM9{}2)50Id}-<(-&HqAt$C$#g;+59HkW)xur6o942 zoN2T&^!l<)))=}q4Rau6Z!j1EgR zPXSdS7JRj%T4Ln{)PieJYcF2|jH>7~k}*|O!4j|>wmXB1F=Us0{nEWuZ(bnobbQ>1 z=NAGXP8_T~tUMom-zwWOyZHId$xdRa4BmF@c}u`W2|aTCLZAD4RzcrGrkk{hQ#I1R zCRw7FEOfvl~*zET?a&)qy1Gy=^-h$^q{cOk5X5|rqy7_N0`h%H~HyrGyz zrfhwG<1o{0DSj za1_h7yCf{(n0|V@y*zCBQk)T69OabRo~l+N3_TpRUZYO^BpzP2`*|_u8k1KXHaZ)P zst+0E7)J=I6|RYJDTjY80D;LC?^qM>`AOBeF@q=}fyYHnVdY)dh zxg@dw_f! z#dFug^5;k0{#aR$VgNKl}a zw0I*y@2X^cS0jNN@JtBA{*|Z2HcaMjcp`e!;qYP7{Kj^RKLm73BBwq}N4&BkU9qwv zq3By{y)>xStJXzpSS|Z|;{bYe*w2f(cHc0c#!j9b;py)IIX1r)8ID6S?Z5X_DLoPe zHT}`Ybd-(@1e+uuj+^j*Ee%>c*M~CO!$3C?@@Q-lifdgg1TsIr+XUl{u>We2&sT74 zpIj2kV#0#NcEV>hUM^lH$r9_C(_$+2m=oDv zIsab$&ZUEUXU0^5B5GH&tGI+?rZoRViAI7tRo5z=s9{QT*2<>OLSPOX)=UzP-BVdc zpIx?2SNQpN1_O;WZ}+DKkw<2@_jB=Scl(G{a-|J{NJf(7>0o(#c$Rnw8fmL^*ode~ z4f^Xe>oShb0GA>e1=dQ-Jc~VZ35^7&qZ~PlEKiJohNEP6;@I(qc>tLHQ}p6)ix8%~O171G#DjUJ#-h3|gM0b-TPek#$r8xB{Dp!8NY z5txxt+*>-SvEA}wUkzo&MF<>yn4Yw_2Wm-%N-R>TsHli(S8i%a4A#}^cF(V>Gw`&BcQb$^U&h$}Rcz(P!_jIFXYZ3H@7T{86%R zLma!H>GbHFe?D6fj*y`&#ihCpC&5g;9nTz3^0J~i~T}E9o>=0L==up8e+4nGD`x%%2q=)0$|w_ z&gZI8p4c7fDQmi`(w@}KbNO10V#xUp25Lmi``su8dR0&aM434kNo*uVMcsFrh zh1x(+N2*w*N7tC}4SjTTp1;Y_PqZwS$cmj!&`r-Xwp}~PK=;Eo`_s|LtNXjdWG(Cv zSSR&WEn4&Lgk^5zEf?{dhDXDU3$%_tBcT*0=nzz{<${osNtxdvJv+>TzlJi>t8V!A zE1iJQC!=98F*`B_+O7xHE%HVR#z!ve1?TYuk%~%;C+;eB#l#X66Upe=ZVplpX7M*D zBpAILl6@T=bW1Jb)5OG!z4t@ke~2Wyi8&aQ_^8#nZ@qAMaKpj68}(^AEHp|74QA&$ zm^J*7cpk?_Bb6U{hi9UgJOPxdE5Li$+gWz%h#Q1La|l$T1}zxzlpJ6C;a6a|d#1FE z&w4dTnOl_=_j0|=3Ta+-5SV9(#N&2;)M46;LVZ;kr_nIkyKXp$yaJ{5xney5%(?x_ z5DJA9zgBn*K^qs`#47S04E<8`p!Utj5&Z18t^B5M*S?B`-VsPiOfj>#XV={6iA5@X zKW;k`TTj%Zd>?$_%)Pgb;Tfc)q|^`J4(qsVpid#|9vvCFlxbGT7W7v4Whj(aTnWds zF9SI?4nZUJ|*qnWn@9)^~rwNF+oxSJ>X31w4MR;E@`) z;#)KN+0^M$-tR*l9)DovN&>EmW)R;dCRn9EPrnoO5XE#{c&DOFo`&1U=GFt?wiVY? zQ}RiJI<)eNz$tOZv2$bAJ@%;7F8a--eS7A8>~TXZ8W<@((h^{ zbOz>2=#kkA?}_M=C8x0@;C*&hMnhAg`R4vRU%ikZ7FZl2$`O5Zqf(as}5 z^8(&-$}U|YsQ0WA+jHo=(&MSkB19F6nRP&Dcbf8J%#Zi;jzt+WNz)hG$#ty_s!BDzs!pBE!(r+tYgG2rO&vvUPy!VMUr1+;so9n}sNNcgirIIwoHun-hhARt zc4YZ>TBV$yruON>Pq$PL4IAUhTa3Kxq2NnO7%(LbrLgg0Q$L|dgSuXbn9=DUnB3R~ znl+*U{I2^pzB6l?%=)F|4L;2(-MY-d;bfjB&NBxy27!-Vy*Z7+<-E{!jhTOA8~v@+ zZGE_~E#%q6ySf`1UF3W!17F9c-~0P|(FCd5A*bmViIv0~SWhA@%b3<& z+(Rx>vCb%|2nJI~sM(vkoq5N4ovC9U%(ahe6sn$WE)geW^7_QpOKCieS4?ZSMblDE z^LmQ;#-#bu)s*N7BLi9fMc`=}Ed62L#_7>uuQ&x7Pv4-6zqMP~a1JN(8d)uf`b7Jr zY(UCIE`Z?uUfF9q96xNeZh(GXPsn`MsKDP((z4|7NbOYI=#N!~TiY8E;dZs0E#1h$9r;|v+bU?H0sd0+LaE4g6g&bmx<0niWm1yhlKMoYcB8cAmYHSc^LXYcfKf_tuLiS{-G@s>d!5ch5q;)A37Z&&%jytfz!XY$Ktj`L{{K2grJkG3Hz2g1+y8$7geum!T<>pP|in z6=OU81in&bPU8b)=yc9@Z@)3@v;~vYHF0fBMND}3ctar|ow=Mwf(BK=s+YI|4IsPN zl+huuCc=TPYeAiXU@8&dv0W|VlRMU}KiBAQddI&jh@5Hr3PFdc58hzBVPi-rJ`=q6 z5$3rk!aO991!(OtWjk-?1FWZo-3=`8yV? zq5Rd~3aI%`_^#fu+OK4#TVOLSkQY-(_?zv6gFAIxG>*dPhRJmXac)KH3FO*bo{Dbgav86eoS@TCJubMqd z6_O?m0lw}BM4a7`q3fz&id4SGG&T}S%Wv!E{Ag`kUNWWK3FnQ4TWyGd7G$ilA+RV` zJ<23`vPgxL^GDMmbqi-OC3!Ocgb#i81Aj}Cr6+!2Bk^teF7sO0L2|6YlvgMwKk6xl z#qZLAl)~vimq>~1;nn)&c69+oPqF018ud`jUdM!@%WBt+_+GAW%!Jg*>H%up1;b>Y ziS@En1w9tf6U%BosDpcXf)OL$NV45x)l1&P2xVvnzWln;R_9le)$ts`SsG8PdV*km z-jv2uNm%DxPA{oYdn!TWm0UdB%8kG&TV>#9J#^DjnUOYwyk>wIuJrMeC%Y?1`3Y5= zMme7S!~K*%JiYww3oEyg3m&rf*N<4> zKkItLImjwno$}tE0_XLa_Rf{&yFs44L8&_wa1x3D>Et++V#(XIC>$WoZws37J|v^< z8-;T3O^I(m$+oNx7_@CD`)Nbvf^=s`>cbbm1hipRMwxft-F|f+?EUJ7OR$8q7T6+< zyWtdF;~NB4rV^)vRG+LSRXN}zx!(_)#+VqW*|UYh3Q)?U=g}Jrq7vs z|GO`3_ct^$n#dC-Jnh@_plgznBEUcN{n`k-WzftUFu8Q;(&W+)v--8Esi~d}8r;Ysc2jVUQ^u&=GHZQJ_CnqHcA+vYN(b?uC>6n}qkUi-k0 zfSo&U5*npSND_{wLsPgYC-`8w?p_p$kHKD%K%WV04K4mg+=hVNL`T3J_ax8n_Y5Pn{iX3--exA#%Ig+_o)>Zrird`X( z)U>7aQ|r?E6Tp3Qg*kg%p}>e&fpJ!^wiN5B$CyV;?d%tB2<$@%H(j)uMOJqJ6T0ja zVvB>OwUtg*#_M~?`n%F0#e?0%DtR#x@5l1B8tOEjycl4Skc>dER5*Y?(>!QfP(&{g zEG`0Q+%Ci9dPLsqUT78P3mVB=EXvw@P9Ej@o3uEfYG{B1&armHrfL4=_OaLT%U^TA zEBRw)X9fq;hFhh~1U<2_vA`)=Fc>T+M=eYZPLSN6hH1d~u9Y8XQcW% z*3;auuxEC5HZP!6@NKY|7PHO6dPaTiiV?_dePx+$Z?S-1OxTQ(A9#H16z_i5u5F5U zH_YqzV?NlGDKe}soy@?t9Xueng^%rfd<$}1LIiNtfIT{fdE>%#Y+9&AIcz|>& z&#;E627V@0SD_5Sx#5*QxfA!p{AZOkGqYE&+FL1MT(`5H04f*qX4l|Mxzz!HYD&|S zV$`QY5%7-|&Uc`)JHtDhv02K~QzO}}E2Xr^89gr0`%bOPS#q1>qHW7rG0PDQ7bO?3Y-u~Bw zQ#~RA1Xd&A6fM{R2?wTl^{e$ROlEufFxP^}0JXs!tUBby5{go@UZZ@yeo~xRhGvWO zdDTH_Ft0qeBGp1VZs~(sU7w&-~&qI+Nol4Z$I8fM>1*Qz^)RWuVcGx={lbvO1;m&e4fDcsd zw$)G0qN1XkNkX*}x>5$Vz4AFyez|zJ=@AV;A?R4s0m6xX|GWD)!{p4n$&+EY`WqSw zUFix-P}=o)KtTwfp%S4q?JLJ=ydo9db9eWjaY#iyPnZL0F^|U#I^JWh6?H>RO|#nI zKfbvM-Ws$nC23Geh4qMd4+UQ{mscKm)x&l<#B4Is4pX- zKcB{76n`D5_UNUcrDUOo#>U~ZH8C^UF_SD)Uw3cj8sJQuiz9~=tZ+UO?E}uYeN)E5 z*?Fw3!z4y&B&*P-jDd({V*sCMxZmf`1H*eQ5(i5eNfzcYXt0H$;EsciEaGe9Tehw`*HnoR+(4+jz_w{V#O zY%ejf=-ZlE+VxcRx{ilG0|y@ zT`9M{@e2;|${i~`umU^tr? zvuzt%Oa|Q#$j{FQfE++_7ADrU(SSMCdLo4qv(^@1sO?v0~YW;TWTK}V_wMyHz zE#T;9JT&10OkSKlHae03kZe6Gnn|o`TOUl>?krwXcl!~aB4@7Oh6V#E2AgNJJ0=($ zx%A9!bI#j5Vr7LP2Mwz|ktFgkV*J~;Z}Y(ID+V!Mo6lmrH_2@VvMC!VBC1J)s*(Vv zs8We2XByAHe9&WzBx@eMIo=Vw6lOgx)UG$oWCD@nv6fQ_MU4a`BWqJVp_4T4{G~ls zVjctNXtw`kLN5EzqmQZhbPZ_7D~4}_5jc`;$kgvC{1rf;qnytg&HEn5c~-}iXOcS3HLW>Zck2+9wJpk%wZ0* z@wD^RGUgBQa!rAvJ#!SS;P6(ib~Y8zx-!=s zA^(|S?haMXNYB=L^Y|3;$xd1X2VVF=< zQQ^mw>`I-~^8-K`!2Dr_F^@nNUr|t`k{&-Kb?g~nPfl#}3s=tp(ASUTucczRs?;GK zlu7DG1$g|4Fjw)|G zc>zwps%K7Ex&9r~Wrly2rv=aI!{Jtn^3(_akpeC$jrv@0a*?|}Ju$zfj5z^}m!^<9Kes3Tt}7?cZ_nK6ZB|Lx=0vj0 z>tk@7?Zli97%pH?uKNY8*fHLKkJM*@V`)Z*7NK;JJ$#V9V~ddRWgk*gPgWmor}nMyY@%EfXr*RS5ho`Fto zv_b*h;(2?2m{KeEsu|$QAW3Acg^>g0TErlsGVX@%pGZyD^&EOSWQg~6r*cu&r~&IM>KL7c2N*u6e5kJV=x1D_7{e&+c#k=OJMY!SENCq<8uAQvy0q$7sf$ymsp2Lzn8R&BdS8A?+ zw7x6nN#O{pVvjYbFM+M728(>!zqY3SukF>T-N3Hy2!+f0cZAS(--i-hyH G9{(GB<01M0 literal 4437 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 diff --git a/dox/tutorial/images/tutorial_image016.png b/dox/tutorial/images/tutorial_image016.png index 8ea559a9a6acd5a12ba511e2cd2c63bcd1845053..4c782bf4d57eb95571cedd915f84dcfaaedfebae 100644 GIT binary patch literal 8337 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 literal 4158 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 IM6N<$f-E=WG5`Po diff --git a/dox/tutorial/images/tutorial_image017.png b/dox/tutorial/images/tutorial_image017.png index 5beaf94edaac8d8e580b7d595bef1f37f36d61ed..5890d15345619685af4c2d1029858e81813e2110 100644 GIT binary patch literal 11688 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 E1GRnTr2qf` diff --git a/dox/tutorial/images/tutorial_image018.png b/dox/tutorial/images/tutorial_image018.png index 0ac10c975ac25cbe91521d5ed6513d25cc49c049..014fada61fb2bab3322c8c4aa286f50d25338333 100644 GIT binary patch literal 11413 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 literal 2876 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 a6!-@{(ie}3Sy0>n0000

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 CusF5= literal 0 HcmV?d00001 diff --git a/dox/samples/images/samples_c__ie.png b/dox/samples/images/samples_c__ie.png new file mode 100644 index 0000000000000000000000000000000000000000..3cfc12e82c819be6008e1d3ac833232052c84f35 GIT binary patch literal 38265 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 $+ZBHq=kU6g?!ayuI-sgW!TrqOvIyMqk( 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 Bi*x`0 literal 0 HcmV?d00001 diff --git a/dox/samples/images/samples_mvc.png b/dox/samples/images/samples_mvc.png new file mode 100644 index 0000000000000000000000000000000000000000..f4104834e658ae2f72febe69cc1cd4676ea0ea47 GIT binary patch literal 32022 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 literal 0 HcmV?d00001 diff --git a/dox/samples/images/samples_qt.png b/dox/samples/images/samples_qt.png new file mode 100644 index 0000000000000000000000000000000000000000..e4c688585c84bccfd426dcaa7aaee85758049d7d GIT binary patch literal 64276 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⁡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 UDF{oEp8x;=07*qoM6N<$g0553*Z=?k literal 0 HcmV?d00001 diff --git a/dox/samples/ocaf.md b/dox/samples/ocaf.md new file mode 100644 index 0000000000..7d70ba8df7 --- /dev/null +++ b/dox/samples/ocaf.md @@ -0,0 +1,594 @@ +OCAF Usage {#samples__ocaf} +======== + +## Getting Started + + At the beginning of your development, you first define an application class by inheriting from the Application abstract class. + You only have to create and determine the resources of the application + for specifying the format of your documents (you generally use the standard one) and their file extension. + + Then, you design the application data model by organizing attributes you choose among those provided with OCAF. + You can specialize these attributes using the User attribute. For example, if you need a reflection coefficient, + you aggregate a User attribute identified as a reflection coefficient + with a Real attribute containing the value of the coefficient (as such, you don't define a new class). + + If you need application specific data not provided with OCAF, for example, + to incorporate a finite element model in the data structure, + you define a new attribute class containing the mesh, + and you include its persistent homologue in a new file format. + + Once you have implemented the commands which create and modify the data structure + according to your specification, OCAF provides you, without any additional programming: + + * Persistent reference to any data, including geometric elements â€" several documents can be linked with such reference; + * Document-View association; + * Ready-to-use functions such as : + * Undo-redo; + * Save and open application data. + + Finally, you develop the application's graphical user interface using the toolkit of your choice, for example: + * KDE Qt or GNOME GTK+ on Linux; + * Microsoft Foundation Classes (MFC) on Windows Motif on Sun; + * Other commercial products such as Ilog Views. + + You can also implement the user interface in the Java language using + the Swing-based Java Application Desktop component (JAD) provided with OCAF. + +## An example of OCAF usage + +To create a useful OCAF-based application, it is necessary to redefine two deferred methods: Formats and ResourcesName + +In the Formats method, add the format of the documents, which need to be read by the application and may have been built in other applications. + +For example: + +~~~~ + void myApplication::Formats(TColStd_SequenceOfExtendedString& Formats) + { + Formats.Append(TCollection_ExtendedString ("OCAF-myApplication")); + } +~~~~ + +In the ResourcesName method, you only define the name of the resource file. This +file contains several definitions for the saving and opening mechanisms associated +with each format and calling of the plug-in file. + +~~~~ + Standard_CString myApplication::ResourcesName() + { + return Standard_CString ("Resources"); + } +~~~~ + +To obtain the saving and opening mechanisms, it is necessary to set two environment variables: CSF_PluginDefaults, which defines the path of the plug-in file, and CSF_ResourcesDefault, which defines the resource file: + +~~~~ + SetEnvironmentVariable ( "CSF_ResourcesDefaults",myDirectory); + SetEnvironmentVariable ( "CSF_PluginDefaults",myDirectory); +~~~~ + +The plugin and the resource files of the application will be located in myDirector. +The name of the plugin file must be Plugin. + +### Resource File + +The resource file describes the documents (type and extension) and +the type of data that the application can manipulate +by identifying the storage and retrieval drivers appropriate for this data. + +Each driver is unique and identified by a GUID generated, for example, with the uuidgen tool in Windows. + +Five drivers are required to use all standard attributes provided within OCAF: + + * the schema driver (ad696002-5b34-11d1-b5ba-00a0c9064368) + * the document storage driver (ad696000-5b34-11d1-b5ba-00a0c9064368) + * the document retrieval driver (ad696001-5b34-11d1-b5ba-00a0c9064368) + * the attribute storage driver (47b0b826-d931-11d1-b5da-00a0c9064368) + * the attribute retrieval driver (47b0b827-d931-11d1-b5da-00a0c9064368) + +These drivers are provided as plug-ins and are located in the PappStdPlugin library. + + +For example, this is a resource file, which declares a new model document OCAF-MyApplication: + +~~~~ +formatlist:OCAF-MyApplication +OCAF-MyApplication.Description: MyApplication Document Version 1.0 +OCAF-MyApplication.FileExtension: sta +OCAF-MyApplication.StoragePlugin: ad696000-5b34-11d1-b5ba-00a0c9064368 +OCAF-MyApplication.RetrievalPlugin: ad696001-5b34-11d1-b5ba-00a0c9064368 +OCAF-MyApplicationSchema: ad696002-5b34-11d1-b5ba-00a0c9064368 +OCAF-MyApplication.AttributeStoragePlugin: 47b0b826-d931-11d1-b5da-00a0c9064368 +OCAF-MyApplication.AttributeRetrievalPlugin: 47b0b827-d931-11d1-b5da-00a0c9064368 +~~~~ + +### Plugin File + +The plugin file describes the list of required plug-ins to run the application and the +libraries in which plug-ins are located. + +You need at least the FWOSPlugin and the plug-in drivers to run an OCAF application. + +The syntax of each item is Identification.Location Library_Name, where: +* Identification is GUID. +* Location defines the location of the Identification (where its definition is found). +* Library_Name is the name (and path to) the library, where the plug-in is located. + +For example, this is a Plugin file: + +~~~~ +a148e300-5740-11d1-a904-080036aaa103.Location: FWOSPlugin +! base document drivers plugin +ad696000-5b34-11d1-b5ba-00a0c9064368.Location: PAppStdPlugin +ad696001-5b34-11d1-b5ba-00a0c9064368.Location: PAppStdPlugin +ad696002-5b34-11d1-b5ba-00a0c9064368.Location: PAppStdPlugin +47b0b826-d931-11d1-b5da-00a0c9064368.Location: PAppStdPlugin +47b0b827-d931-11d1-b5da-00a0c9064368.Location: PAppStdPlugin +~~~~ + +## Implementation of Attribute Transformation in a HXX file + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~{.cpp} +\#include + +\#include +\#include +\#include +\#include + +//! This attribute implements a transformation data container +class MyPackage_Transformation : public TDF_Attribute +{ +public: + //!@ name Static methods + + //! The method returns a unique GUID of this attribute. + //! By means of this GUID this attribute may be identified + //! among other attributes attached to the same label. + Standard_EXPORT static const Standard_GUID& GetID (); + + //! Finds or creates the attribute attached to . + //! The found or created attribute is returned. + Standard_EXPORT static Handle(MyPackage_Transformation) Set (const TDF_Label theLabel); + + //!@ name Methods for access to the attribute data + + //! The method returns the transformation. + Standard_EXPORT gp_Trsf Get () const; + + //!@ name Methods for setting the data of transformation + + //! The method defines a rotation type of transformation. + Standard_EXPORT void SetRotation (const gp_Ax1& theAxis, Standard_Real theAngle); + + //! The method defines a translation type of transformation. + Standard_EXPORT void SetTranslation (const gp_Vec& theVector); + + //! The method defines a point mirror type of transformation (point symmetry). + Standard_EXPORT void SetMirror (const gp_Pnt& thePoint); + + //! The method defines an axis mirror type of transformation (axial symmetry). + Standard_EXPORT void SetMirror (const gp_Ax1& theAxis); + + //! The method defines a point mirror type of transformation (planar symmetry). + Standard_EXPORT void SetMirror (const gp_Ax2& thePlane); + + //! The method defines a scale type of transformation. + Standard_EXPORT void SetScale (const gp_Pnt& thePoint, Standard_Real theScale); + + //! The method defines a complex type of transformation from one co-ordinate system to another. + Standard_EXPORT void SetTransformation (const gp_Ax3& theCoordinateSystem1, const gp_Ax3& theCoordinateSystem2); + + //!@ name Overridden methods from TDF_Attribute + + //! The method returns a unique GUID of the attribute. + //! By means of this GUID this attribute may be identified among other attributes attached to the same label. + Standard_EXPORT const Standard_GUID& ID () const; + + //! The method is called on Undo / Redo. + //! It copies the content of theAttribute into this attribute (copies the fields). + Standard_EXPORT void Restore (const Handle(TDF_Attribute)& theAttribute); + + //! It creates a new instance of this attribute. + //! It is called on Copy / Paste, Undo / Redo. + Standard_EXPORT Handle(TDF_Attribute) NewEmpty () const; + + //! The method is called on Copy / Paste. + //! It copies the content of this attribute into theAttribute (copies the fields). + Standard_EXPORT void Paste (const Handle(TDF_Attribute)& theAttribute, const Handle(TDF_RelocationTable)& theRelocationTable); + + //! Prints the content of this attribute into the stream. + Standard_EXPORT Standard_OStream& Dump(Standard_OStream& theOS); + + //!@ name Constructor + + //! The C++ constructor of this atribute class. + //! Usually it is never called outside this class. + Standard_EXPORT MyPackage_Transformation(); + +private: + gp_TrsfForm myType; + + // Axes (Ax1, Ax2, Ax3) + gp_Ax1 myAx1; + gp_Ax2 myAx2; + gp_Ax3 myFirstAx3; + gp_Ax3 mySecondAx3; + + // Scalar values + Standard_Real myAngle; + Standard_Real myScale; + + // Points + gp_Pnt myFirstPoint; + gp_Pnt mySecondPoint; +}; +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +## Implementation of Attribute Transformation in a CPP file + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~{.cpp} +\#include + +//======================================================================= +//function : GetID +//purpose : The method returns a unique GUID of this attribute. +// By means of this GUID this attribute may be identified +// among other attributes attached to the same label. +//======================================================================= +const Standard_GUID& MyPackage_Transformation::GetID() +{ + static Standard_GUID ID("4443368E-C808-4468-984D-B26906BA8573"); + return ID; +} + +//======================================================================= +//function : Set +//purpose : Finds or creates the attribute attached to . +// The found or created attribute is returned. +//======================================================================= +Handle(MyPackage_Transformation) MyPackage_Transformation::Set(const TDF_Label& theLabel) +{ + Handle(MyPackage_Transformation) T; + if (!theLabel.FindAttribute(MyPackage_Transformation::GetID(), T)) + { + T = new MyPackage_Transformation(); + theLabel.AddAttribute(T); + } + return T; +} + +//======================================================================= +//function : Get +//purpose : The method returns the transformation. +//======================================================================= +gp_Trsf MyPackage_Transformation::Get() const +{ + gp_Trsf transformation; + switch (myType) + { + case gp_Identity: + { + break; + } + case gp_Rotation: + { + transformation.SetRotation(myAx1, myAngle); + break; + } + case gp_Translation: + { + transformation.SetTranslation(myFirstPoint, mySecondPoint); + break; + } + case gp_PntMirror: + { + transformation.SetMirror(myFirstPoint); + break; + } + case gp_Ax1Mirror: + { + transformation.SetMirror(myAx1); + break; + } + case gp_Ax2Mirror: + { + transformation.SetMirror(myAx2); + break; + } + case gp_Scale: + { + transformation.SetScale(myFirstPoint, myScale); + break; + } + case gp_CompoundTrsf: + { + transformation.SetTransformation(myFirstAx3, mySecondAx3); + break; + } + case gp_Other: + { + break; + } + } + return transformation; +} + +//======================================================================= +//function : SetRotation +//purpose : The method defines a rotation type of transformation. +//======================================================================= +void MyPackage_Transformation::SetRotation(const gp_Ax1& theAxis, const Standard_Real theAngle) +{ + Backup(); + myType = gp_Rotation; + myAx1 = theAxis; + myAngle = theAngle; +} + +//======================================================================= +//function : SetTranslation +//purpose : The method defines a translation type of transformation. +//======================================================================= +void MyPackage_Transformation::SetTranslation(const gp_Vec& theVector) +{ + Backup(); + myType = gp_Translation; + myFirstPoint.SetCoord(0, 0, 0); + mySecondPoint.SetCoord(theVector.X(), theVector.Y(), theVector.Z()); +} + +//======================================================================= +//function : SetMirror +//purpose : The method defines a point mirror type of transformation +// (point symmetry). +//======================================================================= +void MyPackage_Transformation::SetMirror(const gp_Pnt& thePoint) +{ + Backup(); + myType = gp_PntMirror; + myFirstPoint = thePoint; +} + +//======================================================================= +//function : SetMirror +//purpose : The method defines an axis mirror type of transformation +// (axial symmetry). +//======================================================================= +void MyPackage_Transformation::SetMirror(const gp_Ax1& theAxis) +{ + Backup(); + myType = gp_Ax1Mirror; + myAx1 = theAxis; +} + +//======================================================================= +//function : SetMirror +//purpose : The method defines a point mirror type of transformation +// (planar symmetry). +//======================================================================= +void MyPackage_Transformation::SetMirror(const gp_Ax2& thePlane) +{ + Backup(); + myType = gp_Ax2Mirror; + myAx2 = thePlane; +} + +//======================================================================= +//function : SetScale +//purpose : The method defines a scale type of transformation. +//======================================================================= +void MyPackage_Transformation::SetScale(const gp_Pnt& thePoint, const Standard_Real theScale) +{ + Backup(); + myType = gp_Scale; + myFirstPoint = thePoint; + myScale = theScale; +} + +//======================================================================= +//function : SetTransformation +//purpose : The method defines a complex type of transformation +// from one co-ordinate system to another. +//======================================================================= +void MyPackage_Transformation::SetTransformation(const gp_Ax3& theCoordinateSystem1, + const gp_Ax3& theCoordinateSystem2) +{ + Backup(); + myFirstAx3 = theCoordinateSystem1; + mySecondAx3 = theCoordinateSystem2; +} + +//======================================================================= +//function : ID +//purpose : The method returns a unique GUID of the attribute. +// By means of this GUID this attribute may be identified +// among other attributes attached to the same label. +//======================================================================= +const Standard_GUID& MyPackage_Transformation::ID() const +{ + return GetID(); +} + +//======================================================================= +//function : Restore +//purpose : The method is called on Undo / Redo. +// It copies the content of +// into this attribute (copies the fields). +//======================================================================= +void MyPackage_Transformation::Restore(const Handle(TDF_Attribute)& theAttribute) +{ + Handle(MyPackage_Transformation) theTransformation = Handle(MyPackage_Transformation)::DownCast(theAttribute); + myType = theTransformation->myType; + myAx1 = theTransformation->myAx1; + myAx2 = theTransformation->myAx2; + myFirstAx3 = theTransformation->myFirstAx3; + mySecondAx3 = theTransformation->mySecondAx3; + myAngle = theTransformation->myAngle; + myScale = theTransformation->myScale; + myFirstPoint = theTransformation->myFirstPoint; + mySecondPoint = theTransformation->mySecondPoint; +} + +//======================================================================= +//function : NewEmpty +//purpose : It creates a new instance of this attribute. +// It is called on Copy / Paste, Undo / Redo. +//======================================================================= +Handle(TDF_Attribute) MyPackage_Transformation::NewEmpty() const +{ + return new MyPackage_Transformation(); +} + +//======================================================================= +//function : Paste +//purpose : The method is called on Copy / Paste. +// It copies the content of this attribute into +// (copies the fields). +//======================================================================= +void MyPackage_Transformation::Paste(const Handle(TDF_Attribute)& theAttribute, + const Handle(TDF_RelocationTable)& ) const +{ + Handle(MyPackage_Transformation) theTransformation = Handle(MyPackage_Transformation)::DownCast(theAttribute); + theTransformation->myType = myType; + theTransformation->myAx1 = myAx1; + theTransformation->myAx2 = myAx2; + theTransformation->myFirstAx3 = myFirstAx3; + theTransformation->mySecondAx3 = mySecondAx3; + theTransformation->myAngle = myAngle; + theTransformation->myScale = myScale; + theTransformation->myFirstPoint = myFirstPoint; + theTransformation->mySecondPoint = mySecondPoint; +} + +//======================================================================= +//function : Dump +//purpose : Prints the content of this attribute into the stream. +//======================================================================= +Standard_OStream& MyPackage_Transformation::Dump(Standard_OStream& anOS) const +{ + anOS = "Transformation: "; + switch (myType) + { + case gp_Identity: + { + anOS = "gp_Identity"; + break; + } + case gp_Rotation: + { + anOS = "gp_Rotation"; + break; + } + case gp_Translation: + { + anOS = "gp_Translation"; + break; + } + case gp_PntMirror: + { + anOS = "gp_PntMirror"; + break; + } + case gp_Ax1Mirror: + { + anOS = "gp_Ax1Mirror"; + break; + } + case gp_Ax2Mirror: + { + anOS = "gp_Ax2Mirror"; + break; + } + case gp_Scale: + { + anOS = "gp_Scale"; + break; + } + case gp_CompoundTrsf: + { + anOS = "gp_CompoundTrsf"; + break; + } + case gp_Other: + { + anOS = "gp_Other"; + break; + } + } + return anOS; +} + +//======================================================================= +//function : MyPackage_Transformation +//purpose : A constructor. +//======================================================================= +MyPackage_Transformation::MyPackage_Transformation():myType(gp_Identity){ + +} +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +## Implementation of typical actions with standard OCAF attributes. + +There are four sample files provided in the directory 'OpenCasCade/ros/samples/ocafsamples'. They present typical actions with OCAF services (mainly for newcomers). +The method *Sample()* of each file is not dedicated for execution 'as is', it is rather a set of logical actions using some OCAF services. + +### TDataStd_Sample.cxx +This sample contains templates for typical actions with the following standard OCAF attributes: +- Starting with data framework; +- TDataStd_Integer attribute management; +- TDataStd_RealArray attribute management; +- TDataStd_Comment attribute management; +- TDataStd_Name attribute management; +- TDataStd_UAttribute attribute management; +- TDF_Reference attribute management; +- TDataXtd_Point attribute management; +- TDataXtd_Plane attribute management; +- TDataXtd_Axis attribute management; +- TDataXtd_Geometry attribute management; +- TDataXtd_Constraint attribute management; +- TDataStd_Directory attribute management; +- TDataStd_TreeNode attribute management. + +### TDocStd_Sample.cxx +This sample contains template for the following typical actions: +- creating application; +- creating the new document (document contains a framework); +- retrieving the document from a label of its framework; +- filling a document with data; +- saving a document in the file; +- closing a document; +- opening the document stored in the file; +- copying content of a document to another document with possibility to update the copy in the future. + +### TPrsStd_Sample.cxx +This sample contains template for the following typical actions: +- starting with data framework; +- setting the TPrsStd_AISViewer in the framework; +- initialization of aViewer; +- finding TPrsStd_AISViewer attribute in the DataFramework; +- getting AIS_InteractiveContext from TPrsStd_AISViewer; +- adding driver to the map of drivers; +- getting driver from the map of drivers; +- setting TNaming_NamedShape to \; +- setting the new TPrsStd_AISPresentation to \; +- displaying; +- erasing; +- updating and displaying presentation of the attribute to be displayed; +- setting a color to the displayed attribute; +- getting transparency of the displayed attribute; +- modify attribute; +- updating presentation of the attribute in viewer. + +### TNaming_Sample.cxx +This sample contains template for typical actions with OCAF Topological Naming services. +The following scenario is used: +- data framework initialization; +- creating Box1 and pushing it as PRIMITIVE in DF; +- creating Box2 and pushing it as PRIMITIVE in DF; +- moving Box2 (applying a transformation); +- pushing the selected edges of the top face of Box1 in DF; +- creating a Fillet (using the selected edges) and pushing the result as a modification of Box1; +- creating a Cut (Box1, Box2) as a modification of Box1 and push it in DF; +- recovering the result from DF. + diff --git a/dox/samples/ocaf_func.md b/dox/samples/ocaf_func.md new file mode 100644 index 0000000000..9ad0899310 --- /dev/null +++ b/dox/samples/ocaf_func.md @@ -0,0 +1,286 @@ +Function Mechanism Usage {#samples__ocaf_func} +======================== + +Let us describe the usage of the "Function Mechanism" of Open CASCADE Application Framework on a simple example. +This example represents a "nail" composed by a cone and two cylinders of different radius and height: + +@image html ocaf_functionmechanism_wp_image003.png "A nail" +@image latex ocaf_functionmechanism_wp_image003.png " A nail" + + These three objects (a cone and two cylinders) are independent, + but the Function Mechanism makes them connected to each other and representing one object -- a nail. + The object "nail" has the following parameters: + + * The position of the nail is defined by the apex point of the cone. + The cylinders are built on the cone and therefore they depend on the position of the cone. + In this way we define a dependency of the cylinders on the cone. + * The height of the nail is defined by the height of the cone. + Let’s consider that the long cylinder has 3 heights of the cone + and the header cylinder has a half of the height of the cone. + * The radius of the nail is defined by the radius of the cone. + The radius of the long cylinder coincides with this value. + Let’s consider that the header cylinder has one and a half radiuses of the cone. + + So, the cylinders depend on the cone and the cone parameters define the size of the nail. + + It means that re-positioning the cone (changing its apex point) moves the nail, + the change of the radius of the cone produces a thinner or thicker nail, + and the change of the height of the cone shortens or prolongates the nail. +  It is suggested to examine the programming steps needed to create a 3D parametric model of the "nail". + +## Step1: Data Tree + + The first step consists in model data allocation in the OCAF tree. + In other words, it is necessary to decide where to put the data. + + In this case, the data can be organized into a simple tree + using references for definition of dependent parameters: + +* Nail + * Cone + + Position (x,y,z) + + Radius + + Height + * Cylinder (stem) + + Position = "Cone" position translated for "Cone" height along Z; + + Radius = "Cone" radius; + + Height = "Cone" height multiplied by 3; + * Cylinder (head) + + Position = "Long cylinder" position translated for "Long cylinder" height along Z; + + Radius = "Long cylinder" radius multiplied by 1.5; + + Height = "Cone" height divided by 2. + + The "nail" object has three sub-leaves in the tree: the cone and two cylinders. + + The cone object is independent. + + The long cylinder representing a "stem" of the nail refers to the corresponding parameters + of the cone to define its own data (position, radius and height). It means that the long cylinder depends on the cone. + + The parameters of the head cylinder may be expressed through the cone parameters + only or through the cone and the long cylinder parameters. + It is suggested to express the position and the radius of the head cylinder + through the position and the radius of the long cylinder, and the height + of the head cylinder through the height of the cone. + It means that the head cylinder depends on the cone and the long cylinder. + +## Step 2: Interfaces + + The interfaces of the data model are responsible for dynamic creation + of the data tree of the represented at the previous step, data modification and deletion. + + The interface called *INail* should contain the methods for creation + of the data tree for the nail, setting and getting of its parameters, computation, visualization and removal. + +### Creation of the nail + + This method of the interface creates a data tree for the nail at a given leaf of OCAF data tree. + + It creates three sub-leaves for the cone and two cylinders and allocates the necessary data (references at the +sub-leaves of the long and the head cylinders). + + It sets the default values of position, radius and height of the nail. + + The nail has the following user parameters: + * The position -- coincides with the position of the cone + * The radius of the stem part of the nail -- coincides with the radius of the cone + * The height of the nail -- a sum of heights of the cone and both cylinders + + The values of the position and the radius of the nail are defined for the cone object data. + The height of the cone is recomputed as 2 * heights of nail and divided by 9. + +### Computation + + The Function Mechanism is responsible for re-computation of the nail. + It will be described in detail later in this document. + + A data leaf consists of the reference  to the location of the real data + and a real value defining a coefficient of multiplication of the referenced data. + + For example, the height of the long cylinder is defined as a reference to the height of the cone + with coefficient 3. The data leaf of the height of the long cylinder + should contain two attributes: a reference to the height of cone and a real value equal to 3. + +### Visualization + + The shape resulting of the nail function can be displayed using the standard OCAF visualization mechanism. + +### Removal of the nail + +To automatically erase the nail from the viewer and the data tree it is enough to clean the nail leaf from attributes. + +## Step 3: Functions + + The nail is defined by four functions: the cone, the two cylinders and the nail function. + The function of the cone is independent. The functions of the cylinders depend on the cone function. + The nail function depends on the results of all functions: + +@image html ocaf_functionmechanism_wp_image005.png "A graph of dependencies between functions" +@image latex ocaf_functionmechanism_wp_image005.png "A graph of dependencies between functions" + + Computation of the model starts with the cone function, then the long cylinder, + after that the header cylinder and, finally, the result is generated by the nail function at the end of function chain. + + The Function Mechanism of Open CASCADE Technology creates this graph of dependencies + and allows iterating it following the dependencies. + The only thing the Function Mechanism requires from its user + is the implementation of pure virtual methods of *TFunction_Driver*: + + * \::Arguments() -- returns a list of arguments for the function + * \::Results() -- returns a list of results of the function + + These methods give the Function Mechanism the information on the location of arguments + and results of the function and allow building a graph of functions. + The class *TFunction_Iterator* iterates the functions of the graph in the execution order. + + The pure virtual method *TFunction_Driver::Execute()* calculating the function should be overridden. + + The method \::MustExecute() calls the method \::Arguments() of the function driver + and ideally this information (knowledge of modification of arguments of the function) is enough + to make a decision whether the function should be executed or not. Therefore, this method usually shouldn’t be overridden. + + The cone and cylinder functions differ only in geometrical construction algorithms. + Other parameters are the same (position, radius and height). + + It means that it is possible to create a base class -- function driver for the three functions, + and two descendant classes producing: a cone or a cylinder. + + For the base function driver the methods \::Arguments() and \::Results() will be overridden. + Two descendant function drivers responsible for creation of a cone and a cylinder will override only the method +\::Execute(). + + The method \::Arguments() of the function driver of the nail returns the results of the functions located under +it in the tree of leaves. The method \::Execute() just collects the results of the functions and makes one + shape -- a nail. + + This way the data model using the Function Mechanism is ready for usage. Do not forget to introduce the function +drivers for a function driver table with the help of *TFunction_DriverTable* class. + +### Example 1: iteration and execution of functions. + + This is an example of the code for iteration and execution of functions. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~{.cpp} + + // The scope of functions is defined. + Handle(TFunction_Scope) scope = TFunction_Scope::Set( anyLabel ); + + // The information on modifications in the model is received. + TFunction_Logbook& log = scope-GetLogbook(); + + // The iterator is iInitialized by the scope of functions. + TFunction_Iterator iterator( anyLabel ); + Iterator.SetUsageOfExecutionOrder( true ); + + // The function is iterated,  its dependency is checked on the modified data and  executed if necessary. + for (; iterator.more(); iterator.Next()) + { + // The function iterator may return a list of current functions for execution. + // It might be useful for multi-threaded execution of functions. + const TDF_LabelList& currentFunctions = iterator.Current(); + + //The list of current functions is iterated. + TDF_ListIteratorOfLabelList currentterator( currentFucntions ); + for (; currentIterator.More(); currentIterator.Next()) + { + // An interface for the function is created. + TFunction_IFunction interface( currentIterator.Value() ); + + // The function driver is retrieved. + Handle(TFunction_Driver) driver = interface.GetDriver(); + + // The dependency of the function on the  modified data is checked. + If (driver-MustExecute( log )) + { + // The function is executed. + int ret = driver-Execute( log ); + if ( ret ) + return false; + } // end if check on modification + } // end of iteration of current functions + } // end of iteration of functions. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +### Example 2: Cylinder function driver + + This is an example of the code for a cylinder function driver. To make the things clearer, the methods +\::Arguments() and \::Results() from the base class are also mentioned. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~{.cpp} + + // A virtual method ::Arguments() returns a list of arguments of the function. + CylinderDriver::Arguments( TDF_LabelList& args ) + { + // The direct arguments, located at sub-leaves of the fucntion, are collected (see picture 2). + TDF_ChildIterator cIterator( Label(), false ); + for (; cIterator.More(); cIterator.Next() ) + { + // Direct argument. + TDF_Label sublabel = cIterator.Value(); + Args.Append( sublabel ); + + // The references to the external data are checked. + Handle(TDF_Reference) ref; + If ( sublabel.FindAttribute( TDF_Reference::GetID(), ref ) ) + { + args.Append( ref-Get() ); + } + } + + // A virtual method ::Results() returns a list of result leaves. + CylinderDriver::Results( TDF_LabelList& res ) + { + // The result is kept at the function label. +   Res.Append( Label() ); + } + + // Execution of the function driver. + Int CylinderDriver::Execute( TFunction_Logbook& log ) + { + // Position of the cylinder - position of the first function (cone) + //is  elevated along Z for height values of all previous functions. + gp_Ax2 axes = …. // out of the scope of this guide. + // The radius value is retrieved. + // It is located at second child sub-leaf (see the picture 2). + TDF_Label radiusLabel = Label().FindChild( 2 ); + + // The multiplicator of the radius ()is retrieved. + Handle(TDataStd_Real) radiusValue; + radiusLabel.FindAttribute( TDataStd_Real::GetID(), radiusValue); + + // The reference to the radius is retrieved. + Handle(TDF_Reference) refRadius; + RadiusLabel.FindAttribute( TDF_Reference::GetID(), refRadius ); + + // The radius value is calculated. + double radius = 0.0; + + if ( refRadius.IsNull() ) + { + radius = radiusValue-Get(); + } + else + { + // The referenced radius value is retrieved. + Handle(TDataStd_Real) referencedRadiusValue; + RefRadius-Get().FindAttribute(TDataStd_Real::GetID() ,referencedRadiusValue ); + radius = referencedRadiusValue-Get() * radiusValue-Get(); + } + + // The height value is retrieved. + double height = … // similar code to taking the radius value. + + // The cylinder is created. + TopoDS_Shape cylinder = BRepPrimAPI_MakeCylinder(axes, radius, height); + + // The result (cylinder) is set + TNaming_Builder builder( Label() ); + Builder.Generated( cylinder ); + + // The modification of the result leaf is saved in the log. + log.SetImpacted( Label() ); + + return 0; + } +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/dox/samples/samples.md b/dox/samples/samples.md new file mode 100644 index 0000000000..01e06ef975 --- /dev/null +++ b/dox/samples/samples.md @@ -0,0 +1,152 @@ +Tutorials and Samples {#samples} +===================== + +Tutorial: Modelling a Bottle +---------------------------- +The Qt programming tutorial teaches how to use Open CASCADE Technology services to model a 3D object. +The purpose of the tutorial is not to explain all OCCT classes but +to help start thinking in terms of the Open CASCADE Technology. + +This tutorial assumes that the user has experience in using and setting up C++. +From the viewpoint of programming, Open CASCADE Technology is designed +to enhance user's C++ tools with high performance modeling classes, methods and functions. +The combination of these resources allows creating substantial applications. + +Read more about @subpage occt__tutorial + +MFC +--------- + +Visual C++ programming samples containing 10 Visual C++ projects +illustrating how to use a particular module or functionality. + +The list of MFC samples: + + * Geometry + * Modeling + * Viewer2d + * Viewer3d + * ImportExport + * Ocaf + * Triangulation + * HLR + * Animation + * Convert + +@figure{/samples/images/samples_mvc.png} + +**Remarks:** + + * MFC samples are available only on Windows platform; + * To start a sample use Open CASCADE Technology\\Samples\\Mfc\\ item of the Start\\Programs menu; + * Read carefully readme.txt to learn about launching and compilation options. + +See @subpage samples_mfc_standard "Readme" for details. + +Qt +--- + + OCCT contains three samples based on Qt application framework + + Import Export +------------- + + Import Export programming sample contains 3D Viewer and Import / Export functionality. + +@figure{/samples/images/samples_qt.png} + + Tutorial +--------- + +The Qt programming tutorial teaches how to use Open CASCADE Technology services to model a 3D object. +The purpose of the tutorial is not to explain all OCCT classes but +to help start thinking in terms of the Open CASCADE Technology. + +This tutorial assumes that the user has experience in using and setting up C++. +From the viewpoint of programming, Open CASCADE Technology is designed +to enhance user's C++ tools with high performance modeling classes, methods and functions. +The combination of these resources allows creating substantial applications. + +**See also:** @ref occt__tutorial "OCCT Tutorial" + +C# +--- + +C# sample demonstrates integration of OCCT 3D Viewer and Import / Export functionality into .NET applications (using Windows Forms and WPF front ends). + +@figure{/samples/images/samples_c__ie.png} + +Import: + + * BRep + * Iges + * Step + +Export: + + * Brep + * Iges + * Step + * Stl + * Vrml + +See @subpage samples_csharp_occt "C# sample Readme" for details. + +There is also another C# example with the same functionality, which demonstrates the integration of Direct3D Viewer into .NET applications using WPF front end. + +See @subpage samples_csharp_direct3d "Direct3D C# sample Readme" for details. + +Android +--------- + +There are two samples are representing usage OCCT framework on Android mobile platform. They represent an OCCT-based 3D-viewer with CAD import support in formats BREP, STEP and IGES: jniviewer (java) and AndroidQt (qt+qml) + +jniviewer +@figure{/samples/images/samples_java_android_occt.jpg} +Java -- See @subpage samples_java_android_occt "Android Java sample Readme" for details. + +AndroidQt +@figure{/samples/images/samples_qml_android_occt.jpg} +Qt -- See \subpage samples_qml_android_occt "Android Qt sample Readme" for details. + +iOS +--- + +There is a sample demonstrating usage of OCCT on iOS with Apple UIKit framework. + +@figure{/samples/images/sample_ios_uikit.png} + +See @subpage occt_samples_ios_uikit "iOS sample Readme" for details. + +Web +--------- + +WebGL Viewer sample demonstrating usage of OCCT 3D Viewer in Web browser with Emscripten SDK can be found in `samples/webgl`. + +@figure{/samples/images/sample_webgl.png} + +See @subpage occt_samples_webgl "WebGL sample Readme" for details. + +OCAF Usage Sample +------------------ + +The provided set of samples dedicates to get initial knowledge about typical actions with OCAF services. It may be +useful for newcomers. + +Read more about @subpage samples__ocaf + +OCAF Function Mechanism Usage +----------------------------- + +This simple example dedicates to the usage of "Function Mechanism" of OCCT Application Framework. It represents a "nail" +composed by a cone and two cylinders of different radius and height. + +Read more about @subpage samples__ocaf_func + +Draw Demo Scripts +------------------ + +A set of demo scripts demonsrates using OCCT functionality from DRAW. These scripts can be also considered as a +tutorials on tcl usage within Draw. + +Read more about @subpage samples__draw_scripts diff --git a/dox/specification/boolean_operations/boolean_operations.md b/dox/specification/boolean_operations/boolean_operations.md index 4cd09f4bd4..dd34ecc0b2 100644 --- a/dox/specification/boolean_operations/boolean_operations.md +++ b/dox/specification/boolean_operations/boolean_operations.md @@ -3560,3 +3560,4 @@ baddtools b2 bapibop r 4 ~~~~ + diff --git a/dox/technical_overview/images/technical_overview_occt_logo.png b/dox/technical_overview/images/technical_overview_occt_logo.png deleted file mode 100644 index 2afc5aa4a619b209cae1059ead24f4c7f3c319c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6640 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 T(w|&W0UL03aI>$l4ZQh3yBV`R diff --git a/dox/technical_overview/images/technical_overview_over.png b/dox/technical_overview/images/technical_overview_over.png deleted file mode 100644 index a24710aaa38baf40379e63cc1716cae0ff87f173..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9737 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 diff --git a/dox/technical_overview/technical_overview.md b/dox/technical_overview/technical_overview.md deleted file mode 100644 index c550e0572a..0000000000 --- a/dox/technical_overview/technical_overview.md +++ /dev/null @@ -1,328 +0,0 @@ -Technical Overview {#technical_overview} -======================================== - -@tableofcontents - -Open CASCADE Technology (OCCT) is an object-oriented C++ class library designed for rapid production of sophisticated domain-specific CAD/CAM/CAE applications. - -A typical application developed using OCCT deals with two or three-dimensional (2D or 3D) geometric modeling -in general-purpose or specialized Computer Aided Design (CAD) systems, manufacturing -or analysis applications, simulation applications, or even illustration tools. - -@figure{/technical_overview/images/technical_overview_over.png} - -OCCT library is designed to be truly modular and extensible, providing C++ classes for: - * Basic data structures (geometric modeling, visualization, interactive selection and application specific services); - * Modeling algorithms; - * Working with mesh (faceted) data; - * Data interoperability with neutral formats (IGES, STEP); - -The C++ classes and other types are grouped into packages. Packages are organized into toolkits (libraries), to which you can link your application. Finally, toolkits are grouped into seven modules. - -This modular structure is illustrated in the diagram below. - -@figure{/technical_overview/images/technical_overview_schema.png} - -* @ref OCCT_TOVW_SECTION_2 "Foundation Classes" module underlies all other OCCT classes; -* @ref OCCT_TOVW_SECTION_3 "Modeling Data" module supplies data structures to represent 2D and 3D geometric primitives and their compositions into CAD models; -* @ref OCCT_TOVW_SECTION_4 "Modeling Algorithms" module contains a vast range of geometrical and topological algorithms; - * @ref OCCT_TOVW_SECTION_4a "Mesh" toolkit from "Modeling Algorithms" module implements tessellated representations of objects; -* @ref OCCT_TOVW_SECTION_5 "Visualization" module provides complex mechanisms for graphical data representation; -* @ref OCCT_TOVW_SECTION_6 "Data Exchange" module inter-operates with popular data formats and relies on @ref OCCT_TOVW_SECTION_6a "Shape Healing" to improve compatibility between CAD software of different vendors; -* @ref OCCT_TOVW_SECTION_7 "Application Framework" module offers ready-to-use solutions for handling application-specific data (user attributes) and commonly used functionality (save/restore, undo/redo, copy/paste, tracking CAD modifications, etc). - -In addition, @ref OCCT_TOVW_SECTION_8 "Open CASCADE Test Harness", also called Draw, provides an entry point to the library and can be used as a testing tool for its modules. - -@section OCCT_TOVW_SECTION_2 Foundation Classes - -**Foundation Classes** module contains data structures and services used by higher-level Open CASCADE Technology classes: - - * Primitive types, such as Boolean, Character, Integer or Real; - * String classes that handle Unicode strings; - * Collection classes that handle statically or dynamically sized aggregates of data, such as arrays, lists, queues, sets and hash tables (data maps). - * Classes providing commonly used numerical algorithms and basic linear algebra calculations (addition, multiplication, transposition of vectors and matrices, solving linear systems etc). - * Fundamental types like color, date and time information; - * Primitive geometry types providing implementation of basic geometric and algebraic entities that define and manipulate elementary data structures. - * Exception classes that describe situations, when the normal execution of program is abandoned; - -This module also provides a variety of general-purpose services, such as: - * Safe handling of dynamically created objects, ensuring automatic deletion of unreferenced objects (smart pointers); - * Standard and specialized memory allocators; - * Extended run-time type information (RTTI) mechanism maintaining a full type hierarchy and providing means to iterate over it; - * Encapsulation of C++ streams; - * Basic interpreter of expressions facilitating the creation of customized scripting tools, generic definition of expressions, etc.; - * Tools for dealing with configuration resource files and customizable message files facilitating multi-language support in applications; - * Progress indication and user break interfaces, giving a possibility even for low-level algorithms to communicate with the user in a universal and convenient way; - * and many others... - -See the details in @ref occt_user_guides__foundation_classes "Foundation Classes User's Guide" - -See also: our E-learning & Training offerings. - -@section OCCT_TOVW_SECTION_3 Modeling Data - -**Modeling Data** supplies data structures to implement boundary representation (BRep) of objects in 3D. -In BRep the shape is represented as an aggregation of geometry within topology. -The geometry is understood as a mathematical description of a shape, e.g. as curves and surfaces (simple or canonical, Bezier, NURBS, etc). -The topology is a data structure binding geometrical objects together. - -Geometry types and utilities provide geometric data structures and services for: - * Description of points, vectors, curves and surfaces: - * their positioning in 3D space using axis or coordinate systems, and - * their geometric transformation, by applying translations, rotations, symmetries, scaling transformations and combinations thereof. - * Creation of parametric curves and surfaces by interpolation and approximation; - * Algorithms of direct construction; - * Conversion of curves and surfaces to NURBS form; - * Computation of point coordinates on 2D and 3D curves; - * Calculation of extrema between geometric objects. - -Topology defines relationships between simple geometric entities. -A shape, which is a basic topological entity, can be divided into components (sub-shapes): - * Vertex -- a zero-dimensional shape corresponding to a point; - * Edge -- a shape corresponding to a curve and bounded by a vertex at each extremity; - * Wire -- a sequence of edges connected by their vertices; - * Face -- a part of a plane (in 2D) or a surface (in 3D) bounded by wires; - * Shell -- a collection of faces connected by edges of their wire boundaries; - * Solid -- a finite closed part of 3D space bounded by shells; - * Composite solid -- a collection of solids connected by faces of their shell boundaries; - * Compound -- a collection of shapes of arbitrary type. - -Complex shapes can be defined as assemblies (compounds) of simpler entities. - -See the details in @ref occt_user_guides__modeling_data "Modeling Data User's Guide" - -3D geometric models can be stored in OCCT native BREP format. -See @ref occt_user_guides__brep_wp "BREP Format Description White Paper" for details on the format. - -See also: our E-learning & Training offerings. - -@section OCCT_TOVW_SECTION_4 Modeling Algorithms - -**Modeling Algorithms** module groups a wide range of topological and geometric algorithms used in geometric modeling. -Basically, there are two groups of algorithms in Open CASCADE Technology: - * High-level modeling routines used in the real design; - * Low-level mathematical support functions used as a groundwork for the modeling API. - -Low-level *geometric tools* provide the algorithms, which: - * Calculate the intersection of two curves, surfaces, or a curve and a surface; - * Project points onto 2D and 3D curves, points onto surfaces and 3D curves onto surfaces; - * Construct lines and circles from constraints; - * Construct free-form curves and surfaces from constraints (interpolation, approximation, skinning, gap filling, etc). - -Low-level *topological tools* provide the algorithms, which: - * Tessellate shapes; - * Check correct definition of shapes; - * Determine the local and global properties of shapes (derivatives, mass-inertia properties, etc); - * Perform affine transformations; - * Find planes in which edges are located; - * Convert shapes to NURBS geometry; - * Sew connected topologies (shells and wires) from separate topological elements (faces and edges). - -Top-level API provides the following functionality: - * Construction of Primitives: - * Boxes; - * Prisms; - * Cylinders; - * Cones; - * Spheres; - * Toruses. - * Kinematic Modeling: - * Prisms -- linear sweeps; - * Revolutions -- rotational sweeps; - * Pipes -- general-form sweeps; - * Lofting. - -@figure{/technical_overview/images/0001.png "Shapes containing pipes with variable radius produced by sweeping"} - - * Boolean Operations, which allow creating new shapes from the combinations of source shapes. For two shapes *S1* and *S2*: - * *Common* contains all points that are in *S1* and *S2*; - * *Fuse* contains all points that are in *S1* or *S2*; - * *Cut* contains all points in that are in *S1* and not in *S2*. - -See @ref occt_user_guides__boolean_operations "Boolean Operations" User's Guide for detailed documentation. - - * Algorithms for local modifications such as: - * Hollowing; - * Shelling; - * Creation of tapered shapes using draft angles; - * Algorithms to make fillets and chamfers on shape edges, including those with variable radius (chord). - - * Algorithms for creation of mechanical features, i.e. depressions, protrusions, ribs and grooves or slots along planar or revolution surfaces. - -@figure{/technical_overview/images/0004.png} - -See the details in @ref occt_user_guides__modeling_algos "Modeling Algorithms User's Guide". - -See also: our E-learning & Training offerings. - -@subsection OCCT_TOVW_SECTION_4a Mesh - -**Mesh** toolkit provides the functionality to work with tessellated representations of objects in form of triangular facets. This toolkit contains: -- data structures to store surface mesh data associated to shapes and basic algorithms to handle them; -- data structures and algorithms to build triangular surface mesh from *BRep* objects (shapes); -- tools for displaying meshes with associated pre- and post-processor data (scalars or vectors). - -Open CASCADE SAS also offers Advanced Mesh Products: -- Open CASCADE Mesh Framework (OMF) -- Express Mesh - -@figure{/technical_overview/images/0003.png} - -@section OCCT_TOVW_SECTION_5 Visualization - -**Visualization** module provides ready-to-use algorithms to create graphic presentations from various objects: shapes, meshes, etc. - -In Open CASCADE Technology visualization is based on the separation of CAD data and its graphical presentation. -The module also supports a fast and powerful interactive selection mechanism. - -Visualization module relies on the following key toolkits: -- *TKV3d* toolkit defines a high-level API called (Application Interactive Services* (AIS) for working with interactive objects. -- *TKService* toolkit defines a low-level API for managing and creating presentations from primitive arrays. - This toolkit defines an abstraction layer for defining an arbitrary graphic driver responsible for actual rendering. -- *TKOpenGl* toolkit implements the graphic driver using OpenGL and OpenGL ES libraries. - -While low-level API operates with primitive arrays (triangles, lines, points), the higher level includes services for building presentations for B-Rep shapes (shaded and wireframe). -A comprehensive list of standard interactive objects includes topological shape, mesh presentation, various dimensions, manipulators and others. -It provides a solid basis for rapid application development, while flexible and extensible API allows development of highly customized application-specific presentations. - -Here are a few examples of OCCT Visualization features: -* Camera-driven view projection and orientation. - Perspective, orthographic and stereographic projections are supported. -* Support of Common (diffuse/ambient/specular) and PBR metallic-roughness material models. -* Possibility to flexibly adjust appearance of dimensions in a 3D view. - The 3D text object represents a given text string as a true 3D object in the model space. -* Definition of clipping planes through the plane equation coefficients. - Ability to define visual attributes for cross-section at the level or individual clipping planes. - In the image below different parts of the rocket are clipped with different planes and hatched. -@figure{/technical_overview/images/0008.png, "Display of shape cross-section and dimensions"} - -* Support of built-in and application-specific GLSL shaders. -@figure{/technical_overview/images/0013.png, "Fragment shader implementing custom clipping surface"} - -* Optimization of rendering performance through the algorithms of: - * View frustum culling, which skips the presentation outside camera at the rendering stage; - * Back face culling, which reduces the rendered number of triangles and eliminates artifacts at shape boundaries. -* Real-time ray tracing technique using recursive Whitted's algorithm and Bounded Volume Hierarchy effective optimization structure. -@figure{/technical_overview/images/0002.png, "Real time visualization by ray tracing method"} -@figure{/technical_overview/images/0012.png, "Simulation of a glass cover"} - -For more details, see @ref occt_user_guides__visualization "Visualization User's Guide". - -The visualization of OCCT topological shapes by means of VTK library provided by VIS component is described in a separate @ref occt_user_guides__vis "VTK Integration Services" User's Guide. - -See also: our E-learning & Training offerings. - -@section OCCT_TOVW_SECTION_6 Data Exchange - -**Data Exchange** allows developing OCCT-based applications that can interact with other CAD systems by writing and reading CAD models to and from external data. - -@figure{/technical_overview/images/0014.png,"Shape imported from STEP"} - -**Data Exchange** is organized in a modular way as a set of interfaces that comply with various CAD formats: IGES, STEP, STL, VRML, etc. -The interfaces allow software based on OCCT to exchange data with various CAD/PDM software packages, maintaining a good level of interoperability. -This module handles various problems of interoperability between CAD systems, caused by differences in model validity criteria and requirements to internal representation. - -* **Standardized Data Exchange** interfaces allow querying and examining the input file, converting its contents to a CAD model and running validity checks on a fully translated shape. - The following formats are currently supported: - * @ref occt_user_guides__step "STEP" (AP203: Mechanical Design, this covers General 3D CAD; AP214: Automotive Design; AP242). - * @ref occt_user_guides__iges "IGES" (up to 5.3). - * **glTF** 2.0 reader and writer. - * **OBJ** mesh file reader. - * **VRML** converter translates Open CASCADE shapes to VRML 1.0 files (Virtual Reality Modeling Language). - * **STL** converter translates Open CASCADE shapes to STL files. - STL (STtereoLithography) format is widely used for rapid prototyping (3D printing). -* @ref occt_user_guides__xde "Extended data exchange" (XDE) allows translating additional attributes attached to geometric data (colors, layers, names, materials etc). -* Advanced Data Exchange Components - are available in addition to standard Data Exchange interfaces to support interoperability and data adaptation (also using @ref OCCT_TOVW_SECTION_6a "Shape Healing") with CAD software using the following proprietary formats: - * ACIS SAT - * Parasolid - * DXF - * IFC - * JT - -These components are based on the same architecture as interfaces with STEP and IGES. - -@section OCCT_TOVW_SECTION_6a Shape Healing - -**Shape Healing** library provides algorithms to correct and adapt the geometry and topology of shapes imported to OCCT from other CAD systems. - -Shape Healing algorithms include, but are not limited to, the following operations: - * Analyze shape characteristics and, in particular, identify the shapes that do not comply with OCCT geometry and topology validity rules by analyzing geometrical objects and topology: - - check edge and wire consistency; - - check edge order in a wire; - - check the orientation of face boundaries; - - analyze shape tolerances; - - identify closed and open wires in a boundary. - * Fix incorrect or incomplete shapes: - - provide consistency between a 3D curve and its corresponding parametric curve; - - repair defective wires; - - fit the shapes to a user-defined tolerance value; - - fill gaps between patches and edges. - * Upgrade and change shape characteristics: - - reduce curve and surface degree; - - split shapes to obtain C1 continuity; - - convert any types of curves or surfaces to Bezier or B-Spline curves or surfaces and back; - - split closed surfaces and revolution surfaces. - -Each sub-domain of Shape Healing has its own scope of functionality: - -| Sub-domain | Description | Impact on the shape | -| :--- | :---- | :---- | -| Analysis | Explores shape properties, computes shape features, detects violation of OCCT requirements. | The shape itself is not modified. | -| Fixing | Fixes the shape to meet the OCCT requirements. | The shape may change its original form: modification, removal or creation of sub-shapes, etc.) | -| Upgrade | Improves the shape to fit some particular algorithms. | The shape is replaced with a new one, but geometrically they are the same. | -| Customization | Modifies the shape representation to fit specific needs. | The shape is not modified, only the mathematical form of its internal representation is changed. | -| Processing | Mechanism of shape modification via a user-editable resource file. | | - -For more details, refer to @ref occt_user_guides__shape_healing "Shape Healing User's guide". - -See also: our E-learning & Training offerings. - -@section OCCT_TOVW_SECTION_7 Application Framework - -**Open CASCADE Application Framework** (OCAF) handles Application Data basing on the Application/Document paradigm. -It uses an associativity engine to simplify the development of a CAD application thanks to the following ready-to-use features and services: - -* Data attributes managing the application data, which can be organized according to the development needs; -* Data storage and persistence (open/save); -* Possibility to modify and recompute attributes in documents. - With OCAF it is easy to represent the history of modification and parametric dependencies within your model; -* Possibility to manage multiple documents; -* Predefined attributes common to CAD/CAM/CAE applications (e.g. to store dimensions); -* Undo-Redo and Copy-Paste functions. - -Since OCAF handles the application structure, the only development task is the creation of application-specific data and GUIs. - -OCAF differs from any other CAD framework in the organization of application data, as there the data structures are based on reference keys rather than on shapes. -In a model, such attributes as shape data, color and material are attached to an invariant structure, which is deeper than the shapes. -A shape object becomes the value of *Shape* attribute, in the same way as an integer number is the value of *Integer* attribute and a string is the value of *Name* attribute. - -OCAF organizes and embeds these attributes in a document. OCAF documents, in their turn, are managed by an OCAF application. - -For more details, see @ref occt_user_guides__ocaf "OCAF User's Guide". - -See also: our E-learning & Training offerings. - -@section OCCT_TOVW_SECTION_8 Draw Test Harness - -**Test Harness** or **Draw** is a convenient testing tool for OCCT libraries. -It can be used to test and prototype various algorithms before building an entire application. -It includes: -- A command interpreter based on the TCL language; -- A number of 2D and 3D viewers; -- A set of predefined commands. - -The viewers support operations such as zoom, pan, rotation and full-screen views. - -The basic commands provide general-purpose services such as: -- Getting help; -- Evaluating a script from a file; -- Capturing commands in a file; -- Managing views; -- Displaying objects. - -In addition, **Test Harness** provides commands to create and manipulate curves and surfaces (geometry) and shapes, access visualization services, work with OCAF documents, perform data exchange, etc. - -You can add custom commands to test or demonstrate any new functionalities, which you develop. - -For more details, see @ref occt_user_guides__test_harness "Draw Test Harness Manual". diff --git a/dox/tutorial/images/tutorial_image004.png b/dox/tutorial/images/tutorial_image004.png index b10ce22b3c99794ef8ddd34fc2deaba30ac183c1..7fdf4527a32cf2e45385c96f36219b9aa5266a32 100644 GIT binary patch literal 5600 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 HT)O@rb)G&G literal 1948 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 bMDYD}<@TLU17f006bLFvS7@ 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 P)gUbmhkoWF=|9by@&*yWW`<(N+&N=t>JJ<|g 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 diff --git a/dox/tutorial/images/tutorial_image012.png b/dox/tutorial/images/tutorial_image012.png index 4d68528a0d1e8358c4f9f1febba4f33d098374fc..bedf0a2f6278416e6b96aa1e685751c0a18a6946 100644 GIT binary patch literal 8001 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