occt.git
6 months ago0031848: [REGRESSION] Visualization - MoveTo() triggers exception "gp_Dir() - input...
kgv [Tue, 13 Oct 2020 11:20:18 +0000 (14:20 +0300)]
0031848: [REGRESSION] Visualization - MoveTo() triggers exception "gp_Dir() - input vector has zero norm"

SelectMgr_RectangularFrustum::Overlaps() - added zero magnitude check.

Commands vsphere,vcylinder,vtorus have been corrected to provide missing parameters defining number of stacks and slices.

6 months ago0031836: Modeling Algorithms - Boolean cut failed between a Cone and a Torus
emv [Mon, 12 Oct 2020 12:40:27 +0000 (15:40 +0300)]
0031836: Modeling Algorithms - Boolean cut failed between a Cone and a Torus

BOPAlgo_PaveFiller::UpdateExistingPaveBlocks: Add check for closed edge when updating pave block.

6 months ago0031575: Tests - make location of source test folder available in test
abv [Tue, 13 Oct 2020 05:14:07 +0000 (08:14 +0300)]
0031575: Tests - make location of source test folder available in test

Documentation of global variables available for the test script during test execution is improved.

Off-topic: mark-up error is fixed in DRAW user guide

6 months ago0029722: Modeling Algorithms - checkshape modifies UV points of parametric curve
ifv [Mon, 5 Oct 2020 06:29:19 +0000 (09:29 +0300)]
0029722: Modeling Algorithms - checkshape modifies UV points of parametric curve

removed updating uvpoints from WireExplorer

6 months ago0031842: Coding Rules, BOPAlgo - eliminate CLang warning -fsanitize=undefined referen...
kgv [Mon, 12 Oct 2020 15:00:22 +0000 (18:00 +0300)]
0031842: Coding Rules, BOPAlgo - eliminate CLang warning -fsanitize=undefined reference binding to null pointer

Added NULL checks before Progress Scope pointer dereference.

6 months ago0031841: Coding Rules, LDOM_XmlReader - eliminate new CLang compiler warning -Wtautol...
mpv [Mon, 12 Oct 2020 14:49:21 +0000 (17:49 +0300)]
0031841: Coding Rules, LDOM_XmlReader - eliminate new CLang compiler warning -Wtautological-overlap-compare

6 months ago0031833: Visualization - dynamic highlighting does not appear within ImmediateRedraw()
kgv [Fri, 9 Oct 2020 11:19:46 +0000 (14:19 +0300)]
0031833: Visualization - dynamic highlighting does not appear within ImmediateRedraw()

AIS_ViewController::contextLazyMoveTo() now undoes Z Range changes after MoveTo().

6 months ago0031824: Samples - Code is not displayed in Qt OCCT Overview sample after compilation...
vsv [Thu, 8 Oct 2020 13:50:37 +0000 (16:50 +0300)]
0031824: Samples - Code is not displayed in Qt OCCT Overview sample after compilation by CMake

6 months ago0031095: Debugging - add code for display of TCollection_AsciiString as UTF-8 in...
abv [Fri, 9 Oct 2020 07:37:37 +0000 (10:37 +0300)]
0031095: Debugging - add code for display of TCollection_AsciiString as UTF-8 in Visual Studio debugger visualizer

6 months ago0031830: Documentation - broken reference 14 in pbr_math document
kgv [Wed, 7 Oct 2020 14:20:28 +0000 (17:20 +0300)]
0031830: Documentation - broken reference 14 in pbr_math document

References to literature are simplified to reduce duplication of names.
List of references is converted to table for better presentation.

6 months agoIncrement OCCT version up to 7.5.0beta OCCT-750-BETA V7_5_0_beta
bugmaster [Mon, 5 Oct 2020 14:38:47 +0000 (17:38 +0300)]
Increment OCCT version up to 7.5.0beta

6 months ago0031670: Data Exchange - cp1251 Cyrillic characters in STEP file
dpasukhi [Wed, 30 Sep 2020 12:54:25 +0000 (15:54 +0300)]
0031670: Data Exchange - cp1251 Cyrillic characters in STEP file

Add support for converting pages from Windows encoding to Unicode

6 months ago0031735: Modeling Algorithms - BRepOffset_MakeOffset works slowly and produces wrong...
jgv [Sun, 13 Sep 2020 20:17:58 +0000 (23:17 +0300)]
0031735: Modeling Algorithms - BRepOffset_MakeOffset works slowly and produces wrong result

Modify method IsPlanar of BRepOffset_MakeOffset: try to make planar all possible faces to simplify the input shape.

6 months ago0031700: Modeling Algorithms - Regression in 0029580 after integration 0029839
ifv [Thu, 6 Aug 2020 13:17:33 +0000 (16:17 +0300)]
0031700: Modeling Algorithms - Regression in 0029580 after integration 0029839

BOPAlgo_PaveFiller_6.cxx: protection against creation of thin faces is added
bug29580_1: reverting in original state

dimensions.tcl: correction according to current state of BO algorithm

6 months ago0031570: Samples - add Qt samples similar to standard MFC samples
asuraven [Tue, 26 May 2020 11:16:46 +0000 (14:16 +0300)]
0031570: Samples - add Qt samples similar to standard MFC samples

