occt.git
8 years agoFinal updates before release
bugmaster [Thu, 24 Dec 2015 14:33:34 +0000 (17:33 +0300)]
Final updates before release

- Update of mfc samples
- Adjustment of test cases
- Update of CSharp sample (lost button added)
- Corrected paths to data files in 07_Triangulation mfc sample
- Update of overview (Requirements section)
- Update of upgrade guide (changes in modeling algorithms)

8 years ago0026961: Recover possibility to read files in old persistence format -- preparation
myn [Wed, 9 Dec 2015 17:27:36 +0000 (20:27 +0300)]
0026961: Recover possibility to read files in old persistence format -- preparation

Added basic support for possibility to read filed in old persistent format.
Toolkits TKStd, TKStdL, TKShape added to provide necessary tools (to be done).
Obsolete interfaces are removed from classes in PCDM and Storage.

8 years ago0026354: Invalid result of General Fuse on wire and face
apv [Wed, 23 Dec 2015 13:21:22 +0000 (16:21 +0300)]
0026354: Invalid result of General Fuse on wire and face

Test case for issue #26354

8 years ago0026580: BRepProj_Projection does not provide any results
apv [Wed, 23 Dec 2015 14:20:58 +0000 (17:20 +0300)]
0026580: BRepProj_Projection does not provide any results

Test cases for issue #26580

8 years ago0026535: Boolean Cut does not work on shell and solids
apv [Wed, 23 Dec 2015 14:59:45 +0000 (17:59 +0300)]
0026535: Boolean Cut does not work on shell and solids

Test case for issue #26535

8 years ago0027029: Possible regression in test de iges_1 L6 because of fix for issue 26837
nbv [Wed, 23 Dec 2015 14:43:19 +0000 (17:43 +0300)]
0027029: Possible regression in test de iges_1 L6 because of fix for issue 26837

In BRepLib::SameRange, allow exceeding curve range for periodic curves.

Test cases returned to the state before fix for issue #26837.

8 years ago0026837: SameParameter algorithm throws an exception
mkv [Tue, 22 Dec 2015 14:55:54 +0000 (17:55 +0300)]
0026837: SameParameter algorithm throws an exception
Correction of test cases for issue CR26837

8 years agoIncrementing OCCT version up to 7.0.0 beta
bugmaster [Wed, 23 Dec 2015 10:40:41 +0000 (13:40 +0300)]
Incrementing OCCT version up to 7.0.0 beta

8 years ago0027026: Modeling -- Improve AppCont_LeastSquare::AppCont_LeastSquare::FixSingleBorde...
abv [Mon, 21 Dec 2015 15:46:58 +0000 (18:46 +0300)]
0027026: Modeling -- Improve AppCont_LeastSquare::AppCont_LeastSquare::FixSingleBorderPoint()

Update of test-cases according to the new behavior

8 years ago0026960: Visualization, TKOpenGl - update transformation of dynamically highlighted...
vpa [Fri, 18 Dec 2015 18:29:13 +0000 (21:29 +0300)]
0026960: Visualization, TKOpenGl - update transformation of dynamically highlighted presentation

- added method UpdateHighlightTrsf for immediate update of highlight presentation's transformation;
- interfaces for immediate transformation update of corresponding presentations were added to entity owner classes;
- test case for issue #26960

8 years ago0026619: Tolerances of operands are modified using bop
msv [Wed, 21 Oct 2015 09:36:03 +0000 (12:36 +0300)]
0026619: Tolerances of operands are modified using bop

0026796: The result of General Fuse operation is self-intersecting shape

The fix forces creation of new sub-shapes (vertex, edge) when the tolerance of some sub-shape of an argument is to be increased.

This new behavior is turned off by default. It can be turned on using two ways:
1) Setting 'locking' flag of the arguments.
2) Calling the method SetNonDestructive(Standard_True) of the API classes.

Various bug fixes in the algorithm:
- Compute correct tolerance values for intersections of type Line/Line, Line/Plane, Plane/Plane.
- In case of Line/Plane intersection check if line's vertices lie on the plane.
- Do not allow decreasing of the tolerance value of the Line/Line intersection vertex.
- In IntTools_EdgeEdge, call the method FindParameters with proper 3D tolerance of the curve.
- Force making copy of a degenerated edge if its vertex is touched but no 2D intersection with other curves is found.
- Remove pave blocks both ends of which became referring to the same vertex after vertices substitution.
- Avoid exception in IntTools_Context::IsVertexOnLine if Extrema is not done.
- Reduce tolerance of vertex/edge using actual distances to interfered shapes if it was increased due to line/line, line/plane, or plane/plane small intersection angle.
- Update tolerance of edges to reach all representations in a common block.
- In V-E intersections, check if a vertex hits beyond shrunk range, in such case create V-V interference.
- Do not put a section edge to the result if it becomes to be a micro edge after updating its vertex.
- Correctly make vertices same-domain during the work of MakeBlocks.
- Decrease shrunk range at least on a Precision::Confusion() in addition to vertex tolerance.
- Add Confusion to bounding boxes of new shapes in DS
- Add tolerance Precision::Confusion() to compare distances of touching cases to fix regressions.

TODO marks have been removed from (or modified in) the following test cases (Improvements):
boolean bsection M3 N2 R2
boolean gdml_private B6 C2 C6 G7 I6 F6 J1 J4 M7 N1 N8 N9 O3 O4 O6 O8 O9 P1 P2 P5 Q1 Q3 Q5 S9 T2 U4 U5 U9 ZB5 ZB6 ZC1 ZC5 ZD3 ZD6 ZD7 ZH2 ZH5 ZI2 ZI5 ZI7 ZI9 ZJ3 ZJ4 ZJ7 F8 I6 G1
boolean volumemaker A5 A6 B3 B4 B7 B9 D3 D4 D7 F1
boolean bopcut_2d D5
bugs modalg_5 bug25043
bugs modalg_2 bug472_1 bug472_2 bug472_3

