]> OCCT Git - occt-copy.git/log
occt-copy.git
5 years ago0030663: Visualization - synthesize italic style for a font having no italic style...
kgv [Thu, 21 Nov 2019 09:31:36 +0000 (12:31 +0300)]
0030663: Visualization - synthesize italic style for a font having no italic style [backport OCCT720]

Font_FTFont now defines shear transformation to synthesize italic style for fonts having no such style.
Font_FontMgr::FindFont() and command "vfont -find" have been extended with -strict option
to check whether the given font is actually registered or not.
Font_FTFont::Init() - added constructor from memory buffer.
Second Font_FTFont::Init() override has been renamed to Font_FTFont::FindAndInit()
to avoid ambiguity between two similar methods taking full font path and font name as string.

# Conflicts:
# src/AIS/AIS_Dimension.cxx
# src/OpenGl/OpenGl_Text.cxx

5 years ago0030474: Visualization - fallback font is ignored for missing font alias within Font_...
kgv [Mon, 4 Feb 2019 11:04:21 +0000 (14:04 +0300)]
0030474: Visualization - fallback font is ignored for missing font alias within Font_FontMgr::FindFont()

5 years ago0030439: Visualization - extend fonts search within Font_FontMgr::FindFont() on Linux
kgv [Thu, 10 Jan 2019 20:10:51 +0000 (23:10 +0300)]
0030439: Visualization - extend fonts search within Font_FontMgr::FindFont() on Linux

Font_FontMgr has been redesigned to:
- Store fonts in a map instead a list.
- Allow mapping multiple fonts to a single alias.
- Log informative message about usage of non-requested font (fallback).
- Register all font files within standard folders on Linux when "fonts.dir" is not found.
- Prefer specific alias ("serif") as default fallback font instead of arbitrary one in a system.

A couple of obsolete and broken font aliases have been removed;
instead, new aliases of fonts popular on Linux platform have been added.

Font_NameOfFont.hxx has been extended with more neutral aliases
"monospace", "serif", "sans-serif", "cjk" and "korean".

Font_FontAspect enumeration values have been renamed Font_FA_ -> Font_FontAspect_
with old values preserved as alias.

Font_SystemFont has been extended with a list of paths to Font_FontAspect styles,
so that entire Font Family is now defined within a single Font_SystemFont instance.
Non-resizable fonts are now ignored by Font Manager.