Added Qt sample OCCTOverview providing examples of use of OCCT API with relevant code and demonstration of results in the viewer.

Off-topic: some unused images are removed from dox/introduction/images/

6 months ago0031821: Coding - Uninitialized variables in TKFillet project
tiv [Mon, 5 Oct 2020 06:52:31 +0000 (09:52 +0300)]
0031821: Coding - Uninitialized variables in TKFillet project

Some variables that remain uninitialized in the project TKFillet received proper initializers.

6 months ago0031812: IGES import - NURBS patches lost in the import process - 720
gka [Thu, 1 Oct 2020 09:37:34 +0000 (12:37 +0300)]
0031812: IGES import - NURBS patches lost in the import process - 720

Correction for case invalid color definition to avoid considering an entity that has a number corresponding to the color field as erroneous if entity is not a color entity.

6 months ago0030378: Data Exchange - extract of subset of model entities fails (regression)
abv [Sat, 3 Oct 2020 04:03:51 +0000 (07:03 +0300)]
0030378: Data Exchange - extract of subset of model entities fails (regression)

Field theflags in class Interface_BitMap is always initialized to avoid exception on operations with the class.

Added test bugs step bug30378

6 months ago0031820: Tests - "dlog get" skips last exception when calling 'test" with echo OFF
kgv [Sat, 3 Oct 2020 09:48:19 +0000 (12:48 +0300)]
0031820: Tests - "dlog get" skips last exception when calling 'test" with echo OFF

Added missing puts to "test" command.

6 months ago0031819: Documentation - add references to Flex and Bison
abv [Sat, 3 Oct 2020 07:12:37 +0000 (10:12 +0300)]
0031819: Documentation - add references to Flex and Bison

References to Flex and Bison added

Related:
- table of third-party tools in Requirements section is reorganized to be more clear
- sections Acknowledgements and Installation are updated

6 months ago0030800: Foundation Classes, UnitsAPI - poise dynamic viscosity unit is not defined...
abv [Fri, 2 Oct 2020 20:54:16 +0000 (23:54 +0300)]
0030800: Foundation Classes, UnitsAPI - poise dynamic viscosity unit is not defined correctly

Definition of Poise unit corrected.

Added test bugs fclasses bug30800

6 months ago0029451: Information Message Alert to debug an algorithm or object functionality IR-2020-10-02 WEEK-40
nds [Fri, 2 Oct 2020 11:17:59 +0000 (14:17 +0300)]
0029451: Information Message Alert to debug an algorithm or object functionality

- Added possibility to send stream information and transient object into Message_Messenger. Message_Printer will process it if needed.
- Add Message_PrinterToReport to send messenger information into Message_Report.
- Extended Message_Report to collect hierarchical alerts, to be able to collect some metrics during alerts processing.
- Added Message_AlertExtended to prepare hierarchical alerts with custom attributes. One attribute for one alert.
- Added Message_CompositeAlerts class to handle a container of alerts.
- Added Message_Level to start a new hierarchical level by creating an instance, stop by destricting.
- Added Message_Attribute and inheritors to store custom information about alert like object, stream, shape, some metrics.
- Implement Message_AttributeAlert to collect start/stop information about active metrics of Message_Report. This kind of attribute is created if at least one metric is active in the report.
- Add Message_MetricType enumeration with possible kinds of metrics in report.
- Implement DumpJson for Message_Report to store all collected alerts into stream.
- Added draw commands for Message_Report, Message_Messenger.

6 months ago0031816: Data Exchange - RWMesh_MaterialMap::CopyTexture() copies glb file instead...
kgv [Thu, 1 Oct 2020 12:07:46 +0000 (15:07 +0300)]
0031816: Data Exchange - RWMesh_MaterialMap::CopyTexture() copies glb file instead of a texture inside it

Image_Texture is now checked if it defines an additional offset within the file
to avoided copying an old glb file with embedded image files instead of extracting them.

6 months ago0027191: Documentation - redesign of information architecture -- revision (user guides) CR0-WEEK-40
Vera Sdobnova [Thu, 1 Oct 2020 12:34:55 +0000 (15:34 +0300)]
0027191: Documentation - redesign of information architecture -- revision (user guides)

Revision of User Guides

- Changes in User Guides Section to correspond with OCCT Overview structure: Mesh became a direct subsection of User Guides (it was a part of Modeling Algorithms).
  TObj is included into OCAF.
- Changes in User Guides – Modeling Algorithms section: Fillets and Chamfers, Offsets, Drafts, Pipes and Evolved shapes, Sewing, Features, 3D Model Defeaturing, 3D Model Periodicity,
  Object Modification are moved into The Topology API section.
- Changes in User Guides – Modeling Data section: Naming shapes, sub-shapes, their orientation and state section is renamed to Shape content. Shape Location is moved into Shape content section.
  Storage of Shapes is moved into BRep Format section of Specification. Lists and Maps of Shapes subsection is moved into Topology - Exploration of Topological Data Structures.