Test cases updated because they are still bad but can be accepted as non-regression:
boolean volumemaker C4 A3 A7 E6
bugs modalg_1 bug10232
boolean bsection N2

Put new TODO in the scripts:
bugs modalg_5 bug25232_9
bugs modalg_6 bug26619
bugs modalg_1 buc60462_2
bugs modalg_4 bug772

For the following tests the result in fix became better, so take fix result as the reference:
bugs modalg_5 bug24628
bugs modalg_6 bug26954_3
boolean volumemaker A4 B5 B6 C3 C8 D2 D5 F2
bugs modalg_2 bug472_2
bugs modalg_1 buc60776_1

- Add the method SetNonDestructive to API classes of user level

8 years ago0027031: Samples - fix compilation issues in java/jniviewer sample
kgv [Tue, 22 Dec 2015 15:04:29 +0000 (18:04 +0300)]
0027031: Samples - fix compilation issues in java/jniviewer sample

Add -std=c++11 compiler flag to Android.mk.
OcctJni_Viewer - drop removed arguments within V3d_View::SetWindow() usage.
OcctJni_Window - add missing NativeFBConfig() method declared in the interface.

8 years ago0026837: SameParameter algorithm throws an exception
ifv [Tue, 17 Nov 2015 07:53:51 +0000 (10:53 +0300)]
0026837: SameParameter algorithm throws an exception

Test case for issue CR26837

8 years ago0026433: AIS_Dimension may attempt to modify the state of default Drawer shading...
duv [Tue, 14 Jul 2015 14:42:27 +0000 (17:42 +0300)]
0026433: AIS_Dimension may attempt to modify the state of default Drawer shading aspect
- Added checks to allow modification of only own aspects in AIS_Dimension::DrawText()

8 years ago0024514: Unclear guidelines to report issues in Mantis
abv [Tue, 22 Dec 2015 10:58:36 +0000 (13:58 +0300)]
0024514: Unclear guidelines to report issues in Mantis

Contribution workflow document is revised and extended to eliminate inconsistencies and describe the process in more details:

- Meaning of issue fields in Mantis (Category, Severity, Profile, Project and Target Version, etc.) is described in more details
- Additional rules are defined and examples given for defining Summary and Description, and writing commit messages
- Requirements for testing, creation of test case, update of user documentation, etc. when resolving an issue, are described
- Additional elements of the workflow (patch sumbission, rebasing branches, use of feedback status, issue relationships) are described

Some refinement in other guides; OCC logo updated for better quality.

8 years ago0027023: Documentation -- cross-references are hardly noticeable in PDF
abv [Mon, 21 Dec 2015 10:05:29 +0000 (13:05 +0300)]
0027023: Documentation -- cross-references are hardly noticeable in PDF

Doxygen option PDF_HYPERLINKS is set to NO to enforce generation of cross-references as explicit page numbers in PDF manuals

8 years ago0027020: Documentation -- proof-read upgrade guide
ysn [Tue, 3 Nov 2015 15:11:29 +0000 (18:11 +0300)]
0027020: Documentation -- proof-read upgrade guide

Developer guide update.md thoroughly checked and formatted.

8 years ago0026425: Update of OCCT contribution workflow
ysn [Thu, 22 Oct 2015 07:08:41 +0000 (10:08 +0300)]
0026425: Update of OCCT contribution workflow

Requirements to the release documentation described in more details.
Added some suggestions concerning the workflow.
Workflow rewritten according to the remarks.

8 years ago0026992: Use Doxygen tag @ref for cross-references in documentation
ysn [Fri, 18 Dec 2015 12:33:23 +0000 (15:33 +0300)]
0026992: Use Doxygen tag @ref for cross-references in documentation

href have been replaced by @ref tags except for the links to web-pages and other documents where @ref tags do not work either.

8 years ago0026964: Merge OCAF white-papers into OCAF user's guide
ysn [Tue, 8 Dec 2015 10:08:37 +0000 (13:08 +0300)]
0026964: Merge OCAF white-papers into OCAF user's guide

The text of white papers has been rearranged as follows:

OCAF white paper:
  Purpose of OCAF
  Overview of the architecture
  A look inside OCAF
- merged with the Introduction chapter

  Getting Started
  An example of OCAF usage
- added in Samples chapter

  The Data Framework
- merged with Data Framework Services chapter

  Persistent Data Storage
- added as a separate chapter

OCAF function mechanism white paper:
- added as a separate Example of Function Mechanism Usage chapter

Distribution of data through OCAF tree white paper:
- added as "The choice between standard and custom attributes" paragraph in Standard Attributes chapter.

8 years ago0027000: Invalid result of ShapeUpgrade_UnifySameDomain
akz [Fri, 18 Dec 2015 15:50:35 +0000 (18:50 +0300)]
0027000: Invalid result of ShapeUpgrade_UnifySameDomain

Add two test scripts to bugs/heal grid with involved in bug shapes

8 years ago0027025: Configuration, CMake - do not get properties from non-VTK targets
ibs [Mon, 21 Dec 2015 15:18:41 +0000 (18:18 +0300)]
0027025: Configuration, CMake - do not get properties from non-VTK targets

8 years ago0027022: Configuration, CMake - rename ungrouped variables to include them to the...
ibs [Mon, 14 Dec 2015 09:42:05 +0000 (12:42 +0300)]
0027022: Configuration, CMake - rename ungrouped variables to include them to the existing groups

APPLY_OCCT_PATCH_DIR renamed with BUILD_PATCH
OCCT_ALGO_EXTENDED_OUTPUT renamed with BUILD_WITH_DEBUG
REBUILD_PLATFORM_DEPENDENT_CODE renamed with BUILD_YACCLEX