5 years ago0025852: Visualization - Font_BRepFont produces bad faces for circled symbols [backpo...
skl [Thu, 12 Jul 2018 06:47:02 +0000 (09:47 +0300)]
0025852: Visualization - Font_BRepFont produces bad faces for circled symbols [backported to occt720]

Font_BRepFont now uses a dedicated algorithm for text-to-BRep transformation instead of relying on ShapeFix.
It orders wires based on wire classification, analyzes internal zones and creates a few faces (if needed).
TKService dependency from TKShHealing has been dropped.

Font_BRepFont::buildFaces() backport.

5 years ago0029225: Visualization - Font_FTFont::AdvanceX() retrieves kerning value for incorrec...
kgv [Fri, 13 Oct 2017 12:52:51 +0000 (15:52 +0300)]
0029225: Visualization - Font_FTFont::AdvanceX() retrieves kerning value for incorrect characters pair

Fixed FT_Get_Kerning misuse within Font_FTFont::AdvanceX()/Font_FTFont::AdvanceY().
Font_FTFont::loadGlyph() has been corrected to not return TRUE
in case if method called with 0 argument second+ time.

5 years ago0029117: Adding translation of Multileader entity
anv [Thu, 21 Sep 2017 12:15:12 +0000 (15:15 +0300)]
0029117: Adding translation of Multileader entity

Scaling of width of glyphs is added om Font_FTFont class.
Font "SimSan" is specified as fallback alias for font "NSimSan" (contains Chinese hieroglyphs).

5 years ago0029122: Visualization - improve Font_BRepFont to handle one-line-fonts
kgv [Tue, 19 Sep 2017 13:53:39 +0000 (16:53 +0300)]
0029122: Visualization - improve Font_BRepFont to handle one-line-fonts

Font_SystemFont - added a new property SingleStrokeFont().
Font_BRepFont::renderGlyph() has been extended to not close contours
when flag SingleStrokeFont() has been set.

5 years ago0030278: Foundation Classes - make IndexedMapNode as protected inside of NCollection_...
kgv [Thu, 21 Nov 2019 09:37:49 +0000 (12:37 +0300)]
0030278: Foundation Classes - make IndexedMapNode as protected inside of NCollection_IndexedMap

# Conflicts:
# src/NCollection/NCollection_IndexedMap.hxx

5 years ago0031174: Visualization - support user-provided stipple line patterns [occt720 backport]
kgv [Mon, 18 Nov 2019 10:42:06 +0000 (13:42 +0300)]
0031174: Visualization - support user-provided stipple line patterns [occt720 backport]

5 years ago0031306: Modeling Algorithms - Incomplete result of Cut operation
emv [Mon, 20 Jan 2020 06:32:52 +0000 (09:32 +0300)]
0031306: Modeling Algorithms - Incomplete result of Cut operation

The problem is fixed by #0029323. Integrating test case only.

5 years ago0029323: Intersection algorithm produces the curve with oscillation
nbv [Mon, 13 Nov 2017 10:55:48 +0000 (13:55 +0300)]
0029323: Intersection algorithm produces the curve with oscillation

Sometimes the algorithm of purging of extra points in the walking line makes enormous difference in distance between two neighbor segments of the line. This badly impacts the quality of approximation result. This patch balances the difference in distances by forbidding deletion of some points.

1. tests/bugs/modalg_6/bug27615

The reason of the correction is explained in the message ~0072580 (see issue #28557).

2. tests/bugs/modalg_7/bug28892*
   tests/bugs/modalg_7/bug28984

The reason of the correction is explained in the message ~0072583 (see issue #28984).

5 years ago0031260: Geom2dGcc_Circ2d2TanRad fails in this case (720)
ifv [Fri, 17 Jan 2020 08:30:50 +0000 (11:30 +0300)]
0031260: Geom2dGcc_Circ2d2TanRad fails in this case (720)

5 years ago0031203: SENR-21-037 SenerAlgo_ProjectWire fails when projecting wire to face (691...
ifv [Mon, 2 Dec 2019 09:11:41 +0000 (12:11 +0300)]
0031203: SENR-21-037 SenerAlgo_ProjectWire fails when projecting wire to face (691 and 720)

5 years ago* 0031140: Draw command "cirtang" raises exception on the parallel curves
gka [Thu, 7 Nov 2019 15:11:55 +0000 (18:11 +0300)]
0031140: Draw command "cirtang" raises exception on the parallel curves

To avoid exception for parallel curves because the number of solutions exceeds the size of the reserved array a check has been added that the number of solutions does not exceed the size of the reserved array.

5 years ago0030869: Modeling Data - BRepAdaptor_CompCurve incorrectly evaluates the boundary...
emv [Wed, 7 Aug 2019 06:40:42 +0000 (09:40 +0300)]
0030869: Modeling Data - BRepAdaptor_CompCurve incorrectly evaluates the boundary points

Problem is solved by #0029430. Integrating test case only.

5 years ago0029775: Modeling Data - BRepAdaptor_CompCurve Parameterization Is Incorrect
Benjamin Bihler [Wed, 16 May 2018 09:59:15 +0000 (11:59 +0200)]
0029775: Modeling Data - BRepAdaptor_CompCurve Parameterization Is Incorrect

Added wire connectivity requirement to class documentation of
BRepAdaptor_CompCurve.

5 years ago0029430: [Regression] Curve evaluation at boundary point.
nbv [Tue, 16 Jan 2018 13:03:01 +0000 (16:03 +0300)]
0029430: [Regression] Curve evaluation at boundary point.

Before the fix, BRepAdaptor_CompCurve considered the input wire to be periodic with period LastParameter()-FirstParameter().
Now, method IsPeriodic will always return FALSE because it is impossible to obtain correspondence between the members of BRepAdaptor_CompCurve class and its periodicity status.
New behavior has been documented in upgrade-guide.

6 years ago0030708: Modeling Data - Exception is raised while initializing TopoDS_Iterator with...
emv [Mon, 13 May 2019 09:32:09 +0000 (12:32 +0300)]
0030708: Modeling Data - Exception is raised while initializing TopoDS_Iterator with null shape

Added protection from null shapes to TopoDS_Iterator::Initialize method.

6 years ago0030647: Geom2dGcc_Circ2d2TanRad not giving all the solutions
ifv [Tue, 16 Apr 2019 07:49:26 +0000 (10:49 +0300)]
0030647: Geom2dGcc_Circ2d2TanRad not giving all the solutions

Correct choice od number of sampling points is added for Adaptor2d_OffsetCurve

6 years ago0030522: Modeling Algorithms - BRepBuilderAPI_MakeWire produces different wires depen...
emv [Tue, 26 Feb 2019 11:06:30 +0000 (14:06 +0300)]
0030522: Modeling Algorithms - BRepBuilderAPI_MakeWire produces different wires depending on the order of parameters

The following improvements have been implemented in BRepLib_MakeWire class to make it more reliable:
1. Quit adding edges of a wire into result if the current edges have not been added. Return NotDone status.
2. Allow merging not only bounding vertices (connected to only one edge) but also the middle ones, so the multi-connected vertices may appear in the result.

Test case for the issue.

7 years ago0029887: Wrong result of CUT operation due to incorrect point-face classification
nbv [Wed, 20 Jun 2018 14:30:00 +0000 (17:30 +0300)]
0029887: Wrong result of CUT operation due to incorrect point-face classification

Using of input tolerance has been eliminated in Geom2dInt_GInter algorithm called from BRepClass_Intersector::Perform(...) method. Now, the input tolerance is used only for check ON-status of classification.

(cherry picked from commit 748c9dc6ae0d6018018fca585b6d8cf511c0dd0b)
(cherry picked from commit 204e98c0b1eaa8614a7f7f117c5fb9213eb47991)

7 years agoCorrection of test cases.
nbv [Wed, 14 Feb 2018 09:11:14 +0000 (12:11 +0300)]
Correction of test cases.

7 years ago0029510: IntWalk_PWalking:: PutToBoundary(...) method results in appearing several...
nbv [Thu, 15 Feb 2018 11:38:59 +0000 (14:38 +0300)]
0029510: IntWalk_PWalking:: PutToBoundary(...) method results in appearing several coincident points in Walking-line

Places have been detected where coincident points are created. The problem has been fixed.

(cherry picked from commit 7c7cda9f73f8762d4999657a925f65cd02bc6864)

7 years ago0029494: Intersection line between two parametric surfaces is restricted incorrectly...
nbv [Thu, 8 Feb 2018 12:59:41 +0000 (15:59 +0300)]
0029494: Intersection line between two parametric surfaces is restricted incorrectly if it matches the surface boundary

Creation of IntPatch_Points is forbidden in tangent-zones exceptionally domain boundaries of intersected surface.

(cherry picked from commit 2123a44c2595633288e208a352050592710782f5)

7 years ago# Correction in test cases and documentation.
nbv [Mon, 12 Feb 2018 14:29:50 +0000 (17:29 +0300)]
# Correction in test cases and documentation.

(cherry picked from commit b244aa455edc4b973457be365ef95bb475523654)

7 years ago# Correction of test case
nbv [Mon, 12 Feb 2018 10:27:53 +0000 (13:27 +0300)]
# Correction of test case

(cherry picked from commit 663b5da04a351f0ba1ffc8b26c7df818ad56545b)

7 years ago0029496: No intersection curve between faces if starting points are given
nbv [Thu, 8 Feb 2018 13:57:36 +0000 (16:57 +0300)]
0029496: No intersection curve between faces if starting points are given

Now, bounded IntPatch_Points are found in case when starting points are used in intersection algorithm. Before the fix, these points were not looked for (even).

(cherry picked from commit e6a1e86e7b926937f6773d45ed75a2c36d0e7c27)

7 years ago0029488: Regression: boolean operation " general fuse" creates solid containing 5...
emv [Wed, 7 Feb 2018 11:31:43 +0000 (14:31 +0300)]
0029488: Regression: boolean operation " general fuse" creates solid containing 5 not connected shells lying on the one level.

Boolean Operations - when checking two faces with the same bounds on Same Domain, take into account possible deviation of the edges from the faces surfaces.

Test cases for the issue.

(cherry picked from commit 8a7476a62292cb359f2459138e8a267d1aa07ce2)

7 years ago# Modified scripts
gka [Mon, 5 Feb 2018 14:05:45 +0000 (17:05 +0300)]
# Modified scripts

7 years ago0029465: Regression relation to 691 version: Extrema_ExtCC returns IsParallel equal...
emv [Thu, 1 Feb 2018 10:10:16 +0000 (13:10 +0300)]
0029465: Regression relation to 691 version: Extrema_ExtCC returns IsParallel equal to true for not parallel curves

Strengthening of the criteria of the parallel status of the curves by additional checking if the ends of the curves do not diverge.

Test cases for the issue.

7 years ago0029473: DRAW command "splitshape" produces invalid result on the cylindrical face.
gka [Fri, 2 Feb 2018 09:32:46 +0000 (12:32 +0300)]
0029473: DRAW command "splitshape" produces invalid result on the cylindrical face.

Fix for porting SenerAlgo on the OCCT 720.

Test case for the issue.

7 years ago0029463: Regression relation to 691 version: Method BndBox::IsOut() returns true...
msv [Tue, 30 Jan 2018 13:03:06 +0000 (16:03 +0300)]
0029463: Regression relation to 691 version: Method BndBox::IsOut() returns true for point lying on the planar face

Correct the method BRepBndLib::Add so that to enlarge the bounding box on the tolerance of edges which curves participate in calculation of the box.

7 years ago0029018: Documentation - Provide user guide for Qt browser OCCT-720 STR_GMBH_720 V7_2_0
nds [Mon, 28 Aug 2017 09:29:29 +0000 (12:29 +0300)]
0029018: Documentation - Provide user guide for Qt browser

Documentation is added in a new "Inspector" page of "User Guides".
Inspector plugins has some improvements by the documentation needs.
New DRAW scripts are implemented for 'tinspector' command.

7 years agoUpdate of title page of documentation (overview)
abv [Wed, 30 Aug 2017 15:54:07 +0000 (18:54 +0300)]
Update of title page of documentation (overview)

- Copyright year is updated
- Links to 3rd-party libraries and their licenses are actualized
- Description and snapshot of iOS sample added
- Visual Studio 2017 is mentioned among supported compilers

7 years ago0028932: Add possibility to install Eigen along the OCCT
ski [Thu, 24 Aug 2017 10:55:52 +0000 (13:55 +0300)]
0028932: Add possibility to install Eigen along the OCCT

Added installation of Eigen.

7 years ago0025464: Visualization - provide package for Volume Rendering
vsv [Mon, 26 Jun 2017 13:40:15 +0000 (16:40 +0300)]
0025464: Visualization - provide package for Volume Rendering

7 years ago0028968: Incorrect offset for the faces with singularities
abv [Fri, 25 Aug 2017 11:10:02 +0000 (14:10 +0300)]
0028968: Incorrect offset for the faces with singularities

Simple offset algorithm (BRepOffset_MakeSimpleOffset) is improved to handle the case when bspline surface has imprecise singularity at one of sides (when side is degenerated but not exactly to one point).
In such case, the algorithm tries to collapse all poles of singular side of the surface to the same point; this allows avoiding flapping of normal due to small fluctuations of surface.

If face being offset contains degenerated edges, then check for singularity is done using position and tolerance of corresponding vertices.
In addition, each side is checked with some user-defined tolerance (by default Precision::Confusion()); this helps to process cases when no edge is located at that side or if such edge is not encoded as degenerated.
New parameter Tolerance is introduced for that in BRepOffset_MakeSimpleOffset class.

Tests added:
bugs modelg_7 bug28968 - on isolated faces as reported in the issue, mostly for visual check (absence of loops)
offset simple F01-05 - on original shells, checking tolerances of resulting shell

7 years agoIncrementing OCCT version up to 7.2.0
bugmaster [Tue, 29 Aug 2017 14:59:55 +0000 (17:59 +0300)]
Incrementing OCCT version up to 7.2.0

7 years ago0029067: Visualization, AIS_ColoredShape - visibility of sub-shapes is ignored by...
kgv [Mon, 28 Aug 2017 18:10:28 +0000 (21:10 +0300)]
0029067: Visualization, AIS_ColoredShape - visibility of sub-shapes is ignored by ComputeSelection()

7 years ago0029056: Configuration - It is not possible to install VTK products
ski [Mon, 28 Aug 2017 13:16:37 +0000 (16:16 +0300)]
0029056: Configuration - It is not possible to install VTK products

Added installation of vtk.

7 years ago0029057: Tests - unstable test case bugs/vis/bug5682
kgv [Sun, 27 Aug 2017 17:18:29 +0000 (20:18 +0300)]
0029057: Tests - unstable test case bugs/vis/bug5682

Test case has been corrected to reduce measurements error.

7 years ago0028977: FFmpeg libraries are not presented in the CMake configuration
ski [Wed, 23 Aug 2017 15:12:47 +0000 (18:12 +0300)]
0028977: FFmpeg libraries are not presented in the CMake configuration

Corrected search of FFmpeg libraries.

7 years ago0029015: Testdiff - possibility to visualize image differences by toggling - correction
abv [Tue, 29 Aug 2017 10:51:49 +0000 (13:51 +0300)]
0029015: Testdiff - possibility to visualize image differences by toggling - correction

Javascript code is corrected to not depend on values of URLs of images

7 years ago0028985: XCAF data structures for generic text annotations linked to GD&T annotations...
snn [Fri, 10 Feb 2017 12:48:36 +0000 (15:48 +0300)]
0028985: XCAF data structures for generic text annotations linked to GD&T annotations and saved views

1. A tool to annotate items in the hierarchical product structure was added. The tool is located under
   fixed label 0:1:9. It operates two basic entities: notes and annotations located under 0:1:9:1 and 0:1:9:2
   hives correspondingly. A note is an attribute derived from base class XCAFDoc_Note that is attached to a separate
   label under the notes hive. An annotated item is represented by XCAFDoc_AssemblyItemRef attribute
   attached to a separate label under the annotated items hive. Notes are linked to annotated items by means of
   XCAFDoc_GraphNode attribute, where notes play parent roles and annotated items - child roles.
2. XCAFDoc_AssemblyItemRef defines a weak reference to a label with optional attribute GUID or sub-shape index.
3. A capability to store note/annotation labels in XCAFDoc_ViewTool was added.
4. XDE User guide was updated

7 years ago0028388: Boolean common of simple face and solid results in empty compound
mkv [Tue, 29 Aug 2017 11:34:28 +0000 (14:34 +0300)]
0028388: Boolean common of simple face and solid results in empty compound

Problem is not reproduced on current master. Issue must be closed on 7.2.0.
Test case was added only

7 years ago0028478: Scope Names Are Swallowed in Message_ProgressSentry Constructors
abv [Fri, 18 Aug 2017 12:05:34 +0000 (15:05 +0300)]
0028478: Scope Names Are Swallowed in Message_ProgressSentry Constructors

Tests are added to control output and performance of progress indicator (bugs fclasses bug28478 and perf fclasses progress, respectively).

Implementation of class Draw_ProgressIndicator is improved to update indicator basing on achieved total progress (1% by default) instead of elapsed time since last update.

Method OSD_Chronometer::Restart() is fixed to actually reset the counter.

DRAW command readstl is improved to show progress indicator if configured (by command XProgress).

Description of class Message_ProgressIndicator is updated; code example is added in description of Message_ProgressSentry.

7 years ago0029004: DRAW - update help of chrono and dchrono commands
abv [Tue, 29 Aug 2017 03:59:28 +0000 (06:59 +0300)]
0029004: DRAW - update help of chrono and dchrono commands

Help of DRAW commands chrono and dchrono is updated according to changes made within #27691

7 years ago0029063: Configuration - improve paths in environment files
apn [Mon, 28 Aug 2017 11:17:45 +0000 (14:17 +0300)]
0029063: Configuration - improve paths in environment files

Change absolute paths to relative in OCCT environment files.
Move content of vcver.bat to env.bat.

7 years ago0029055: Visualization, Image_AlienPixMap - fallback using Wincodec
kgv [Fri, 25 Aug 2017 21:48:23 +0000 (00:48 +0300)]
0029055: Visualization, Image_AlienPixMap - fallback using Wincodec

Possibility to read and write images in BMP, PNG, JPEG formats without using FreeImage library is provided on Windows using system image library.

7 years ago0028995: UnifySameDomain produces invalid shape
emv [Fri, 18 Aug 2017 10:31:57 +0000 (13:31 +0300)]
0028995: UnifySameDomain produces invalid shape

Synchronization of the ShapeAnalysis_Edge behavior with the BRepCheck_Edge by adding check for 2d curves on planes.

Implementation of the BRep_Tool::CurveOnPlane method to avoid code duplication for making PCurve of the edge on planar face.

7 years ago0029058: Coding rules, OpenGl_Window - eliminate memory leak after XGetVisualInfo
kgv [Sun, 27 Aug 2017 18:53:16 +0000 (21:53 +0300)]
0029058: Coding rules, OpenGl_Window - eliminate memory leak after XGetVisualInfo

Minor memory leak occurring at creation of the view is eliminated.

7 years ago0028131: BRepOffset_MakeOffset can't create offset with a face which created by filli...
abv [Tue, 22 Aug 2017 12:05:00 +0000 (15:05 +0300)]
0028131: BRepOffset_MakeOffset can't create offset with a face which created by filling 3 bsplinecurve

Handling of degenerated points (with all derivatives zero) in GeomEvaluator_OffsetSurface is improved by iterative movement towards middle of the surface (extension of one-step approach implemented earlier in #28112).

7 years ago0028780: HLR with focus does not seem to work
abv [Fri, 25 Aug 2017 13:23:05 +0000 (16:23 +0300)]
0028780: HLR with focus does not seem to work

Method HLRBRep_Curve::D1() is corrected to apply transformation to a point according to current projection parameters

7 years ago0029048: Draw - avoid setting default paths to scripts and test data folders if set...
abv [Thu, 24 Aug 2017 12:13:43 +0000 (15:13 +0300)]
0029048: Draw - avoid setting default paths to scripts and test data folders if set externally

Avoid adding default paths to test scripts when DRAW is started if relevant variables (CSF_TestStriptsPath) are already defined in the environment.

7 years ago0029053: Configuration, CMake - fix env.bat for starting Draw Harness for MinGW build
kgv [Fri, 25 Aug 2017 14:57:15 +0000 (17:57 +0300)]
0029053: Configuration, CMake - fix env.bat for starting Draw Harness for MinGW build

7 years ago0029051: Visualization, TKOpenGl - wrong color of transparent dynamic highlight with...
kgv [Fri, 25 Aug 2017 12:49:40 +0000 (15:49 +0300)]
0029051: Visualization, TKOpenGl - wrong color of transparent dynamic highlight with OIT tuned ON

OpenGl_PrimitiveArray::Render() - removed obsolete code, which become redundant (and broken)
after moving rendering of transparent objects into OpenGl_LayerList::renderTransparent().

7 years ago0028195: Boolean common returns empty result for a solid where some surfaces of revol...
mkv [Fri, 25 Aug 2017 10:35:15 +0000 (13:35 +0300)]
0028195: Boolean common returns empty result for a solid where some surfaces of revolution touch the axis

Problem is not reproduced on current master. Issue must be closed on 7.2.0.
Test case was added only

7 years ago0029049: Visualization - restore removed class DsgPrs_DatumPrs
kgv [Fri, 25 Aug 2017 06:14:39 +0000 (09:14 +0300)]
0029049: Visualization - restore removed class DsgPrs_DatumPrs

7 years ago0029047: Upgrade guide -- some changes in OCCT 7.2.0 are not described
abv [Thu, 24 Aug 2017 12:04:14 +0000 (15:04 +0300)]
0029047: Upgrade guide -- some changes in OCCT 7.2.0 are not described

Upgrade Guide is updated to describe:
- Removal of typedefs to double in Quantity and V3d
- Removal of support of orientation in classes BRepTools_ReShape and ShapeBuild_ReShape
- Removal of AIS methods taking/returning Quantity_NameOfColor instead of Quantity_Color
- Removal of active texture state from OpenGl_Workspace

7 years ago0029025: TInspector include files are not installed to inc directory by CMake
nds [Thu, 24 Aug 2017 05:25:47 +0000 (08:25 +0300)]
0029025: TInspector include files are not installed to inc directory by CMake

TInspector headers are collected in 'inc/tools' directory.

Extending DRAW Commands;

Eliminating warnings;

Improve Export to ShapeView dialog;

Avoid crash with QML using;

7 years agoUpdate of tests database
apv [Thu, 24 Aug 2017 09:44:03 +0000 (12:44 +0300)]
Update of tests database

Test for 0027049: Make non-destructive mode be defined by default in Boolean operations
Test for 0027052: Test boolean gdml_private ZI5 failure
Test for 0027069: IGES parser does not recognize comments in Parameters section
Test for 0027090: Point is classified IN solid but actually it is OUT
Test for 0027170: Reading STEP files produces invalid shapes
Test for 0027186: IGES - reconsider creation of Undefined entity in case of failure
Test for 0027214: Duplicate of test cases
Test for 0027224: Incorrect result of boolean operation in boolean bcut_complex Q1 test case
Test for 0027227: Intersection curve is not continued to the surface boundary
Test for 0027246: ShapeFix_Shape destroys shape
Test for 0027251: Shape becomes invalid when exported to STEP and imported back
Test for 0027316: exception when XAddShape
Test for 0027378: BRepLib_MakeFace produces invalid faces on periodic surfaces in case the given parametrization does not match the default
Test for 0027390: Box and Ellipsoid shape boolean cut and common introduce invalid result.
Test for 0028119: Blend fails on fused identical but shifted tori
Test for 0028144: Step reader - regression in comparison of version OCCT654
Test for 0028151: Sewing faces results in a shell with very big tolerance
Test for 0027160: Weird results of the pipe algorithm
Test for 0027623: Cannot find intersection line between two trimmed planar surfaces
Test for 0027683: Inaccurate result by bopcut
Test for 0027687: Section between shells of hull and deck is not closed
Test for 0027711: Blend-on-blend corrupts the shape
Test for 0027784: Thickness fails on cylinder with draft
Test for 0027908: Exception during offset computation
Test for 0027909: Exception during offset computation
Test for 0027910: Sharing between edges was lost after offset operation
Test for 0027911: Exception during offset computation
Test for 0027912: Exception during offset computation
Test for 0027928: BOP common produces empty compound
Test for 0027948: Cut produces unexcpected shape
Test for 0027950: Result of intersection algorithm depends too much on surface trim bounds
Test for 0027701: Crash when export empty solid to STEP
Test for 0027722: STEP error for Ellipse revol shape

7 years ago0029015: Testdiff - possibility to visualize image differences by toggling
abv [Fri, 18 Aug 2017 08:00:24 +0000 (11:00 +0300)]
0029015: Testdiff - possibility to visualize image differences by toggling

Command testdiff is improved to make HTML elements in the report showing diff images interactive: when user clicks on a diff image by mouse, it triggers between the A and B images.
The diff image is shown back when the mouse cursor leaves the image.

7 years ago0028964: Draw - need to have command to apply ShapeFix_FixSmallFace tool
abv [Mon, 21 Aug 2017 10:19:46 +0000 (13:19 +0300)]
0028964: Draw - need to have command to apply ShapeFix_FixSmallFace tool

DRAW command fixsmallfaces is added to fix (remove) small faces in the shape.
Command OCC22586 is removed (replaced by fixsmallfaces).

Test bug28112_2 using that command is added for the two last shapes in issue #28112; test bug28112 is renamed to bug28112_1.
Test bug22586 is changed to use the new command.

7 years ago0028287: CMake install does not copy pdb files in RelWithDebInfo mode
ski [Mon, 21 Aug 2017 13:24:06 +0000 (16:24 +0300)]
0028287: CMake install does not copy pdb files in RelWithDebInfo mode

Installation of .pdb files was corrected.

7 years ago0027018: Documentation - blockquotes are incorrectly formatted in PDF
ysn [Mon, 21 Aug 2017 10:08:27 +0000 (13:08 +0300)]
0027018: Documentation - blockquotes are incorrectly formatted in PDF

Trailing space is removed after ">" to avoid breaking the quote block in PDF output.

A section about quotes are added in the documentation guide.

7 years ago0028332: Unstable tests in group gdt export
ika [Mon, 21 Aug 2017 12:22:39 +0000 (15:22 +0300)]
0028332: Unstable tests in group gdt export

Add initialization of variable GDTMode in STEP writer.

7 years ago0029031: Visualization - Prs3d_Drawer::SetShaderProgram() has no effect
kgv [Tue, 22 Aug 2017 07:23:41 +0000 (10:23 +0300)]
0029031: Visualization - Prs3d_Drawer::SetShaderProgram() has no effect

Prs3d_Drawer::SetShaderProgram() now takes into account HasOwn*** flags.

7 years ago0028913: UnifySameDomain crashes with error: "a shape is modified and removed simulta...
emv [Fri, 18 Aug 2017 13:00:07 +0000 (16:00 +0300)]
0028913: UnifySameDomain crashes with error: "a shape is modified and removed simultaneously"

Correct filling of the history of the modifications of the shapes in ShapeUpgrade_UnifySameDomain algorithm.

Test cases for the issue.

7 years ago0027936: [regression] BRepAlgoAPI_Common returns empty result for a solid and a face
apv [Wed, 23 Aug 2017 11:24:54 +0000 (14:24 +0300)]
0027936: [regression] BRepAlgoAPI_Common returns empty result for a solid and a face

Problem is not reproduced on current master. Issue must be closed on 7.2.0.
Test case was added only.

7 years ago0028999: Modify Qt Browser build option
nds [Tue, 15 Aug 2017 13:52:59 +0000 (16:52 +0300)]
0028999: Modify Qt Browser build option

'BUILD_Inspector' CMake option switches ON/OFF Inspector in compilation procedure (add additional dependency to Qt third party product)
'inspector.bat' starts sample to demonstrate possibilities of this tool.
Replacing TOOLS to INSPECTOR key for 'pload' command in DRAW cases due to this change in DrawPlugin.

7 years ago0028997: Documentation - Visual3d_Layer removed, but still in the documentation
kgv [Tue, 15 Aug 2017 18:07:55 +0000 (21:07 +0300)]
0028997: Documentation - Visual3d_Layer removed, but still in the documentation

The User Guide has been checked for presence of removed functionality.

7 years ago0029011: Draw Harness - simplify diffimage command syntax
kgv [Thu, 17 Aug 2017 15:18:05 +0000 (18:18 +0300)]
0029011: Draw Harness - simplify diffimage command syntax

Command diffimage now accepts the following syntax:
  diffimage imageFile1 imageFile2 [diffImageFile]
            [-toleranceOfColor {0..1}=0] [-blackWhite {on|off}=off] [-borderFilter {on|off}=off]
            [-display viewName prsName1 prsName2 prsNameDiff] [-exitOnClose]

Command vinit now accepts the following syntax:
  vinit [-name viewName] [-left leftPx] [-top topPx] [-width widthPx] [-height heightPx]
        [-exitOnClose] [-display displayName]

Compatibility with old syntax is also preserved.
diffimage now can display compared images in 3D viewer.
The new option -exitOnClose can be used to exit application when closing the 3D View.

7 years ago0029021: Coding Rules - eliminate GCC warnings in Qt sample
kgv [Sat, 19 Aug 2017 11:40:40 +0000 (14:40 +0300)]
0029021: Coding Rules - eliminate GCC warnings in Qt sample

7 years ago0029016: Configuration, genproj.tcl - add missing definition of CSF_dl
kgv [Fri, 18 Aug 2017 09:33:23 +0000 (12:33 +0300)]
0029016: Configuration, genproj.tcl - add missing definition of CSF_dl

7 years ago0028854: The documentation should state where handle reference counting happens
Benjamin Bihler [Mon, 19 Jun 2017 08:55:26 +0000 (11:55 +0300)]
0028854: The documentation should state where handle reference counting happens

The comment to class opencascade::handle<> in Standard_Handle.hxx now explains better the features differing it from std::shared_ptr<>.

7 years ago0027760: [regression] BRepAlgoAPI_Common returns empty result
apv [Fri, 18 Aug 2017 11:48:13 +0000 (14:48 +0300)]
0027760: [regression] BRepAlgoAPI_Common returns empty result

Problem is not reproduced on current master. Issue must be closed on 7.2.0.
Test case was added only.

7 years agoUpdate of tests database
apv [Thu, 17 Aug 2017 07:39:08 +0000 (10:39 +0300)]
Update of tests database

Test for 0025930: thickness of spherical cap is invalid
Test for 0025939: SIGSEGV in MakeThickSolid
Test for 0025940: MakeThickSolid creates C0 continuous edges
Test for 0026604: GeomFill_Pipe doesn't fit given bounds
Test for 0026655: ChFi3d_Builder algorithm fails to build fillets if some input edges connect with seam edges
Test for 0026697: BRepFeat_MakePrism returns empty compound
Test for 0026716: Mesher cannot create a mesh of brep model due to ShapeFix_Wire::FixShifted()
Test for 0026735: Adjacent perpendicular edges are detected as overlapped by DRAW command checkoverlap.
Test for 0026793: General Fuse algorithm produces incorrect result
Test for 0026795: Unable to perform General Fuse operation on the attached faces
Test for 0026842: bopsection result does not contain any edges.
Test for 0026882: Edge/Edge intersection algorithm produces incorrect result
Test for 0026883: Wrong result of Boolean Operation
Test for 0026889: Very poor mesh result from shape
Test for 0026928: Edges are meshed too coarsly
Test for 0026933: Section works unstably due to incorrect work of the method IsExistingPaveBlock
Test for 0026943: Wrong projection of helix on cylinder by ShapeConstruct_ProjectCurveOnSurface
Test for 0026957: Unify same domain operation is slow for multiple shells
Test for 0026978: Interactive selection is insensitive to swept shell
Test for 0027004: ShapeUpgrade_UnifySameDomain produces invalid result
Test for 0026280: Mechanism 'ShapeFix' is unable to heal a shape
Test for 0026282: Mechanism 'ShapeFix' has errors revealed by wire tool 'FixTails'
Test for 0026291: BRepMesh produces mesh with gap on the attached shape
Test for 0026382: BRepMesh produces internal nodes outside the face interior
Test for 0027453: Wrongly meshed surface
Test for 0027524: The command checkshape does not find the maximal deviation between curves representations
Test for 0026225: Wrong result of chamfer in case of coinciding bound of chamfer's surface with bound of a face
Test for 0026295: Sweep fails with BRepFill_ContactOnBorder
Test for 0026374: GeomFill_Profiler fails to unify BSplines if one has knot distance less than PConf
Test for 0026558: Failing to build isoline for offset surface
Test for 0026563: Boolean cut operation in new API multi-tool mode performs fuse instead of cut
Test for 0026568: Exception when creating pipe
Test for 0027419: Incorrect result of Edge/Face intersection
Test for 0027469: Regression vs 6.9.1: Wrong result of Edge/Face intersection
Test for 0027471: Wrong result of pipe
Test for 0027472: Wrong result of cut
Test for 0027614: Sewing returns result with too high tolerance
Test for 0026154: Visualization - v3d viewer grid disappears due to automatic z-fit
Test for 0026174: Loss of color after the second write of file (iges).

7 years ago0029010: Launch custom.bat in samples before calling general environment
apn [Thu, 17 Aug 2017 13:17:20 +0000 (16:17 +0300)]
0029010: Launch custom.bat in samples before calling general environment

Replace calling custom.bat and general env.bat in samples.

7 years ago0028631: Modeling Algorithms - Crash while building a 2D circle tangent to another...
nds [Fri, 26 May 2017 14:19:51 +0000 (17:19 +0300)]
0028631: Modeling Algorithms - Crash while building a 2D circle tangent to another circle and passing through its center

Code correction includes also:
- extending GccEnt to have GccEnt_Position conversion to string value and backward;
- new GeometryTest_DrawableQualifiedCurve2d DRAW object to wrap GccEnt_QualifiedCirc/GccEnt_QualifiedLin.
  It is a DrawTrSurf_Curve2d with GccEnt_Position visualized in orange color.
- qcircle/qline DRAW command to create instance of GeometryTest_DrawableQualifiedCurve2d
- circ2d3Tan DRAW command to wrap GccAna_Circ2d3Tan taking qcircle/qline/point arguments.

7 years ago0028527: Visualization, AIS_InteractiveContext - custom selection presentation is...
kgv [Thu, 17 Aug 2017 08:43:08 +0000 (11:43 +0300)]
0028527: Visualization, AIS_InteractiveContext - custom selection presentation is never removed from View

7 years ago0029000: Update documentation of Boolean operations according to the new Error/Warnin...
emv [Wed, 16 Aug 2017 07:30:22 +0000 (10:30 +0300)]
0029000: Update documentation of Boolean operations according to the new Error/Warning reporting system

The documentation of Boolean Component has been updated - calls to ErrorStatus() method have been replaced with calls to HasErrors() method.

7 years ago0029009: Configuration - provide a way to get visual dif of SVG images
abv [Thu, 17 Aug 2017 08:50:31 +0000 (11:50 +0300)]
0029009: Configuration - provide a way to get visual dif of SVG images

New helper script svgdiff.bat is added in adm folder.
It can be used for enabling visual diff for SVG images in TortouseGit; see Git guide for details.

7 years ago0028959: Configuration, genproj - provide warning on update of scripts in root folder...
abv [Sat, 29 Jul 2017 06:42:16 +0000 (09:42 +0300)]
0028959: Configuration, genproj - provide warning on update of scripts in root folder (msvc.bat etc.)

When updating files msvc.bat and draw.bat/sh in the root folder by copying template from adm/templates, procedure genproj will give a warning (unless the files are already the same); if the target file is newer, its copy is saved with additional extension .bak.

7 years ago0028972: A not useful message is printed on copying of data in OCAF
vro [Fri, 4 Aug 2017 10:42:42 +0000 (13:42 +0300)]
0028972: A not useful message is printed on copying of data in OCAF

7 years ago0027561: Since OCCT 7.0.0, exporting a curve to STL creates a file that results in...
abv [Tue, 15 Aug 2017 14:58:53 +0000 (17:58 +0300)]
0027561: Since OCCT 7.0.0, exporting a curve to STL creates a file that results in an endless loop when read

Add check for empty triangulation when writing STL file to report error instead of creation of empty file.

STL reader has been improved to properly handle case of empty or small files, and Ascii files without EOL at the end.

7 years ago0029007: Visualization, AIS_InteractiveContext - the method for accessing Detected...
kgv [Wed, 16 Aug 2017 17:08:04 +0000 (20:08 +0300)]
0029007: Visualization, AIS_InteractiveContext - the method for accessing Detected owners iterator is missing

Added new method AIS_InteractiveContext::DetectedCurrentOwner().
AIS_InteractiveContext header has been restructured (methods moved into groups)
and description has been cleaned up.

7 years ago0027381: Visualization - update description of method AIS_InteractiveContext::SetPixe...
kgv [Wed, 16 Aug 2017 09:58:46 +0000 (12:58 +0300)]
0027381: Visualization - update description of method AIS_InteractiveContext::SetPixelTolerance()

7 years ago0028249: Upgrade Guide - mention need to use option -std=c++0x when using GCC
abv [Wed, 16 Aug 2017 13:40:01 +0000 (16:40 +0300)]
0028249: Upgrade Guide - mention need to use option -std=c++0x when using GCC

7 years ago0028967: Boolean cut fails the first time, works the second time
mkv [Wed, 16 Aug 2017 13:55:19 +0000 (16:55 +0300)]
0028967: Boolean cut fails the first time, works the second time

7 years ago0028893: BOP cut produces result with artifacts consisting of tools parts
emv [Wed, 9 Aug 2017 06:13:18 +0000 (09:13 +0300)]
0028893: BOP cut produces result with artifacts consisting of tools parts

7 years ago0028323: Documentation - explain highlighting logic of AIS_InteractiveObject in the...
kgv [Wed, 16 Aug 2017 11:06:29 +0000 (14:06 +0300)]
0028323: Documentation - explain highlighting logic of AIS_InteractiveObject in the upgrade guide

7 years ago0028225: MFC sample on OCAF uses old-style definition of a Handle-class
abv [Tue, 15 Aug 2017 14:46:38 +0000 (17:46 +0300)]
0028225: MFC sample on OCAF uses old-style definition of a Handle-class

Obsolete approach to definition of OCCT RTTI in sample classes generated by WOK from CDL is replaced by usage of standard macros

7 years ago0028892: BOPAlgo_PaveFiller returns status "error: 11" in draw or raises exception...
emv [Fri, 11 Aug 2017 06:16:38 +0000 (09:16 +0300)]
0028892: BOPAlgo_PaveFiller returns status "error: 11" in draw or raises exception in app on the given shapes set

Boolean Operations algorithm - Added processing of the untouched edges (without edge set) in the UpdatePaveBlocks method.

IntCurvesFace_Intersector algorithm - Avoid calculation of the number of sample points on the surfaces with too small UV ranges.

7 years ago0027358: ShapeAnalysis_Curve::GetSamplePoints iteration logic isn't robust
razmyslovich [Mon, 12 Sep 2016 10:52:36 +0000 (12:52 +0200)]
0027358: ShapeAnalysis_Curve::GetSamplePoints iteration logic isn't robust

The iterating logic in ShapeAnalysis_Curve::GetSamplePoints() is made more robust: instead of iterative incrementing parameter by adding step, parameter at each point is calculated independently from index.
This avoids possible accumulation of numeric errors, and ensures that generated points are equally spaced and their quantity is respected in all cases.

7 years ago0028715: Invalid shape produced by reading of attached STEP file. Regression from...
skl [Mon, 31 Jul 2017 14:20:25 +0000 (17:20 +0300)]
0028715: Invalid shape produced by reading of attached STEP file. Regression from OCCT-6.9.1 to OCCT-7.0.0.

Corrections: to use fixed shape as result in the non-manifold mode was made.

Regression was due to using modified initial shape as result in the previous version OCCT. At present initial shape is not modified during ShapeProcessing. Therefore modification to use fixed result was made.

Additionally using of nonManifold flag is added to ShapeProcessing.

7 years ago0026516: Creating revolved shapes fails in some cases
apv [Mon, 14 Aug 2017 09:53:21 +0000 (12:53 +0300)]
0026516: Creating revolved shapes fails in some cases

7 years ago0026776: Bad result of section algorithm
mkv [Fri, 11 Aug 2017 12:54:31 +0000 (15:54 +0300)]
0026776: Bad result of section algorithm

7 years agoUpdate of tests database
apv [Wed, 9 Aug 2017 14:54:16 +0000 (17:54 +0300)]
Update of tests database

Test for 0023838: Standard_OutOfRange in Geom_OffsetSurface::LocalDN (called by BRepFill_PipeShell)
Test for 0023866: GccAna_Circ2d3Tan does not find a circle
Test for 0023925: BRepFeat_SplitShape produces invalid shape
Test for 0023942: Pipe algorithms unrobust to number rounding
Test for 0025385: steep increase in tolerance by intersection
Test for 0025395: SIGSEGV in BRepOffsetAPI_MakeThickSolid
Test for 0025458: can a sweep be used to create 1-fold tori (using a closed wire as path)
Test for 0025478: Fillets can not touch
Test for 0025481: Edge must not contain obsolete curve representations
Test for 0025515: Boolean operation become worse for unknown reason.
Test for 0025521: Fillet creates shell with bad orientation of SubShape
Test for 0025551: BRepMesh can produce internal nodes outside the face interior based on distorted BSpline surface
Test for 0025586: Poor mesh quality, or failure of meshing for closed extruded surfaces with holes
Test for 0025626: Loft of ellipses shows wrinkle near seam edge
Test for 0025628: BRepMesh fails to mesh face with open wire, considered as correct by checkshape
Test for 0025693: Wire of BSplines fails bopcheck
Test for 0025730: result of MakeThickSolid aborts the BOPCheck in Geom_OffsetSurface::SetD0
Test for 0025738: BRepMesh fails to produce correct mesh for the face
Test for 0025776: HLR returns intersecting edges in OutLineV of helical sweep
Test for 0025798: BRepFeat_SplitShape returns invalid result
Test for 0025817: crescent face is not meshed
Test for 0025827: BRepMesh does not synchronize parameters of glued vertices on small edges
Test for 0025837: Bad triangulation when IGES loaded in meters
Test for 0025852: Text to BRep algorithm produces bad faces for circled symbols
Test for 0025856: BRepOffsetAPI_ThruSections returns an invalid shape if one wire contains degenerated edges
Test for 0025879: result of blend fails the bopcheck
Test for 0025967: Shape Healing fails to correct a face with missing poles and pcurves
Test for 0026052: Missing pcurves are computed incorrectly on two connected faces laying on the same surface
Test for 0025061: BRepMesh should skip internal wires with self intersections to produce mesh for the shape anyway
Test for 0024490: Computed surface properties differ substantially depending on NaturalRestriction flag
Test for 0024568: Split shape produces an invalid result
Test for 0024692: fuseedge corruption of spherical edge
Test for 0024772: Intersection of cylinder and cone produces incorrect results
Test for 0024954: BRepBuilderAPI_MakeFace adds wire with aribitary orientation
Test for 0025104: Prism from BSpline curve can not be chamfered
Test for 0025206: Fillet creates edge with C0 continuity
Test for 0025979: fillet creates faces with non-closed wires
Test for 0025983: Fusion of sweep and its mirror invalid
Test for 0025994: Boolean fuse result in invalid result.
Test for 0026034: Result of revolution aborts the bopcheck if translated
Test for 0026077: nurbsconvert of psphere fails the bopargcheck
Test for 0025989: toridial surface gets damaged in STEP export

7 years ago0028983: Configuration - HAVE_NO_DLL causes compilation to fail on MSVC
Thomas Krijnen [Thu, 10 Aug 2017 08:01:40 +0000 (10:01 +0200)]
0028983: Configuration - HAVE_NO_DLL causes compilation to fail on MSVC

7 years ago0028982: 2D offset creates faulty result from wire
emv [Tue, 8 Aug 2017 08:20:57 +0000 (11:20 +0300)]
0028982: 2D offset creates faulty result from wire

Protection of the Edge/Edge intersection algorithm (IntTools_EdgeEdge) from incomplete type conversion due to presence of the Trimmed curves by using Adaptors for getting typed curves instead of direct casting.

Test case for the issue.