- Some pictures in User Guides (Foundation Classes, Modeling Data, Modeling Algorithms) and Tutorial are updated to improve quality and correct mistakes.

6 months ago0027191: Documentation - redesign of information architecture -- revision (overview...
Vera Sdobnova [Thu, 1 Oct 2020 12:18:59 +0000 (15:18 +0300)]
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.

6 months ago0027191: Documentation - redesign of information architecture -- revision (build)
Vera Sdobnova [Thu, 1 Oct 2020 11:54:01 +0000 (14:54 +0300)]
0027191: Documentation - redesign of information architecture -- revision (build)

Revised documentation of building OCCT and third-parties; some related tags updated

6 months ago0027191: Documentation - redesign of information architecture -- renaming (4)
abv [Thu, 1 Oct 2020 11:27:14 +0000 (14:27 +0300)]
0027191: Documentation - redesign of information architecture -- renaming (4)

Move documents describing BREP format, Boolean operations, and PBR math to dox/specification

6 months ago0027191: Documentation - redesign of information architecture -- renaming (3)
abv [Thu, 1 Oct 2020 11:18:48 +0000 (14:18 +0300)]
0027191: Documentation - redesign of information architecture -- renaming (3)

Move guides on documentation, tests, coding rules, contribution workflow to dox/contribution

6 months ago0027191: Documentation - redesign of information architecture -- renaming (2)
abv [Thu, 1 Oct 2020 10:34:57 +0000 (13:34 +0300)]
0027191: Documentation - redesign of information architecture -- renaming (2)

Move debug and upgrade user guides to corresponding folders on upper level

Related: remove "debug" pattern from .gitignore to avoid ignoring relevant folder in dox

6 months ago0027191: Documentation - redesign of information architecture -- renaming (1)
abv [Thu, 1 Oct 2020 10:52:22 +0000 (13:52 +0300)]
0027191: Documentation - redesign of information architecture -- renaming (1)

Move / rename overview to introduction

6 months ago0031645: Documentation - provide external article references to PBR developer guide
iko [Mon, 28 Sep 2020 02:27:16 +0000 (05:27 +0300)]
0031645: Documentation - provide external article references to PBR developer guide

References have been added.

6 months ago0031813: Data Exchange, RWGltf_GltfJsonParser - debug assertion in progress scope...
kgv [Thu, 1 Oct 2020 09:43:54 +0000 (12:43 +0300)]
0031813: Data Exchange, RWGltf_GltfJsonParser - debug assertion in progress scope on reading glTF1.0 files

RWGltf_GltfJsonParser::gltfParseSceneNode() - removed redundant progress indication on sub-meshes list level.

6 months ago0027922: Samples - Qt sample document window display problem
bugmaster [Thu, 1 Oct 2020 11:42:10 +0000 (14:42 +0300)]
0027922: Samples - Qt sample document window display problem

6 months ago0030911: Visualization - Font_BRepFont using as a usual Standard_Transient
nds [Fri, 25 Sep 2020 12:00:43 +0000 (15:00 +0300)]
0030911: Visualization - Font_BRepFont using as a usual Standard_Transient

- StdPrs_BRepFont inherits Standard_Transient;
- StdPrs_BRepFont contains Font_FTFont in internal field;
- StdPrs_BRepFont implements FindAndCreate;

6 months ago0031762: Visualization, Font_TextFormatter - tabulation length is respected with...
kgv [Tue, 29 Sep 2020 09:12:14 +0000 (12:12 +0300)]
0031762: Visualization, Font_TextFormatter - tabulation length is respected with one extra symbol shift

Integrate test case for checking various scenarios with tabulation symbol.

6 months ago0031789: Coding Rules - remove redundant Standard_EXPORT from TKMesh
mkrylova [Thu, 24 Sep 2020 14:14:15 +0000 (17:14 +0300)]
0031789: Coding Rules - remove redundant Standard_EXPORT from TKMesh

- Standard_EXPORT which were specified for inline methods were deleted.
- ALL occurrences of DEFINE_STANDARD_RTTI_INLINE were replaced by DEFINE_STANDARD_RTTIEXT in header files and IMPLEMENT_STANDARD_RTTIEXT in source files
- ALL occurrences of "inline" keyword were deleted where it didn't not cause a linkage errors
- Added source files for classes that were without them for IMPLEMENT_STANDARD_RTTIEXT

6 months ago0031799: Configuration - compilation errors with Android NDK r12
kgv [Sun, 27 Sep 2020 16:51:56 +0000 (19:51 +0300)]
0031799: Configuration - compilation errors with Android NDK r12

Added missing <stdarg.h> include (va_list) to Standard_CString.hxx.
Do not include <search.h> in delabella.cpp when using gcc 4.9 from Android NDK.

6 months ago0031793: Draw Harness, vmanipulator - disable sorting picking result workaround
mzernova [Sat, 26 Sep 2020 18:47:58 +0000 (21:47 +0300)]
0031793: Draw Harness, vmanipulator - disable sorting picking result workaround

AIS_InteractiveContext::SetPickClosest() has been removed from vmanipulator command,
and test cases using the manipulator have been updated.

6 months ago0031795: Documentation - OCCDoc_ProcessSvg uses syntax incompatible with Inkscape 1.0
kgv [Fri, 25 Sep 2020 12:23:46 +0000 (15:23 +0300)]
0031795: Documentation - OCCDoc_ProcessSvg uses syntax incompatible with Inkscape 1.0

Detect old/new Inkscape version and pass arguments correspondingly.

6 months ago0027342: STEP - support C++ streams for import / export IR-2020-09-25
imn [Wed, 6 Apr 2016 13:09:55 +0000 (16:09 +0300)]
0027342: STEP - support C++ streams for import / export

- STEP low-level parser is converted to C++; required minimal version of flex is elevated to 2.5.37.
- Added possibility to import STEP from stream, see new method XSControl_Reader::ReadStream() (now implemented in STEP only).
- Parsers ported to win_flex_bison 2.5.23 (flex 2.6.4, bison 3.7.1)
- Added support of C++ flex and bison scanners in in CMake scripts
- Some code clean-up in StepFile and around (unused files and functions are eliminated)
- Option to read from stream is added in DRAW command testreadstep for testing ReadStream() function
- Added test bugs step bug27342

6 months ago0031786: Data Exchange - After the importing STEP file the free shape is empty
sshutina [Fri, 25 Sep 2020 07:25:47 +0000 (10:25 +0300)]
0031786: Data Exchange - After the importing STEP file the free shape is empty

 - Fixed the exception
 - Added the test

6 months ago0031701: Visualization, SelectMgr_ViewerSelector - make depth tolerance configurable
kgv [Fri, 7 Aug 2020 10:40:47 +0000 (13:40 +0300)]
0031701: Visualization, SelectMgr_ViewerSelector - make depth tolerance configurable

SelectMgr_ViewerSelector::SetDepthTolerance() - added property defining depth tolerance type and value.
Default value remains the same (SelectMgr_TypeOfDepthTolerance_SensitivityFactor),
while new values (SelectMgr_TypeOfDepthTolerance_Uniform, SelectMgr_TypeOfDepthTolerance_UniformPixels) change behavior.

AIS_Manipulator - removed obsolete suggestion to use AIS_InteractiveContext::SetPickClosest()
for issue fixed long time ago by #0027797.

6 months ago0031685: Data Exchange, STEPCAFControl_Reader - NULL dereference on translating PLACE...
dpasukhi [Sun, 13 Sep 2020 18:13:49 +0000 (21:13 +0300)]
0031685: Data Exchange, STEPCAFControl_Reader - NULL dereference on translating PLACED_DATUM_TARGET_FEATURE

- Fix incorrect sharing DatumTargetType_Area
- Add check for null object

6 months ago0031785: [REGRESSION] Application Framework - application crashes on reading XBF...
abv [Tue, 22 Sep 2020 12:24:54 +0000 (15:24 +0300)]
0031785: [REGRESSION] Application Framework - application crashes on reading XBF document in background thread

Class CDF_Session is removed.

Integrated previously but not described:

0029195: OCAF - ensure thread safety for different documents.

Static local variables are eliminated in PCDM package.
Global documents metadata look-up table and directory of opened documents are removed.
Look-up table is maintained now as field in instances of the CDM_Application class.
Methods providing iteration by components are removed from class CDF_Store; signature of methods returned Standard_ExtString is changed to return Handle(TCollection_HExtendedString).
Support of different "Presentations" of documents is eliminated.

6 months ago0031688: Visualization - Wrong ISO lines for a face created from BSpline
mkrylova [Thu, 27 Aug 2020 12:12:22 +0000 (15:12 +0300)]
0031688: Visualization - Wrong ISO lines for a face created from BSpline

Added a check to see if the ISO line intersects the bounding contour.

6 months ago0031765: Coding Rules - eliminate GCC compiler warnings -Wcatch-value in IVtk
kgv [Mon, 14 Sep 2020 11:08:26 +0000 (14:08 +0300)]
0031765: Coding Rules - eliminate GCC compiler warnings -Wcatch-value in IVtk

Catched exceptions are now passed by reference and error message is printed.
Added Standard_FALLTHROUGH to IVtkOCC_ShapePickerAlgo::SetSelectionMode().

6 months ago0028089: Mesh - New algorithm for triangulation of 2d polygons
oan [Wed, 10 Jul 2019 10:04:25 +0000 (13:04 +0300)]
0028089: Mesh - New algorithm for triangulation of 2d polygons

Added custom meshing core algorithm to generate base mesh using Delabella library,
which can be enabled via IMeshTools_Parameters::MeshAlgo option or CSF_MeshAlgo environment variable.

Do not fill cirles filter upon explicit initialization.
Call base postProcessMesh functionality after initialization of circles in BRepMesh_CustomDelaunayBaseMeshAlgo.

Added Vsprintf() wrapper for vsprintf() preserving C locale.

6 months ago0031323: OCAF, TObj - TObj_OcafObjectIterator does not go recursively to children...
mpv [Mon, 14 Sep 2020 13:49:38 +0000 (16:49 +0300)]
0031323: OCAF, TObj - TObj_OcafObjectIterator does not go recursively to children if type argument is used

Added theAllSubChildren flag to the TObj_OcafObjectIterator to iterate all sub-children.
By default it still iterates only the first level of children.

6 months ago0031628: Configuration - Visual Studio 2019 compiler hangs on building 32-bit target
tiv [Fri, 26 Jun 2020 07:32:43 +0000 (10:32 +0300)]
0031628: Configuration - Visual Studio 2019 compiler hangs on building 32-bit target

The workaround for a bug occurred in MS Visual Studio 2019 / Win32 / Release configuration with disabled Whole Program Optimization is implemented.
The problem was at the line "std::stable_sort(aPairList.begin(), aPairList.end(), BRepExtrema_CheckPair_Comparator);" of BRepExtrema_DistShapeShape.cxx source file,
and linked to NCollection_Vector::Differ() method.
This workaround was suggested by MSFT team.

6 months ago0031738: Samples: Update of samples for public release 7.5.0
bugmaster [Sun, 20 Sep 2020 10:25:09 +0000 (13:25 +0300)]
0031738: Samples: Update of samples for public release 7.5.0

- Adding VS 2019 redefinition
- Update sln files for vc14,141,142

6 months ago0030559: BOP Fuse: result is inconsistent
emv [Wed, 16 Sep 2020 12:05:50 +0000 (15:05 +0300)]
0030559: BOP Fuse: result is inconsistent

Implement alternative approach for making the edge seam (closed) on the face. This approach is useful for non-periodic surfaces (e.g. tore-like surface of revolution is periodic in U direction only).
Avoid internal faces in the affected solids of the result of BOP Fuse.

6 months ago0031379: Configuration - using defined variable of THIRDPARTY_DIR
nds [Tue, 18 Feb 2020 05:07:07 +0000 (08:07 +0300)]
0031379: Configuration - using defined variable of THIRDPARTY_DIR

6 months ago0031773: Visualization - add Prs3d_ToolTorus
mzernova [Thu, 17 Sep 2020 19:55:27 +0000 (22:55 +0300)]
0031773: Visualization - add Prs3d_ToolTorus

Added Prs3d_ToolTorus tool to create a torus

Added DRAW commands:
- vtorus
- vcylinder
- vsphere

Added test cases:
- v3d/quadric/torus
- v3d/quadric/cylinder
- v3d/quadric/sphere

6 months ago0027185: Data Exchange - IGES - incorrect reading of DE for undefined entity IR-2020-09-18 WEEK-38
ika [Tue, 15 Sep 2020 14:20:35 +0000 (17:20 +0300)]
0027185: Data Exchange - IGES - incorrect reading of DE for undefined entity

Fix reading of pointers to color entity.

6 months ago0025171: Data Exchange - STEP Lexer - the strings with quote sign inside can't be...
dpasukhi [Sun, 13 Sep 2020 10:23:00 +0000 (13:23 +0300)]
0025171: Data Exchange - STEP Lexer - the strings with quote sign inside can't be properly lexed

Add a test case to verify that the .STEP is read correctly

6 months ago0030014: Data Exchange - Step File import does not create shapes, after transfer...
dpasukhi [Sun, 13 Sep 2020 10:12:16 +0000 (13:12 +0300)]
0030014: Data Exchange - Step File import does not create shapes, after transfer roots

Add a test case to verify that the .STEP is read correctly

6 months ago0031191: Data Exchange - STEP import returns empty shape for a file written by SolidW...
dpasukhi [Sun, 13 Sep 2020 10:05:04 +0000 (13:05 +0300)]
0031191: Data Exchange - STEP import returns empty shape for a file written by SolidWorks 2018

Add a test case to verify that the .STEP is read correctly

6 months ago0030539: Data Exchange - Step file can't be imported (ADT.step)
dpasukhi [Sun, 13 Sep 2020 09:43:48 +0000 (12:43 +0300)]
0030539: Data Exchange - Step file can't be imported (ADT.step)

Add a test case to verify that the .STEP is read correctly

6 months ago0025440: Data Exchange - STEP file with Japanese unicode symbols cannot be read
dpasukhi [Sun, 13 Sep 2020 08:35:47 +0000 (11:35 +0300)]
0025440: Data Exchange - STEP file with Japanese unicode symbols cannot be read

Add a test case to verify that the .STEP is read correctly

6 months ago0031766: Modeling Algorithms - Instability on pipe bugs bug26088 test case
jgv [Mon, 14 Sep 2020 15:51:50 +0000 (18:51 +0300)]
0031766: Modeling Algorithms - Instability on pipe bugs bug26088 test case

Correction in GeomFill_Sweep: set the flags "myExchUV", "isUReversed", "isVReversed" to FALSE (initial state) after failure of BuildKPart method.

6 months ago0031491: Data Exchange, STEP Import - Regression due to patch 29068
ika [Wed, 16 Sep 2020 12:34:42 +0000 (15:34 +0300)]
0031491: Data Exchange, STEP Import - Regression due to patch 29068

Add parameter read.step.root.transformation to switch on/off using transformation placed in the root shape representation.

6 months ago0031675: Data Exchange - Error opening the STEP-file
dpasukhi [Thu, 10 Sep 2020 16:28:58 +0000 (19:28 +0300)]
0031675: Data Exchange - Error opening the STEP-file

Add a check for null array object ("Elements") within StepShape_GeometricSet.cxx

6 months ago0025113: Mesh - Progress indication and user break functionality for BRepMesh component
emv [Fri, 10 Jul 2020 11:19:31 +0000 (14:19 +0300)]
0025113: Mesh - Progress indication and user break functionality for BRepMesh component

Added Progress Indicator to BRep_Mesh

6 months ago0031595: Foundation Classes - make methods Message_Report::SendMessages() virtual
abv [Thu, 17 Sep 2020 05:45:51 +0000 (08:45 +0300)]
0031595: Foundation Classes - make methods Message_Report::SendMessages() virtual

6 months ago0025495: Documentation - Enumeration Approx_ParameterizationType is not documented
jgv [Mon, 14 Sep 2020 15:51:50 +0000 (18:51 +0300)]
0025495: Documentation - Enumeration Approx_ParameterizationType is not documented

6 months ago0031513: Data Exchange - FSD_Base64Decoder::Decode() returns buffer with wrong length
kgv [Wed, 22 Apr 2020 20:50:55 +0000 (23:50 +0300)]
0031513: Data Exchange - FSD_Base64Decoder::Decode() returns buffer with wrong length

6 months ago0031757: Visualization - Prebuild BVH for Select3D_SensitiveEntity in separate threads
age [Tue, 8 Sep 2020 11:44:21 +0000 (14:44 +0300)]
0031757: Visualization - Prebuild BVH for Select3D_SensitiveEntity in separate threads

- Added a new mode in SelectMgr_ViewerSelector for computing BVH for Select3D_SensitiveEntity in background which can be activated via method SelectMgr_ViewerSelector::SetToPrebuildBVH(). Default behavior has not been changed.
- New class SelectMgr_BVHThreadPool manages background processing of BVH building queue.
- Added Select3D_SensitiveEntity::ToBuildBVH() method that checks if BVH (if it used) is in invalidated state. Defined this method for all standard classes inherited from Select3D_SensitiveEntity.

6 months ago0031769: Application Framework - regression : can not initialize two kinds of applica...
mpv [Tue, 15 Sep 2020 13:20:01 +0000 (16:20 +0300)]
0031769: Application Framework - regression : can not initialize two kinds of application in one thread

6 months ago0029789: Modeling Algorithms - General Fuse produces invalid shape for valid arguments
emv [Tue, 15 Sep 2020 13:42:04 +0000 (16:42 +0300)]
0029789: Modeling Algorithms - General Fuse produces invalid shape for valid arguments

Integrating test case for the issue.

6 months ago0025462: BRepAlgoAPI_Fuse not work correctly for a planar face
emv [Tue, 15 Sep 2020 12:13:10 +0000 (15:13 +0300)]
0025462: BRepAlgoAPI_Fuse not work correctly for a planar face

Fixed by 0028747. Integrating test case only.

6 months ago0031770: Application Framework - To add tests of Abort command to 31748
mpv [Tue, 15 Sep 2020 13:37:13 +0000 (16:37 +0300)]
0031770: Application Framework - To add tests of Abort command to 31748

6 months ago0031759: Application Framework - regression: support of old versions of OCAF document...
vro [Tue, 15 Sep 2020 08:36:11 +0000 (11:36 +0300)]
0031759: Application Framework - regression: support of old versions of OCAF document fails

6 months ago0031768: Foundation Classes - use usleep within OSD::MilliSecSleep()
kgv [Tue, 15 Sep 2020 10:05:06 +0000 (13:05 +0300)]
0031768: Foundation Classes - use usleep within OSD::MilliSecSleep()

6 months ago0031173: Point Cloud Rendering - Enable remote file systems as input and output for...
agv [Fri, 22 Nov 2019 09:21:55 +0000 (12:21 +0300)]
0031173: Point Cloud Rendering - Enable remote file systems as input and output for the Point Cloud converter

Make RWStl_Reader::IsAscii() accepting optional argument pointing how to rewind the input stream, using unget() or seekg(). This allows writing a reader that uses a stream supporting seekg but not supporting unget.

6 months ago0024789: BOPAlgo_Builder produces invalid result on planar, conical and spherical...
emv [Thu, 3 Sep 2020 11:37:29 +0000 (14:37 +0300)]
0024789: BOPAlgo_Builder produces invalid result on planar, conical and spherical surfaces

BOPAlgo_PaveFiller::MakeBlocks() - Improve Face/Face post treatment procedure by:
* Adding more existing edge for intersection with section edges to resolve all possible intersections.
* Using tree for edges selection.
* Avoiding intersection of the existing edges among themselves.

IntPatch_ImpImpIntersection::CyCyNoGeometric - add more points to wline to make it more smooth.

6 months ago0031452: Impossible to get Backup of the attribute and status that attribute was...
gka [Mon, 14 Sep 2020 18:46:11 +0000 (21:46 +0300)]
0031452: Impossible to get Backup of the attribute and status that attribute was modified before commit transaction

Method TObj_Object::HasModifications() was added to get flag that object or it's children was modified in the current open transaction

6 months ago0030786: BOP Cut: artifacts with enabled nondestructive flag
emv [Thu, 20 Jun 2019 08:33:14 +0000 (11:33 +0300)]
0030786: BOP Cut: artifacts with enabled nondestructive flag

Avoid PaveBlocks initialization on vertex update.
Test case for the issue.

6 months ago0031711: Data Exchange - STEPCAFControl_Reader hangs on attached file in an infinite...
dpasukhi [Tue, 1 Sep 2020 07:47:20 +0000 (10:47 +0300)]
0031711: Data Exchange - STEPCAFControl_Reader hangs on attached file in an infinite loop

Add check if .step external file is the same main file.

6 months ago0030308: OCCT Qt Tutorial Sample Cannot Be Built on Linux
bugmaster [Tue, 15 Sep 2020 13:15:09 +0000 (16:15 +0300)]
0030308: OCCT Qt Tutorial Sample Cannot Be Built on Linux

6 months ago0031219: Application Framework - TObj_Object::SetName(const Standard_CString theName...
gka [Mon, 9 Dec 2019 11:43:47 +0000 (14:43 +0300)]
0031219: Application Framework - TObj_Object::SetName(const Standard_CString theName) should use conversion to TCollection_HAsciiString

In the method TObj_Object::TObj_Object::SetName(const Standard_CString theName) conversion to the HAsciiString was used instead of the conversion to the TCollection_HExtendedString. -

6 months ago0030792: Modeling Algorithms, BOP Fuse - some parts of the shape are dropped
emv [Mon, 14 Sep 2020 10:33:32 +0000 (13:33 +0300)]
0030792: Modeling Algorithms, BOP Fuse - some parts of the shape are dropped

Integrating test case for the issue.

6 months ago0031763: Foundation Classes - reporting of progress within parallel algorithms
abv [Sun, 13 Sep 2020 16:48:30 +0000 (19:48 +0300)]
0031763: Foundation Classes - reporting of progress within parallel algorithms

Classes Message_ProgressRange and Message_ProgressScope are improved to store start point of the range.
Method Message_ProgressScope::Value() is improved to compute the value in the current scope from the actual current value of the global progress.
Description of Message_ProgressScope class is improved.

Off-topic:
- method Message_ProgressScope::Relieve() is renamed to Close() for semantic consistency
- article in Upgrade Guide is revised and corrected

7 months ago0031228: It is impossible switch off setting default names for objects inherited... IR-2020-09-11
gka [Mon, 9 Dec 2019 15:29:06 +0000 (18:29 +0300)]
0031228: It is impossible switch off setting default names for objects inherited TObj_Partition

In order to switch off setting default names for objects of the type TObj_Partition argument "theSetName" defining addition of the default names was added

7 months ago0030662: Documentation - update programming example in Visualization user guide
kgv [Fri, 11 Sep 2020 14:37:37 +0000 (17:37 +0300)]
0030662: Documentation - update programming example in Visualization user guide

"A programming example" section has been updated to provide a working code.

7 months ago0031221: Visualization - selection filter in context
sshutina [Fri, 11 Sep 2020 09:14:58 +0000 (12:14 +0300)]
0031221: Visualization - selection filter in context

 - Added the new filter SelectMgr_AndOrFilter which allows to define the context filter. By default OR selection filter is used
 - Added the enumeration SelectMgr_FilterType provides filter types
 - To define behavior SelectMgr_AndOrFilter use  SetFilterType in AIS_InteractiveContext
 - Added the test
 - SelectMgr_OrFilter don't store the disabled objects, it's stored in SelectMgr_AndOrFilter

7 months ago0031466: Data Exchange - Cannot import layers from STeP file (7.4.0 regression)
ika [Thu, 10 Sep 2020 18:56:08 +0000 (21:56 +0300)]
0031466: Data Exchange - Cannot import layers from STeP file (7.4.0 regression)

Return possibility to find layers fir subshapes.

7 months ago0025748: Parallel version of progress indicator
msv [Fri, 10 Jul 2020 11:19:31 +0000 (14:19 +0300)]
0025748: Parallel version of progress indicator

Progress indication mechanism is refactored to support incrementing progress within multithreaded algorithms.

The class Message_ProgressIndicator is only an interface to the user application.
It accumulates the progress provided by progress scopes.
The counter is protected by mutex for thread-safety.

The new class Message_ProgressScope replacing Message_ProgressSentry should be used to advance the progress.
The scopes are nested to each other to reflect the nested nature of operations.
The new class Message_ProgressRange should be used to pass the progress to sub-scopes.

All OCCT algorithms involving progress indication have been updated to new API.

Improvements in Draw_ProgressIndicator:
- Separate console mode has been added in order to make possible to put the progress into std::cout instead
  or in addition to the draw interpreter, instead of trigger option "-tclOutput".
- Treatment of Ctrl-Break signal has been added.
  Now any operation can be aborted by Ctrl-C or Ctrl-Break keystroke.

Added new test case 'perf fclasses progr_par' for testing of parallel work of the progress.

7 months ago0031683: Visualization - V3d_View::SetBackgroundImage() should accept Image_PixMap
mkrylova [Wed, 2 Sep 2020 13:08:35 +0000 (16:08 +0300)]
0031683: Visualization - V3d_View::SetBackgroundImage() should accept Image_PixMap

Added V3d_View::SetBackgroundImage() accepting Graphic3d_Texture2D on input.

Graphic3d_CView/OpenGl_View have been modified to merge Graphic3d_CView::SetBackgroundImage()
and ::SetBackgroundCubeMap() implementations into a single method.

7 months ago0030848: Data Exchange - Problem load step file
dpasukhi [Wed, 9 Sep 2020 10:06:05 +0000 (13:06 +0300)]
0030848: Data Exchange - Problem load step file

Update .step scanner rules to read anything within the text, including nested apostrophes

7 months ago0030053: STEP read fails due to comment string
dpasukhi [Wed, 9 Sep 2020 10:00:15 +0000 (13:00 +0300)]
0030053: STEP read fails due to comment string

- Update .step scanner:
  - add rules to read anything within the comment
  - add a function to initialize of lexical scanner
  - add states for Commit & End instead of global variables modcom & modend

7 months ago0030397: Data Exchange - STEP Reader extension to support entities which have a text...
dpasukhi [Wed, 9 Sep 2020 10:02:39 +0000 (13:02 +0300)]
0030397: Data Exchange - STEP Reader extension to support entities which have a text description field with not supported symbols

STEP file is now opened in binary mode (instead of text mode) to avoid unexpected handling of control symbols inside string constants.

7 months ago0030773: Application Framework - To allow to inherit existing attributes to reuse...
mpv [Fri, 19 Jun 2020 20:12:17 +0000 (23:12 +0300)]
0030773: Application Framework - To allow to inherit existing attributes to reuse persistence mechanisms

Added possibility to inherit existing attributes if the same persistent fields are used. All methods that allow controlling the data model changes or getting some callbacks may be overridden in successor. They may have same GUIDs as a base class or new ones.

Special macros IMPLEMENT_DERIVED_ATTRIBUTE and IMPLEMENT_DERIVED_ATTRIBUTE_WITH_TYPE must be used instead of standard Handle macro definition IMPLEMENT_STANDARD_RTTIEXT to register new derived attributes.

Using this improvement several existing attributes from TDataStd, TDataXtd and XCAFDoc packages become inherited from other base attribute-classes. XML and Bin drivers of these attributes are removed. New base attribute classes are added: TDataStd_GenericEmpty and TDataStd_GenericExtString.

This improvement does not change both present formats Bin and XML documents. The obsolete Standard scheme is not changed at all.

7 months ago0031310: Application Framework - A document with a reference array attribute crashes...
vro [Tue, 21 Jan 2020 08:46:45 +0000 (11:46 +0300)]
0031310: Application Framework - A document with a reference array attribute crashes on attempt to save on disk

7 months ago0031748: Application Framework - Efficient OCAF transactions in OCCT
mpv [Tue, 8 Sep 2020 06:50:18 +0000 (09:50 +0300)]
0031748: Application Framework - Efficient OCAF transactions in OCCT

7 months ago0029195: OCAF - ensure thread safety for different documents.
mpv [Wed, 26 Aug 2020 07:15:22 +0000 (10:15 +0300)]
0029195: OCAF - ensure thread safety for different documents.

OCAF persistence architecture modification to satisfy multi-threading criteria.

7 months ago0031736: ShapeUpgrade_UnifySameDomain algorithm does not unify all possible faces
jgv [Tue, 1 Sep 2020 20:55:52 +0000 (23:55 +0300)]
0031736: ShapeUpgrade_UnifySameDomain algorithm does not unify all possible faces

1. Correct processing faces that can be converted into planar ones.
2. Correct processing faces based on V-closed surfaces.

7 months ago0031658: Inspector - using AIS_ViewController in View package
nds [Thu, 10 Sep 2020 03:46:26 +0000 (06:46 +0300)]
0031658: Inspector - using AIS_ViewController in View package

- View: using AIS_ViewController, AIS_ViewCube.

7 months ago0031656: Visualization - drag item to handle in AIS_ViewController
nds [Tue, 8 Sep 2020 19:59:02 +0000 (22:59 +0300)]
0031656: Visualization - drag item to handle in AIS_ViewController

ProcessDragging method in AIS_InteractiveObject. Empty by default. Should be implemented if drag is used for the object.

7 months ago0031758: Visualization, AIS_InteractiveContext - unify clearDynamicHighlight() method
osa [Tue, 8 Sep 2020 15:22:45 +0000 (18:22 +0300)]
0031758: Visualization, AIS_InteractiveContext - unify clearDynamicHighlight() method

7 months ago0031326: Foundation Classes - Init from Json for base OCCT classes
nds [Mon, 7 Sep 2020 21:16:32 +0000 (00:16 +0300)]
0031326: Foundation Classes - Init from Json for base OCCT classes

InitFromJson method implementation for some simple classes.
OCCT_INIT_* defines introduction to do automatic parsing of the stream into values.
Inspector is extended to visualize objects created on the dump stream if it might be created.