3RDPARTY_DOXYGEN_DOT_EXECUTABLE renamed with 3RDPARTY_DOT_EXECUTABLE

8 years ago0026993: Configuration, CMake - use the abstraction level of VTK instead CSF_VTK...
ibs [Mon, 14 Dec 2015 09:42:05 +0000 (12:42 +0300)]
0026993: Configuration, CMake - use the abstraction level of VTK instead CSF_VTK for their libraries

CSF_VTK removed from CMake meta-projects (this variable is left in EXTERNLIB because it is used by genproj.tcl)
USE_VTK shown if toolkits using VTK involved in the solution
VTK_DIR removed from the advanced variables

Warning messages 'Warning. .../a.hxx~ is not involved into .../FILES' renamed with 'Warning: File .../a.hxx~ is not listed in .../FILES'

8 years ago0026878: CMake - encode properly version of OCCT in Windows binaries
ibs [Mon, 21 Dec 2015 13:57:39 +0000 (16:57 +0300)]
0026878: CMake - encode properly version of OCCT in Windows binaries

.rc file has been added to each toolkit project for msvc

8 years ago0027010: Wrong classification of the point relatively the solid
ifv [Thu, 17 Dec 2015 11:30:08 +0000 (14:30 +0300)]
0027010: Wrong classification of the point relatively the solid

Algorithm of curve-face intersection was improved in order to take in account edge tolerance zones for more precise classification of state of intersection point.

Test case for issue CR27010

8 years ago0026762: Static parameter "read.scale.unit" is not used
abv [Fri, 18 Dec 2015 12:14:39 +0000 (15:14 +0300)]
0026762: Static parameter "read.scale.unit" is not used

Parameter "read.scale.unit" is removed from sources and docs

8 years ago0025338: MFC standard samples: 3D selection rectangle blinking
aba [Fri, 18 Dec 2015 07:17:18 +0000 (10:17 +0300)]
0025338: MFC standard samples: 3D selection rectangle blinking

- Added new interactive object AIS_RubberBand to draw rubber rectangle or polygon
- Added using of AIS_RubberBand in DRAW view for rectangular selection
- Added using of AIS_RubberBand in MFC samples for rectangular selection

8 years ago0027016: Restore global type descriptors for old compilers
abv [Sat, 19 Dec 2015 14:55:41 +0000 (17:55 +0300)]
0027016: Restore global type descriptors for old compilers

Global type descriptors are restored for VC++ 10 - 12 and GCC before 4.3.

Checks of compiler support of C++ features are corrected for GCC, ICC, and CLang in Standard_Handle.hxx

8 years ago0026947: Data exchange can not be compiled without visualization anyomre
gka [Fri, 18 Dec 2015 11:23:26 +0000 (14:23 +0300)]
0026947: Data exchange can not be compiled without visualization anyomre

Dependence between STEP translator and visualization occurred due to addition class STEPConstruct_GDTProperty using enumeration from package XCAFDimTolObject.
In order to avoid this dependence class STEPConstruct_GDTProperty was moved in package STEPCAFControl and was renamed to STEPCAFControl_GDTProperty.

8 years ago0026951: Incorrect conversion of miles into millimeters during export to STEP
abv [Fri, 18 Dec 2015 12:03:35 +0000 (15:03 +0300)]
0026951: Incorrect conversion of miles into millimeters during export to STEP

Coefficient for conversion of miles to mm is corrected in UnitsMethods::GetLengthFactorValue() to be 1609344.

In UnitsAPI/Units.dat, value of inch is corrected to be exactly 25.4 mm (it was 25.40001969); definition of nautical mile corrected to be exactly 1852 m.
Test bugs fclasses bug26951 is added to check definition of mm and miles.

DRAW command "unit" is corrected to put its output to Tcl instead of cout.

8 years agoAdding checks in test cases
bugmaster [Sun, 20 Dec 2015 11:49:14 +0000 (14:49 +0300)]
Adding checks in test cases

8 years agoCorrection of test case
bugmaster [Fri, 18 Dec 2015 08:31:05 +0000 (11:31 +0300)]
Correction of test case

8 years agoEliminate compiler warnings on VC++ 14 and CLang.
abv [Fri, 18 Dec 2015 04:00:44 +0000 (07:00 +0300)]
Eliminate compiler warnings on VC++ 14 and CLang.
Remove unused stuff from OSD_WNT.cxx.

8 years ago0026908: Visualization, TKOpenGl - eliminate -Wunused-parameter compiler warnings...
isk [Tue, 15 Dec 2015 07:58:58 +0000 (10:58 +0300)]
0026908: Visualization, TKOpenGl - eliminate -Wunused-parameter compiler warnings for Android target

Support TBO on OpenGL ES 3.2+

8 years ago0026973: Visualization - selection of entities hidden by clipping planes is broken
vpa [Wed, 16 Dec 2015 09:25:03 +0000 (12:25 +0300)]
0026973: Visualization - selection of entities hidden by clipping planes is broken

- misprint in distance calculation in SelectMgr_RectangularFrustum::IsClipped is corrected;
- selecting volume manager in clipping check in SelectMgr_ViewerSelector::checkOverlap was replaced ;
- added view-defined clipping planes check to SelectMgr_RectangularFrustum;
- test case for issue #26973.

8 years ago0026229: Add the possibility in OCAF to open/save a document from/to a stream object
ibs [Fri, 27 Nov 2015 10:03:25 +0000 (13:03 +0300)]
0026229: Add the possibility in OCAF to open/save a document from/to a stream object

TDocStd_Application class extended to open/save a document of XmlOcaf and BinOcaf format
from/to standard SEEKABLE stream object which should support SEEK functionality.

Open and SaveAs DRAW commands got new additional argument "-stream" to turn on using of stream functionality.

The main changes for BinOcaf format applied in:
FSD_BinaryFile class (static method using standard stream added)
BinLDrivers_DocumentRetrievalDriver and BinLDrivers_DocumentStorageDriver classes use standard stream object as an argument

The main changes for XmlOcaf format applied in:
LDOMParser and LDOM_XmlWriter classes  use standard stream object as an argument

Unused class FSD_Archive and its siblings removed from MFC samples.

8 years ago0026576: Wrong result obtained by intersection algorithm.
nbv [Tue, 15 Dec 2015 13:24:31 +0000 (16:24 +0300)]
0026576: Wrong result obtained by intersection algorithm.

1. Algorithm of Restriction line decomposition has been created.
2. Algorithm of check of coincidences between Walking and Restriction line has been improved in new function IsCoincide(...) (which replaces IsIn2DBox(...)).
3. Some useful methods have been added in IntPatch_PointLine (and inherited) classes.

Test cases for this issue have been created.

8 years ago0024595: STEP import missing surfaces
gka [Fri, 11 Dec 2015 08:01:27 +0000 (11:01 +0300)]
0024595: STEP import missing surfaces

Modification to create natural bounds for face based on the spherical and Bspline surface and having only one bound represented by Vertex loop was made.
 According to the specification of ISO-10303 part 42:
    "If the face has only one bound and this is of type vertex_loop, then the interior of the face is the domain of the face_surface.face_geometry. In such a case the underlying surface shall be closed (e.g. a spherical_surface.)"
    - natural bounds are applied only in case if VertexLoop is only the one
      defined face bound.

Update of test-cases according to the new behavior

Test-case for issue #24595

8 years ago0026888: Crash in Java ImportExport sample on shape deleting
ski [Fri, 11 Dec 2015 12:29:23 +0000 (15:29 +0300)]
0026888: Crash in Java ImportExport sample on shape deleting

Corrected behaviour of 3d viewer after shape deleting in qt samples.
Corrected behaviour of toolbar buttons after shape deleting in csharp samples.

8 years ago0016472: Improve environment scripts for samples
ski [Tue, 27 Oct 2015 09:51:21 +0000 (12:51 +0300)]
0016472: Improve environment scripts for samples

Output directory for binaries of CSharp samples was corrected.
Common run.bat was created for CSharp samples.
Behaviour of run.bat file from mfc samples was extended.

Recovered separate run_*.bat files for each sample in CSharp sample.

8 years ago0026212: There are some problems with location of text and images on pages
ysn [Wed, 2 Dec 2015 14:55:00 +0000 (17:55 +0300)]
0026212: There are some problems with location of text and images on pages

Fixes to improve layout of  images and formula in generated PDF documentation.

8 years ago0026959: Visualization - cannot select edge of the shape
vpa [Fri, 11 Dec 2015 08:35:59 +0000 (11:35 +0300)]
0026959: Visualization - cannot select edge of the shape

- polygonal representation of the edge is used for sensitive entity computation regardless of requested deflection;
- test case for issue #26959

Adjusting test case

8 years ago0026841: Boolean operation "bsection" produce invalid result on the attached cases
nbv [Fri, 11 Dec 2015 14:53:43 +0000 (17:53 +0300)]
0026841: Boolean operation "bsection" produce invalid result on the attached cases

1. Intersection curve was not bounded by faces domain. It was the reason of big edge tolerance. This problem has been fixed.
2. Interface bopcurves DRAW-command has been changed in order to make possible to reproduce intersection problem.

Creation of test case for this issue.

8 years ago0026708: Fix shape did not fix attached shape. Seam edge was not added to the attache...
gka [Wed, 9 Dec 2015 08:00:13 +0000 (11:00 +0300)]
0026708: Fix shape did not fix attached shape. Seam edge was not added to the attached periodic face.

Added taking into account crossing seam edge during collection of the wires in the ShapeFix_ComposeShell.cxx
Test script for bug 0026708.

8 years ago0026995: Visualization, TKXCAF - do not reset custom material within XCAFPrs_AISObjec...
kgv [Tue, 15 Dec 2015 09:14:41 +0000 (12:14 +0300)]
0026995: Visualization, TKXCAF - do not reset custom material within XCAFPrs_AISObject::Compute()

Assign default material in class constructor instead.

8 years ago0023465: Weird InsertBefore, InsertAfter and Remove methods in TDataStd lists
vro [Wed, 9 Dec 2015 07:18:28 +0000 (10:18 +0300)]
0023465: Weird InsertBefore, InsertAfter and Remove methods in TDataStd lists

8 years ago0026988: Fresh compiler warnings (VC++ 14, GCC 5.2.1, CLang 3.6.2)
abv [Sun, 13 Dec 2015 10:21:54 +0000 (13:21 +0300)]
0026988: Fresh compiler warnings (VC++ 14, GCC 5.2.1, CLang 3.6.2)

Compiler warnings eliminated:

- VC++: potential use of uninitialized variable
- GCC: potential use of uninitialized variable [-Wmaybe-uninitialized], redundant const on return value [-Wignored-qualifiers]
- CLang: missing override specifier on overloaded virtual function [-Winconsistent-missing-override], function call within typeid() [-Wpotentially-evaluated-expression]

8 years ago0026551: Optimization of initialization of OCCT RTTI
abv [Sat, 12 Dec 2015 16:07:35 +0000 (19:07 +0300)]
0026551: Optimization of initialization of OCCT RTTI

Global instances of type descriptors are eliminated as unnecessary

8 years ago0026913: Vulnerable mechanism in Standard_Type leads to assert
Roman Lygin [Sun, 22 Nov 2015 10:54:39 +0000 (14:54 +0400)]
0026913: Vulnerable mechanism in Standard_Type leads to assert

8 years ago0026945: Visualization - selection does not work after closing one of local contexts...
vpa [Fri, 11 Dec 2015 17:04:19 +0000 (20:04 +0300)]
0026945: Visualization - selection does not work after closing one of local contexts in stack

- added method to restore selection of local context;
- activated standard modes are added to local status now;
- test case for issue #26945

8 years ago0026984: Draw Harness, ViewerTest - preserve local transformation of presentation...
isk [Fri, 11 Dec 2015 16:29:09 +0000 (19:29 +0300)]
0026984: Draw Harness, ViewerTest - preserve local transformation of presentation within vtexture command

8 years ago0026967: BRepFill_OffsetWire should not copy plane if Alt == 0.0
msv [Tue, 8 Dec 2015 13:01:26 +0000 (16:01 +0300)]
0026967: BRepFill_OffsetWire should not copy plane if Alt == 0.0

In the class BRepFill_OffsetWire the base plane is not copied anymore if altitude parameter is equal to zero.

8 years ago0023666: Wrong section curve between attached faces
mkv [Thu, 10 Dec 2015 12:24:35 +0000 (15:24 +0300)]
0023666: Wrong section curve between attached faces

Test case for issue CR23666

Small correction of test case in accordance with changes of issue 25945

8 years ago0026523: Wrong result of section algorithm
mkv [Thu, 10 Dec 2015 13:16:55 +0000 (16:16 +0300)]
0026523: Wrong result of section algorithm

Small correction of test case in accordance with changes of issue 25945

8 years ago0026892: Visualization, TKOpenGl - support 3D textures within OpenGl_Texture
isk [Wed, 25 Nov 2015 08:35:38 +0000 (11:35 +0300)]
0026892: Visualization, TKOpenGl - support 3D textures within OpenGl_Texture
Add a new arbTexFloat extension in OpenGl_Context.
Add a new prototype glTexImage in OpenGl_GlFunctions.
Push error message if glTexImage3D is unavailable.

8 years ago0026975: Visualization, TKOpenGl - handle triangle strips correctly within Ray-Tracin...
isk [Thu, 10 Dec 2015 11:18:38 +0000 (14:18 +0300)]
0026975: Visualization, TKOpenGl - handle triangle strips correctly within Ray-Tracing core

8 years ago0025342: [Regression] BRepAlgoAPI_Section returns wrong number of edges
mkv [Thu, 10 Dec 2015 12:04:01 +0000 (15:04 +0300)]
0025342: [Regression] BRepAlgoAPI_Section returns wrong number of edges
Test case for issue CR25342

8 years ago0026334: BRepOffsetAPI_MakePipeShell returns the wrong shape
mkv [Thu, 10 Dec 2015 12:53:28 +0000 (15:53 +0300)]
0026334: BRepOffsetAPI_MakePipeShell returns the wrong shape

8 years ago0026188: Incorrect PCurve creation
mkv [Thu, 10 Dec 2015 12:39:54 +0000 (15:39 +0300)]
0026188: Incorrect PCurve creation
Test case for issue CR26188

8 years ago0026327: Performance degradation from version 6.8.0 on Boolean operations
mkv [Thu, 10 Dec 2015 12:46:29 +0000 (15:46 +0300)]
0026327: Performance degradation from version 6.8.0 on Boolean operations
Test case for issue CR26327

8 years ago0026896: Wrong result of bsection algorithm
nbv [Tue, 8 Dec 2015 12:46:26 +0000 (15:46 +0300)]
0026896: Wrong result of bsection algorithm

Creation test cases for this issue

Small correction of test cases

8 years ago0026848: Result of BO depends on arguments order
nbv [Tue, 8 Dec 2015 10:52:30 +0000 (13:52 +0300)]
0026848: Result of BO depends on arguments order

Correction test case for this issue

Test cases for CR26848

8 years ago0026427: Draft angle algorithm produces wrong shape
mkv [Thu, 10 Dec 2015 12:32:33 +0000 (15:32 +0300)]
0026427: Draft angle algorithm produces wrong shape
Test case for issue CR26427

8 years agoModification of test cases in accordance with changes of issue 25945
ski [Fri, 11 Dec 2015 08:35:18 +0000 (11:35 +0300)]
Modification of test cases in accordance with changes of issue 25945

8 years ago0026970: Update MSVC visualizers to support 7.0 handles and something more
msv [Wed, 9 Dec 2015 07:09:35 +0000 (10:09 +0300)]
0026970: Update MSVC visualizers to support 7.0 handles and something more

Changes:
- make shorter visualization of handles: change word 'count' to 'cnt'
- add visualization of hex value of entity in handles
- add visualization of classes:
opencascade::handle<*>
NCollection_Sequence<*>
TColStd_Array1OfInteger
TColStd_Array1OfReal
TColStd_Array2OfInteger
TColStd_ListOfInteger
TColStd_ListOfReal
BRep_ListOfCurveRepresentation
TopoDS_Shape
TopoDS_TShape
BOPDS_Pave
BOPDS_PaveBlock

8 years ago0026926: Small mistake in the exceptions part of Foundation Classes User's Guide
ysn [Wed, 9 Dec 2015 11:55:16 +0000 (14:55 +0300)]
0026926: Small mistake in the exceptions part of Foundation Classes User's Guide

A minor clarification

8 years ago0025945: Make stable checking of shape global properties in tests
ski [Tue, 8 Dec 2015 10:04:06 +0000 (13:04 +0300)]
0025945: Make stable checking of shape global properties in tests

- Added function checkprops, set default tolerance parameter to 1.0e-4
- Using "area" instead of "square".
- Options "-equal\notequal" isn't used together with "-s" in blend and offset test cases.
- Correct regressions/differences/improvements and CPU problem (set props tolerance to 0.1)
- Corrected test cases to use checkprops proc.
- Correct image difference
- Updated TODOs in test cases.
- Updated test cases to get correct images of result shape

8 years ago0024417: BRepAlgoAPI_Section fails on attached shapes
nbv [Tue, 8 Dec 2015 14:25:50 +0000 (17:25 +0300)]
0024417: BRepAlgoAPI_Section fails on attached shapes

Creation test case for this issue

8 years ago0026955: Invalid result of General Fuse operation
emv [Tue, 8 Dec 2015 15:05:07 +0000 (18:05 +0300)]
0026955: Invalid result of General Fuse operation

Running Solid Classifier algorithm with correct tolerance for point.

8 years ago0026290: It is neccessary to separate visualization part from TKCAF
szy [Tue, 1 Dec 2015 15:26:55 +0000 (18:26 +0300)]
0026290: It is neccessary to separate visualization part from TKCAF

- Package TPrsStd is moved into new toolkit TKVCAF. This is the only toolkit in OCAF that depends on visualization libraries.

- All persistent data stored in TPrsStd_AISPresentation attribute are moved to new attribute TDataXtd_Presentation, which is maintained automatically on the same label as TPrsStd_AISPresentation.
All parameters used by TPrsStd_AISPresentation are stored in corresponding TDataXtd_Presentation attribute.

- TPrsStd_AISPresentation is not stored in file any more; when OCAF document is loaded from a file, these attributes are created at all labels where TDataXtd_Presentation attribute is located, by TPrsStd_AISViewer::New().

- File src/StdResources/MigrationSheet.txt necessary for reading files written by previous versions of OCCT (lost in one of previous integrations) is restored and updated as necessary to handle this change (defines replacement of TPrsStd_AISPresentation by TDataXtd_Presentation). Environment variable CSF_MIGRATION_TYPES should be defined, pointing to this file.

- Packages BinMPrsStd and XmlMPrsStd are removed; their drivers are moved into BinMDataXtd and XmlMDataXtd respectively.

- Version numbers of BinOCAF and XmlOCAF formats are increased, new files cannot be read by previous versions of OCCT

- New tests added

- Adding new TKVCAF toolkit in sample projects

- Restore IsDisplayed(false) in TPrsStd_AISPresentation::Erase()

8 years ago0026971: Test cases for Set-45
emv [Wed, 9 Dec 2015 07:43:39 +0000 (10:43 +0300)]
0026971: Test cases for Set-45

8 years ago0026954: Test cases for Set-44
emv [Fri, 4 Dec 2015 09:34:24 +0000 (12:34 +0300)]
0026954: Test cases for Set-44

The cases for the customer's set Set-44.

8 years ago0026952: Test cases for Set-41
emv [Fri, 4 Dec 2015 08:46:37 +0000 (11:46 +0300)]
0026952: Test cases for Set-41

The cases for the customer's set Set-41.

8 years ago0026953: Test cases for Set-43
emv [Fri, 4 Dec 2015 09:15:23 +0000 (12:15 +0300)]
0026953: Test cases for Set-43

The cases for the customer's set Set-43.

8 years ago0026949: Geom(2d)Adaptor_Curve/Surface should not do down casts in evaluation
Istvan Csanady [Thu, 3 Dec 2015 16:13:08 +0000 (17:13 +0100)]
0026949: Geom(2d)Adaptor_Curve/Surface should not do down casts in evaluation

Prevent downcasting in curve evaluation in GeomAdaptor classes

8 years ago0026936: Drawbacks of inlining in new type system in OCCT 7.0 -- automatic
abv [Fri, 4 Dec 2015 11:15:06 +0000 (14:15 +0300)]
0026936: Drawbacks of inlining in new type system in OCCT 7.0 -- automatic

Automatic restore of IMPLEMENT_STANDARD_RTTIEXT macro (upgrade -rtti)

8 years ago0026936: Drawbacks of inlining in new type system in OCCT 7.0 -- manual
abv [Mon, 30 Nov 2015 04:49:48 +0000 (07:49 +0300)]
0026936: Drawbacks of inlining in new type system in OCCT 7.0 -- manual

Restored possibility to have out-of-line implementation of DynamicCast() and STANDART_TYPE():
- Macro STANDARD_TYPE() now resolves to function get_type_descriptor() of the class
- Macro DEFINE_STANDARD_RTTI is replaced by two variants:
  - DEFINE_STANDARD_RTTI_INLINE works as before, defining DynamicCast() and get_type_descriptor() as inline functions
  - DEFINE_STANDARD_RTTIEXT declares DynamicCast() and get_type_descriptor() as exported
- Macro IMPLEMENT_STANDARD_RTTIEXT provides definition of DynamicCast() and get_type_descriptor() for a class

Upgrade script amended to replace DEFINE_STANDARD_RTTI by pair of DEFINE_STANDARD_RTTIEXT / IMPLEMENT_STANDARD_RTTIEXT if source file with the same name as header is found in the same folder, and by DEFINE_STANDARD_RTTI_INLINE if either source is not found or class is defined in the source (i.e. not in header)

Upgrade tool improved to recognize include statements with path prefix, like #include <occt/gp_Pnt.hxx>
Code corrected to eliminate warnings reported by upgrade tool.
Template of CXX file for testing upgrade tool added.

Documentation of upgrade procedure updated.

8 years ago0026859: Export of GDT from XCAF to STEP
ika [Tue, 10 Nov 2015 08:58:29 +0000 (11:58 +0300)]
0026859: Export of GDT from XCAF to STEP

Export/Import:
Add export of dimensions, geometric tolerances and datums, according to AP242.
Add missing STEP entities.
Corrections.

XCAF:
Add new attributes to Datum object: DatumTargetNumber.
Supplement enum XCAFDimTolObjects_GeomToleranceZoneModif.
Corrections.

Test cases:
gdt export A1
gdt export A2
gdt export A3
gdt export A4
gdt export A5

8 years ago0026431: Can't cut a sphere from a cylinder
nbv [Tue, 10 Nov 2015 07:31:19 +0000 (10:31 +0300)]
0026431: Can't cut a sphere from a cylinder

This branch contains fixes for 26675 and 26431 bugs.

1. Normalization has been eliminated.
2. Interfaces of AppDef_Compute::Parametrization(...) and BRepAlgo_BooleanOperations::SetApproxParameters() methods have been changed.
3. Overloaded methods for ApproxInt_Approx::SetParameters(...), TopOpeBRepTool_GeomTool::GetTolerances(...) and TopOpeBRepTool_GeomTool::SetTolerances(...) have been removed (because some fields of these classes are not used more).
4. Comments for some methods have been changed in BRepApprox_TheMultiLineOfApprox.hxx and GeomInt_TheMultiLineOfWLApprox.hxx files.
5. Some fields have been deleted from ApproxInt_MultiLine class. Kept members have become constant.
6. Interface of ksection DRAW-command has been changed.
7. Now, 2dintersect DRAW-command prints information about found segments.
8. Some code fragments have been rewritten to make them easier.
9. Algorithm of splitting WLine, which goes through pole of sphere has been improved.
10. Improve approximation algorithm in order to it will compute correct 2D- and 3D-tangent at the end of bezier constraints (including case when curve goes through or finishes on singular points).
11. Interface of IntPatch_WLine::Dump(...) method has been corrected.
12. Some methods for working with Walking-line are made more universal (available for both GeomInt and IntTools packages).
13. Problem in BRepLib::SameParameter(...) method has been fixed (see corresponding comment).
14. Small correction in Draft package.
15. Any outputs in IntPatch_Intersection::Dump(...) method have become disabled because they are useless. If anybody need in this outputs he/she will correct this method himself/herself.

Adjusting some test cases according to their new behavior.
Creation of new test cases.

----------------------------------------------------------------------------------------------------------------------------

Some explanation of new behavior of some test cases:

 1. Regressions:

a) blend simple X4
The problem is described in the issue #0026740. According to this description,  the result on the current MASTER seems to be wrong indeed.

b) boolean bcommon_complex C7 and boolean bcut_complex Q1
These test case use same shapes with different Boolean operation (COMMON and CUT). They are already BAD (on the MASTER). Now, some sub-shapes have become not-shared, simply. In my opinion, we shall apply new behavior of these tests.

c) boolean bsection M3
The problem described in the issue #0026777 exists even on the current MASTER.

d) boolean bsection M9
The problem is described in the message http://tracker.dev.opencascade.org/view.php?id=26815#c47546. Here, we have really regression in the picture.

e) boolean bsection N2

The problem is described in issue #0026814.

f) boolean volumemaker G1

The problem is described in issue #26020.

g) bugs modalg_1 bug1255 (and bug1255_1)

The problem is described in issue #26815.

h) bugs modalg_2 bug5805_18, bugs modalg_2 bug5805_42, bugs modalg_2 bug5805_46

The problem is described in issue #25925.

i) bugs modalg_3 bug602

The problem is describes in issue #602.

j) bugs modalg_5 bug24915

The problem is described in the message http://tracker.dev.opencascade.org/view.php?id=25929#c48565. It is not fixed by this issue.

k) bugs modalg_5 bug25838

The main reason is described in issue #0026816.

----------------------------------------------------------------------------
2. Improvements:

a) boolean volumemaker F9
b) bugs modalg_1 bug10160_3
c) bugs modalg_2 bug22557
d) bugs modalg_5 bug25319_1 (_2)
e) draft angle G2
f) offset shape A1
g) offset with_intersect_80 N7

8 years ago0025929: Make Approx_ComputeLine algorithm adaptive
aml [Tue, 10 Nov 2015 06:57:03 +0000 (09:57 +0300)]
0025929: Make Approx_ComputeLine algorithm adaptive

Adaptive partition algorithm of WLine is implemented and used in ApproxInt_Approx.gxx file.
Refactoring of ApproxInt_Approx class.
Test cases are updated to the new behaviour.

Filtering algorithm improved.

8 years agoCSF_TBB added for toolkits that need to link to TBB
abv [Thu, 3 Dec 2015 14:58:57 +0000 (17:58 +0300)]
CSF_TBB added for toolkits that need to link to TBB

8 years ago0026902: Configuration, CMake - tests is not installed after definition INSTALL_OCCT_...
ski [Thu, 3 Dec 2015 09:28:58 +0000 (12:28 +0300)]
0026902: Configuration, CMake - tests is not installed after definition INSTALL_OCCT_TEST_CASES option

Variables responsible for installation of tests and samples were renamed

8 years ago0026922: Huge performance issue writing data to the output stream
mgn [Wed, 2 Dec 2015 13:39:55 +0000 (16:39 +0300)]
0026922: Huge performance issue writing data to the output stream

Test case for issue CR26922

Correction of literal (char to string)

8 years ago0026940: Visualization, TKOpenGl - capping plane should be applied to connected struc...
kgv [Tue, 1 Dec 2015 10:53:51 +0000 (13:53 +0300)]
0026940: Visualization, TKOpenGl - capping plane should be applied to connected structures

OpenGl_Structure::Render(), OpenGl_CappingAlgo::RenderCapping() - render
groups of instanced and this structure in the same manner
using ::renderGeometry() and ::renderClosedGeometry() instead of ::DrawGroups().
Skip capping algo for structures without groups of closed primitives.

8 years ago0026838: Using GeomEvaluators for calculation of values of curves
azv [Fri, 6 Nov 2015 05:49:50 +0000 (08:49 +0300)]
0026838: Using GeomEvaluators for calculation of values of curves

1. Implemented evaluators for 2D and 3D offset curves
2. Removed obsolete namespace CSLib_Offset

Update of UDLIST (adding no-cdl-pack Geom2dEvaluator)

Update TKG2d/CMakeLists.txt after rebase

Correction compilation in debug mode

8 years ago0026658: Unexpected selection in the context using a selection filter.
apl [Tue, 17 Nov 2015 15:54:25 +0000 (18:54 +0300)]
0026658: Unexpected selection in the context using a selection filter.

Method AIS_LocalContext::ClearOutdatedSelection() fixed. Now it chooses "mylastindex" value from list of filtered detected owners. The topmost detected owner will be highlighted if the current detected owner was cleared as outdated.

BUC26658 command to check the bug fix in DRAW.

append a test script to automatically check the bug in DRAW.

warnings correction.

8 years ago0026792: Visualization, Graphic3d - Z-fit support for transform persistence is missin...
apl [Thu, 19 Nov 2015 08:16:14 +0000 (11:16 +0300)]
0026792: Visualization, Graphic3d - Z-fit support for transform persistence is missing after removing Visual3d_View

Add missing code for z-fit support for zoom, rotate persistent object.
Fixed wrong statement that should enable frustum culling optimization for zoom, rotate persistent object.
Fixed BVH_LinearBuilder.lxx to correctly control number of items in leaf node for a case of items with equal bounding boxes.
Added non-regression test case for z-clipping of transform persistent objects.

8 years ago0023620: Follow up of 0022939 - make Bezier curve/surface evaluation thread-safe
azv [Mon, 2 Nov 2015 06:33:04 +0000 (09:33 +0300)]
0023620: Follow up of 0022939 - make Bezier curve/surface evaluation thread-safe

1. Remove cache from Geom_BezierCurve, Geom2d_BezierCurve and Geom_BezierSurface
2. Add cache for Bezier curves into GeomAdaptor_Curve, Geom2dAdaptor_Curve and GeomAdaptor_Surface
3. Update comments in corresponding cache classes
4. Avoid frequent down-casting to B-splines in adaptors

8 years ago0026914: [Regression 7.0alpha] Hang in surface approximation
azv [Tue, 24 Nov 2015 11:42:20 +0000 (14:42 +0300)]
0026914: [Regression 7.0alpha] Hang in surface approximation

Change a constructor of evaluator for offset surfaces

Test-case for issue #26914

8 years ago0026451: Crash importing STeP file
ika [Fri, 6 Nov 2015 08:47:53 +0000 (11:47 +0300)]
0026451: Crash importing STeP file

Add check for NULL.

8 years ago0026915: Visualization - return Handle from Graphic3d_CView::FBOCreate() instead...
kgv [Mon, 23 Nov 2015 11:16:08 +0000 (14:16 +0300)]
0026915: Visualization - return Handle from Graphic3d_CView::FBOCreate() instead of a pointer

OpenGl_View::FBO() - use copy Handle constructor for compatibility.

8 years ago0026348: Visualization, TKOpenGl - eliminate invalid NULL checks for transformation...
osa [Tue, 24 Nov 2015 12:26:34 +0000 (15:26 +0300)]
0026348: Visualization, TKOpenGl - eliminate invalid NULL checks for transformation matrix

Graphic3d_CStructure::Transformation - use Graphic3d_Mat4 instead of plain arrays.
Drop duplicating field OpenGl_Structure::myTransformation (copy of Graphic3d_CStructure::Transformation).
Drop unused property Graphic3d_CStructure::Composition and Graphic3d_Structure::Composition().

8 years ago0026005: Problem with transient TFunction_Logbook
vro [Tue, 24 Nov 2015 05:56:17 +0000 (08:56 +0300)]
0026005: Problem with transient TFunction_Logbook

8 years ago0026897: BRepBuilderAPI_Copy does not copy polygons
azv [Fri, 20 Nov 2015 13:00:06 +0000 (16:00 +0300)]
0026897: BRepBuilderAPI_Copy does not copy polygons

1. Implemented copying for 3D polygons and polygons on surfaces
2. Added test case bugs/modalg_6/bug26897

8 years ago0026891: Visualization, TKOpenGl - define more texture types within OpenGl_TextureFor...
isk [Thu, 19 Nov 2015 12:31:24 +0000 (15:31 +0300)]
0026891: Visualization, TKOpenGl - define more texture types within OpenGl_TextureFormatSelector

8 years ago0026905: Visualization - cosmetic fixes in selection methods of AIS_InteractiveContext
vpa [Fri, 20 Nov 2015 11:10:52 +0000 (14:10 +0300)]
0026905: Visualization - cosmetic fixes in selection methods of AIS_InteractiveContext

- selection mode in AIS_InteractiveContext::AddOrRemoveSelected is corrected;
- AIS_InteractiveContext::IsSelected returns object's state instead of global status.

8 years ago0026871: [Regression in 6.9.0] Projecting a curve hangs inside Approx_FitAndDivide2d
azv [Tue, 17 Nov 2015 13:46:32 +0000 (16:46 +0300)]
0026871: [Regression in 6.9.0] Projecting a curve hangs inside Approx_FitAndDivide2d

Fix checking of B-spline parametrization speed

Test case for issue CR26871

8 years ago0026884: Cylinder/Cylinder intersection algorithm throws an exception
nbv [Wed, 18 Nov 2015 08:01:12 +0000 (11:01 +0300)]
0026884: Cylinder/Cylinder intersection algorithm throws an exception

Check, if cylinder axes are parallel is made more carefully.
This check is brought to conformity with check if axes are parallel (see constructor AxeOperator::AxeOperator(...) in IntAna_QuadQuadGeo.cxx file)

Test case for issue CR26884

8 years ago0026625: Possible wrong use of vtkSmartPointer<T> in IVtkVTK_ShapeData.cxx
rkv [Mon, 9 Nov 2015 14:49:42 +0000 (17:49 +0300)]
0026625: Possible wrong use of vtkSmartPointer<T> in IVtkVTK_ShapeData.cxx

Use vtkSmartPointer<XXX>::New() instead of XXX::New() when initializing fields of vtkSmartPointer<XXX> types.