5 years ago0026855: Draw commands to debug Boolean Operations Algorithm
emv [Mon, 9 Nov 2015 15:50:15 +0000]
0026855: Draw commands to debug Boolean Operations Algorithm

The commands to debug BOA.
These commands should serve only debug purposes and should not be used in tests.

Removing old implementation of the duplicated bopnews command.

5 years ago0026821: Visualization - define default Rendering Parameters for Interactive Context
isk [Tue, 10 Nov 2015 10:14:17 +0000]
0026821: Visualization - define default Rendering Parameters for Interactive Context

Define default Rendering Parameters within V3d_Viewer.
New instances of V3d_View use default Rendering Parameters.

5 years ago0026798: Boolean operations: keep desired cells and boundaries in the result
emv [Fri, 30 Oct 2015 12:30:38 +0000]
0026798: Boolean operations: keep desired cells and boundaries in the result

The algorithm is based on the General Fuse algorithm (GFA). The result of
GFA is all split parts of the Arguments.

The purpose of this algorithm is to provide the result with the content of:
1. Cells (parts) defined by the user;
2. Internal boundaries defined by the user.

In other words the algorithm should provide the possibility for the user
to add or remove any part to (from) result and remove any internal boundaries
between parts.

Requirements for the Data:
All the requirements of GFA for the DATA are inherited in this algorithm.
Plus all the arguments should have the same dimension.

The result of the algorithm is compound containing selected parts of
the basic type (VERTEX, EDGE, FACE or SOLID). The default result
is empty compound. It is possible to add any split part to the result
by using the methods AddToRessult() and AddAllToResult().
It is also possible to remove any part from the result by using methods
RemoveFromResult() and RemoveAllFromResult().
The method RemoveAllFromResult() is also suitable for clearing the result.

To remove Internal boundaries it is necessary to set the same material to the
parts between which the boundaries should be removed and call the method
RemoveInternalBoundaries(). The material should not be equal to 0, as this is
default material value. The boundaries between parts with this value
will not be removed.
One part cannot be added with the different materials.
It is also possible to remove the boundaries during combining the result.
To do this it is necessary to set the material for parts (not equal to 0)
and set the flag bUpdate to TRUE.
BUT for the arguments of the types FACE or EDGE it is recommended
to remove the boundaries in the end when the result is completely built.
It will help to avoid self-intersections in the result.

It is possible to create typed Containers from the parts added to result by using
method MakeContainers(). The type of the containers will depend on the type of
the arguments: WIRES for EEDGE, SHELLS for FACES and COMPSOLIDS for SOLIDS.
The result will be compound containing containers.
Adding of the parts to such result will not update containers. The result
compound will contain the containers and new added parts (of basic type).
Removing of the parts from such result may affect some containers if the
the parts that should be removed is in container. In this case this container
will be rebuilt without that part.

The algorithm supports history information. This information available through
the methods IsDeleted() and Modified(). In DRAW Test Harness it is available
through the same commands as for Boolean Operations (bmodified and bisdeleted).

1. API
BOPAlgo_CellsBuilder aCBuilder;
BOPCol_ListOfShape aLS = ...; // arguments
/* parallel or single mode (the default value is FALSE)*/
Standard_Boolean bRunParallel = Standard_False;
/* fuzzy option (default value is 0)*/
Standard_Real aTol = 0.0;
if (aCBuilder.ErrorStatus()) { // check error status
/* empty compound, as nothing has been added yet */
const TopoDS_Shape& aRes = aCBuilder.Shape();
/* all split parts */
const TopoDS_Shape& aRes = aCBuilder.GetAllParts();
BOPCol_ListOfShape aLSToTake = ...; // parts of these arguments will be taken into result
BOPCol_ListOfShape aLSToAvoid = ...; // parts of these arguments will not be taken into result
/* defines the material common for the cells, i.e.
   the boundaries between cells with the same material
   will be removed.
   By default it is set to 0. Thus, to remove some boundary
   the value of this variable should not be equal to 0 */
Standard_Integer iMaterial = ...;
/* defines whether to update the result right now or not */
Standard_Boolean bUpdate = ...;
// adding to result
aCBuilder.AddToResult(aLSToTake, aLSToAvoid, iMaterial, bUpdate);
aR = aCBuilder.Shape(); // the result
// removing of the boundaries

// removing from result
aCBuilder.RemoveFromResult(aLSToTake, aLSToAvoid);
aR = aCBuilder.Shape(); // the result

2. DRAW Test Harness
psphere s1 15
psphere s2 15
psphere s3 15
ttranslate s1 0 0 10
ttranslate s2 20 0 10
ttranslate s3 10 0 0

bclearobjects; bcleartools
baddobjects s1 s2 s3
# rx will contain all split parts
bcbuild rx
# add to result the part that is common for all three spheres
bcadd res s1 1 s2 1 s3 1 -m 1
# add to result the part that is common only for first and third shperes
bcadd res s1 1 s2 0 s3 1 -m 1
# remove internal boundaries
bcremoveint res

Added history support for Generated shapes (created in ShapeUpgrade_UnifySameDomain).

Methods AddToResult and RemoveFromResult have been documented in more details to clarify the procedure of adding and removing parts.

Adding external library to use ShapeUpgrade_UnifySameDomain.

Test-cases for issue #26798

5 years ago0026255: Adaptor3d_OffsetCurve is misleading
azv [Mon, 2 Nov 2015 09:03:23 +0000]
0026255: Adaptor3d_OffsetCurve is misleading

1. Rename Adaptor3d_OffsetCurve to Adaptor2d_OffsetCurve and relative classes
2. Remove redundant class Geom2dGcc_CurveToolGeo

5 years ago0026603: Problem with maximization and normalization document windows in Qt samples...
afv [Mon, 19 Oct 2015 13:02:23 +0000]
0026603: Problem with maximization and normalization document windows in Qt samples with Qt 5.x

5 years ago0026780: Coding rules - eliminate warnings on Linux and Mac
abv [Wed, 11 Nov 2015 06:32:41 +0000]
0026780: Coding rules - eliminate warnings on Linux and Mac

Fixed a few remaining warnings found by GCC, CLang, and VC++ 14 (recent changes)

5 years ago0026854: Use -Wextra with GCC
abv [Mon, 9 Nov 2015 04:47:29 +0000]
0026854: Use -Wextra with GCC

Added option -Wextra for GCC compilation

5 years ago0025078: Coding rules - eliminate GCC warning -Wclobbered
abv [Sun, 8 Nov 2015 17:17:47 +0000]
0025078: Coding rules - eliminate GCC warning -Wclobbered

GCC warning -Wclobbered suppressed in Standard_ErrorHandler.hxx when OCC_CONVERT_SIGNALS or NO_CXX_EXCEPTIONS are used

5 years ago0026852: Coding - compiler warnings issued by GCC 5.2.1
abv [Sun, 8 Nov 2015 16:29:24 +0000]
0026852: Coding - compiler warnings issued by GCC 5.2.1

Compiler warnings eliminated:
- BRepAlgo_DSAccess: avoid copying of local list
- IntPatch, IntTools: initialize "possibly used uninitialized" variables by zeros
- Intf: slight refactoring
- OSD_signal: suppress unused argument
- OpenGL: add missing initializers in structures
- STEPConstruct_GDTProperty: correct function signature to pass output parameters by reference

5 years ago0026783: Coding rules - eliminate GCC warning -Wunused-but-set-parameter
rkv [Thu, 5 Nov 2015 13:07:37 +0000]
0026783: Coding rules - eliminate GCC warning -Wunused-but-set-parameter

TestTopOpeDraw_Displayer::GetTol(), GetPar() - pass assigned parameters by reference.
TopOpeBRep_vprdeg.cxx, TopOpeBRep_FacesFiller::ProcessVPondgE() - remove commented code, comment inactive code.

5 years ago0026850: Replace nested instantiations of TCollection generic classes by NCollection...
abv [Sat, 7 Nov 2015 21:12:47 +0000]
0026850: Replace nested instantiations of TCollection generic classes by NCollection templates

Remaining instantiations of NCollection generics are converted to NCollection templates; unused and duplicates removed

5 years ago0024567: Coding rules - eliminate GCC warning -Wignored-qualifiers
abv [Sat, 7 Nov 2015 18:19:03 +0000]
0024567: Coding rules - eliminate GCC warning -Wignored-qualifiers

Redundant const qualifiers of return types of functions returning values are removed

5 years ago0026843: New warning during compilation OCCT on MacOS
abv [Sat, 7 Nov 2015 12:28:24 +0000]
0026843: New warning during compilation OCCT on MacOS

Remove unused (and not implemented) methods in OSD package: IsDivisible(), GetExponent(), GetMantissa(), AvailableMemory()

5 years ago0026780: Coding rules - eliminate warnings on Linux and Mac
rkv [Fri, 6 Nov 2015 11:22:16 +0000]
0026780: Coding rules - eliminate warnings on Linux and Mac

Avoid warnings by means of ifdef/ifndef or removing unused code.

5 years ago0026178: Coding rules - eliminate -Wtautological-pointer-compare CLang warnings in...
abv [Fri, 6 Nov 2015 04:54:57 +0000]
0026178: Coding rules - eliminate -Wtautological-pointer-compare CLang warnings in Standard_ErrorHandler

Tautological comparisons removed; buffer initialized by zeros; LXX files merged to HXX; descriptions added

5 years ago0026844: Visualization, OpenGl_Flipper - fix issues within Core Profile and OpenGL ES
kgv [Thu, 5 Nov 2015 08:49:30 +0000]
0026844: Visualization, OpenGl_Flipper - fix issues within Core Profile and OpenGL ES

Remove outdated code lines.

5 years ago0022325: Patch to fix a build failure on GNU/kFreeBSD
abv [Sun, 1 Nov 2015 08:57:26 +0000]
0022325: Patch to fix a build failure on GNU/kFreeBSD

5 years ago0026757: Wrong history of a fillet
jgv [Fri, 30 Oct 2015 13:23:53 +0000]
0026757: Wrong history of a fillet

Small correction

Test case for issue CR26757

5 years ago0026744: Boolean Cut builds incorrect result
apn [Mon, 2 Nov 2015 10:45:17 +0000]
0026744: Boolean Cut builds incorrect result

Added test case bugs/modalg_6/bug26744

5 years ago0026823: Configuration - use EGL on another platform without GLX
ibs [Wed, 28 Oct 2015 15:24:34 +0000]
0026823: Configuration - use EGL on another platform without GLX

5 years ago0026784: Coding rules - eliminate GCC warning -Wunused-parameter
rkv [Thu, 29 Oct 2015 07:43:23 +0000]
0026784: Coding rules - eliminate GCC warning -Wunused-parameter

OSD_Thread - use pthread_timedjoin_np() instead of pthread_join() when available (glibc extension).
Suppress unused parameter warning in OSD_Signal, NCollection_WinHeapAllocator, OpenGl_Text, OpenGl_View, V3d_View and ViewerTest.

5 years ago0026689: Necessary to improve STEPCAFControl_Reader to read GD&T data from STEP model...
ink [Tue, 15 Sep 2015 11:58:17 +0000]
0026689: Necessary to improve STEPCAFControl_Reader to read GD&T data from STEP model(AP242).

Small corrections
added tests, corrected remarks
corrected remarks
Fix compilation errors.
Update test case (direction can be exist only for Oriented dimension).
fix compilation warning

5 years ago0026763: CMake configuration process does not allow setup paths for TK library if...
ski [Mon, 2 Nov 2015 14:45:26 +0000]
0026763: CMake configuration process does not allow setup paths for TK library if it separated from TCL

It is possible now to use standalone TCL and TK.
Behavior of 3RDPARTY_TK_DIR specifying extended
TCL/TK searching works correctly with installed ActiveTcl
TCL/TK searching works correctly with latest versions of CMake

Small update of compilation for android

5 years ago0026831: Configuration - define HashCode for pthread_t on Android
ibs [Mon, 2 Nov 2015 14:41:04 +0000]
0026831: Configuration - define HashCode for pthread_t on Android

explicit cast Standard_ThreadId to Standard_Size

5 years ago0026834: Visualization, OpenGl_FrameBuffer - use GL_DEPTH_COMPONENT instead of GL_DEP...
ibs [Mon, 2 Nov 2015 14:41:25 +0000]
0026834: Visualization, OpenGl_FrameBuffer - use GL_DEPTH_COMPONENT instead of GL_DEPTH for texture initialization

getDepthDataFormat method uses correct enumeration for GL_DEPTH_COMPONENT texture now

5 years ago0026830: TKernel should not be linked with pthread and rt
ibs [Mon, 2 Nov 2015 11:40:15 +0000]
0026830: TKernel should not be linked with pthread and rt

pthread and rt are not linked on android and qnx

5 years ago0026822: Visualization, OpenGl_Texture - fix compilation issue on Android due to...
kgv [Wed, 28 Oct 2015 15:19:59 +0000]
0026822: Visualization, OpenGl_Texture - fix compilation issue on Android due to usage of undefined macros GL_DEBUG_TYPE_ERROR

Drop _ARB prefix from GL_DEBUG_ enumeration.

5 years ago0026810: Visualization, TKOpenGl - line is shown without stipple aspect with FFP...
kgv [Sat, 24 Oct 2015 14:32:36 +0000]
0026810: Visualization, TKOpenGl - line is shown without stipple aspect with FFP turned off on OpenGL before 3.2

OpenGl_ShaderManager::prepareStdProgramFlat() enable stipple line GLSL program
within OpenGL 3.0+, OpenGL ES 3.0+ and OpenGL 2.0+ with GL_EXT_gpu_shader4 extension.

5 years ago0026808: Visualization, TKOpenGl - specify GLSL 120 for point sprites program
kgv [Sat, 24 Oct 2015 11:40:09 +0000]
0026808: Visualization, TKOpenGl - specify GLSL 120 for point sprites program

5 years ago0026781: Coding rules - eliminate GCC warning -Wunused-result
rkv [Wed, 28 Oct 2015 07:13:28 +0000]
0026781: Coding rules - eliminate GCC warning -Wunused-result

Check return code of fgets() and system() within FSD_BinaryFile::ReadChar(),
IFSelect_SessionFile::ReadFile(), IFSelect_SessionPilot::ReadScript(),
OSD_File::Print(), OSD_Process::Spawn(), RWStl::ReadAscii(), iges_lire().

5 years ago0026699: Wrong section curves
nbv [Wed, 28 Oct 2015 07:10:37 +0000]
0026699: Wrong section curves

1. Algorithm of Restriction line processing has been improved in IntTools_FaceFace.cxx file.
2. Algorithm of checking, if Restriction line and Walking line are coincided has been improved in IntPatch_ImpPrmIntersection.cxx file.
3. Algorithm of extending check if starting point of Walking line is a tangent point has been added.

Small correction of some test cases.
Creation of test case for issue #0026699.

Small correction of test case for issue CR26699

5 years ago0024658: fixshape changes source shape
aml [Tue, 29 Sep 2015 07:34:24 +0000]
0024658: fixshape changes source shape

Context usage extended in method ShapeFix_Wire::FixSelfIntersection() to avoid modification of original shape by shape healing.
Added check for subshape modification in XSAlgo/XSAlgo_AlgoContainer::MergeTransferInfo().
Test cases are updated to the new behaviour.

Test case for issue CR24658

5 years ago0026426: Draft angle algorithm modifies input argument + the result of the operation...
ifv [Fri, 17 Jul 2015 06:43:21 +0000]
0026426: Draft angle algorithm modifies input argument + the result of the operation have very large tolerance values

Test-case for issue #26426

5 years ago0026811: Coding rules - drop unused Draw Harness command deboucle
rkv [Mon, 26 Oct 2015 06:58:47 +0000]
0026811: Coding rules - drop unused Draw Harness command deboucle

5 years ago0026805: Visualization, Graphic3d_GraphicDriver - drop outdated unsupported methods...
kgv [Fri, 23 Oct 2015 18:45:27 +0000]
0026805: Visualization, Graphic3d_GraphicDriver - drop outdated unsupported methods for debugging

Drop methods PrintBoolean(), PrintCLight(), PrintCStructure(), PrintCView(), PrintFunction(), PrintInteger(),
PrintIResult(), PrintShortReal(), PrintMatrix(), PrintString(), SetTrace(), Trace().

5 years ago0026711: Visualization, TKOpenGl - support creation of multisampling off-screen FBOs
kgv [Wed, 21 Oct 2015 16:06:02 +0000]
0026711: Visualization, TKOpenGl - support creation of multisampling off-screen FBOs

OpenGl_Texture::Init2DMultisample() - new method to initialize multisampled texture.
Graphic3d_RenderingParams::NbMsaaSamples - add option defining MSAA samples number.

RayTracing will keep using FBO without MSAA, however it is possible to combine
MSAA for rasterization and FSAA for RayTracing.

OpenGl_FrameBuffer constructor has been changed to do not take arguments.
OpenGl_FrameBuffer::Init() method has been extended with mandatory parameters
defining Color and Depth attachment formats
and optional parameter defining number of MSAA parameters.

Draw Harness, add option -msaa to vrenderparams.

5 years ago0026799: NCollection_Array2's RowLength and ColLength return wrong value.
abv [Sat, 24 Oct 2015 05:00:58 +0000]
0026799: NCollection_Array2's RowLength and ColLength return wrong value.

Comments to methods RowLength() and ColLength() improved to avoid possible misinterpretation

5 years ago26785: Coding rules - eliminate GCC warning -Wempty-body in LDOM_DeclareSequence.hxx
rkv [Fri, 23 Oct 2015 11:14:28 +0000]
26785: Coding rules - eliminate GCC warning -Wempty-body in LDOM_DeclareSequence.hxx

5 years ago0021107: The computed section is incomplete
apn [Fri, 23 Oct 2015 11:19:54 +0000]
0021107: The computed section is incomplete

Added test case bugs/modalg_6/bug21107

5 years ago0026807: Documentation - describe dropping of Visual3d and UserDraw within porting...
kgv [Sat, 24 Oct 2015 11:09:41 +0000]
0026807: Documentation - describe dropping of Visual3d and UserDraw within porting notes

5 years ago0026787: Do not declare redundant macros WNT, LIN, WIN32, WIN64 within samples projec...
ski [Fri, 23 Oct 2015 13:12:34 +0000]
0026787: Do not declare redundant macros WNT, LIN, WIN32, WIN64 within samples project files

Redundant macros were removed.

Defines _WIN32, __linux__ and LININTEL were removed from qt samples *.pro files

5 years ago0026561: Porting CSharp wrapper to OCCT 7.0.0
abv [Fri, 23 Oct 2015 04:20:32 +0000]
0026561: Porting CSharp wrapper to OCCT 7.0.0

Added missing Standard_EXPORT for public methods; declaration of unimplemented method removed.

Restoring some changes made for #26788 but omitted in its commit.

OpenGl_View::ReadDepths() - drop obsolete and broken method; V3d_View::ToPixMap() should be used instead

5 years ago0026470: BRepFill_Evolved: exception and invalid result
ifv [Tue, 20 Oct 2015 09:18:26 +0000]
0026470: BRepFill_Evolved: exception and invalid result

Test-cases for issue #26470

5 years ago0026620: Shape healing unreasonably downgrades tolerance of a face
aml [Thu, 22 Oct 2015 11:54:59 +0000]
0026620: Shape healing unreasonably downgrades tolerance of a face

Added face support in SameParameter in classes ShapeAnalysis_Edge, ShapeFix_Edge.

Test case for issue CR26620

Minor correction.

5 years ago0026788: Compiler warnings when OCCT_DEBUG is enabled
abv [Tue, 20 Oct 2015 11:04:55 +0000]
0026788: Compiler warnings when OCCT_DEBUG is enabled

Clean-up in code causing warnings when OCCT_DEBUG is enabled

Minor corrections:
- new compiler warnings on VC++ 14
- rename of "PPC" variables that are said to caused conflicts on PowerPC
- removal of unused header TopOpeBRep/TopOpeBRep_tools.hxx

5 years ago0026216: New functionality. Converting the compound to assembly.
ink [Wed, 19 Aug 2015 09:37:28 +0000]
0026216: New functionality. Converting the compound to assembly.

Added new functionality for converting the compound to assembly.
Added new drw command XExpand.
Changed DumpShape and DumpAssembly
Added test.

test changed

5 years ago0026775: Bad result of section algorithm
aml [Thu, 22 Oct 2015 08:06:37 +0000]
0026775: Bad result of section algorithm

Walking line method extraction into separate class IntTools_WLineTool.
New purging method of walking line had been added. Now point which are out of bounds are deleted.

Minor corrections.

Test case for issue CR26775

5 years ago0026617: Visualization, Ray Tracing - adopt progressive rendering Path Tracing for...
apl [Tue, 20 Oct 2015 09:59:56 +0000]
0026617: Visualization, Ray Tracing - adopt progressive rendering Path Tracing for rendering stereoscopic pair

- Use two different FBOs for accumulating frames for left/right eye projection.
- Added equality checks to camera modification methods to avoid camera updates when performing identity operations.

5 years ago0026779: Draw Harness, ViewerTest - vstate output is incorrect for sub-shapes selecti...
vpa [Mon, 19 Oct 2015 14:28:06 +0000]
0026779: Draw Harness, ViewerTest - vstate output is incorrect for sub-shapes selection without opening local context

- vstate output was corrected to handle parts selection without opened local context;
- test case for issue #26779

5 years ago0024875: Coding rules - eliminate GCC warning -Wstrict-aliasing in TKOpenGl
kgv [Fri, 16 Oct 2015 06:39:00 +0000]
0024875: Coding rules - eliminate GCC warning -Wstrict-aliasing in TKOpenGl

5 years ago0026254: Inject GeomAbs_OffsetCurve into GeomAbs_CurveType enumeration
azv [Wed, 7 Oct 2015 06:13:19 +0000]
0026254: Inject GeomAbs_OffsetCurve into GeomAbs_CurveType enumeration

5 years ago0026122: Visualization, TKOpenGl - clipping and capping is broken when ffp is disable...
kgv [Fri, 16 Oct 2015 05:50:46 +0000]
0026122: Visualization, TKOpenGl - clipping and capping is broken when ffp is disabled on Linux

OpenGl_Clipping - do not setup clipping planes using FFP when it is disabled.

OpenGl_ShaderManager - apply 2d texture coordinates transformation in GLSL programs.
OpenGl_Context::SetTextureMatrix() - move texture matrix assignment from OpenGl_Workspace::setTextureParams() to OpenGl_Context.

Add test case demo/samples/dimensionsglsl with FFP turned OFF.
Add test case v3d/glsl/texture_trsf applying texture transformation.

Small correction of test case for issue CR26122

5 years ago0023645: Modeling Algorithms User's Guide contains wrong statement about GeomFill_Con...
ysn [Wed, 14 Oct 2015 09:24:55 +0000]
0023645: Modeling Algorithms User's Guide contains wrong statement about GeomFill_ConstrainedFilling

Wrong statement removed.

Statement corrected.

5 years ago0026774: Documentation - deviation angle default value as stated in AIS_InteractiveCo...
Benjamin Bihler [Wed, 21 Oct 2015 07:41:59 +0000]
0026774: Documentation - deviation angle default value as stated in AIS_InteractiveContext.hxx is wrong

Correct wrong deviation angle default value in class documentation.

5 years ago0026542: Visualization - Finalize support of D3D
apn [Thu, 13 Aug 2015 12:21:57 +0000]
0026542: Visualization - Finalize support of D3D

D3DHost_View - fix compilation issues on old msvc compilers.
CMake - add TKD3DHost.

Cosmetic correction

5 years ago0023741: Research and remove CSFDB support from OCCT if it is necessary
ski [Thu, 15 Oct 2015 12:02:18 +0000]
0023741: Research and remove CSFDB support from OCCT if it is necessary

redundant CSFDB definition removed from compiler command line
Remove *.csfbd files and CSFDB definition in the sample project

5 years ago0026443: Offset surface hangs up
aml [Tue, 13 Oct 2015 08:48:21 +0000]
0026443: Offset surface hangs up

D0 computation of offset surface simplification.

Update of test-case according to the new behavior
Test-cases for issue #26443

5 years ago0026773: Visualization - deviation angle cannot be set by AIS_InteractiveContext...
Benjamin Bihler [Wed, 14 Oct 2015 08:45:18 +0000]
0026773: Visualization - deviation angle cannot be set by AIS_InteractiveContext::SetDeviationAngle() due to misprint

Modified deviation angle setter to set the angle.

5 years ago0026595: Lost some comments in OCCT-code after cdl elimination
rkv [Wed, 14 Oct 2015 14:48:41 +0000]
0026595: Lost some comments in OCCT-code after cdl elimination

Recovered comments for instance classes from CDL generic classes.

5 years ago0026768: Visualization, Graphic3d_Camera::ZFitAll() - define method estimating ZRange...
kgv [Sat, 10 Oct 2015 19:45:14 +0000]
0026768: Visualization, Graphic3d_Camera::ZFitAll() - define method estimating ZRange without assigning it

Declare methods V3d_View::Redraw() and V3d_View::RedrawImmediate() as virtual to allow customization.

5 years ago0026746: Method gp_Torus::Coefficients(...) returns incorrect value.
nbv [Fri, 9 Oct 2015 14:48:36 +0000]
0026746: Method gp_Torus::Coefficients(...) returns incorrect value.

Bug has been fixed.
Test case for this issue has been created (with corresponding DRAW-command).

5 years ago0026754: Visualization - provide API to display AIS_Trihedron presentation without...
aba [Thu, 8 Oct 2015 14:44:02 +0000]
0026754: Visualization - provide API to display AIS_Trihedron presentation without axes labels:

- added ToDrawLabels option to Prs3d_DatumAspect, by default it is set to true
- AIS_Trihedron (uses DsgPrs_DatumPrs) and AIS_Axis: labels are drawn if ToDrawLabels option in the datum aspect is enabled

5 years ago0026719: Visualization - cannot pick zoom persistent object
vpa [Thu, 8 Oct 2015 11:02:39 +0000]
0026719: Visualization - cannot pick zoom persistent object

- trsf matrix scale factor is now taken into account in depth and distance calculation in selection;
- fixed trsf matrix application error in frustum cache in SelectMgr_ViewerSelector;
- fixed multiple errors in vstate output;
- test cases for issue #26719.

5 years ago0022632: Visualization - provide logarithmic scale for Aspect_ColorScale class
isz [Thu, 8 Oct 2015 09:07:59 +0000]
0022632: Visualization - provide logarithmic scale for Aspect_ColorScale class

Option "-logarithmic" is provided for draw command vcolorscale.
It changes color scale's labels to logarithmic values due to the min and max range and the number of intervals of the color scale.
New test case added. Fixed error when command vcolorscale was called without arguments.

5 years ago0026736: Errors in BRepOffsetAPI_MakeOffset: overlapping arcs are processed incorrect...
jgv [Wed, 7 Oct 2015 14:56:38 +0000]
0026736: Errors in BRepOffsetAPI_MakeOffset: overlapping arcs are processed incorrect in mode GeomAbs_Intersection

Test cases for issue CR26736

5 years ago0026526: BRepTools_WireExplorer can't explore all edges of a closed wire.
ifv [Mon, 5 Oct 2015 15:29:25 +0000]
0026526: BRepTools_WireExplorer can't explore all edges of a closed wire.

5 years ago0026622: Tests - Avoid using dlog and decho commands in test scripts
abv [Fri, 9 Oct 2015 17:15:11 +0000]
0026622: Tests - Avoid using dlog and decho commands in test scripts

Added possibility to define patterns that must be present in the test log, so that test is considered OK only if all these patterns are found.
New REQUIRED statement is introduced for that, documented in dox/dev_guides/tests/tests.md.

Removed all uses of decho and dlog commands, added REQUIRED where necessary.
Command xdistcs is modified to output to Tcl instead of cout, and extended to report errors and warnings if distances are greater than tolerance (directly, instead of complex post-processing on Tcl level).

DEBUG mode for TODOs was removed (we should have no deviations in Debug mode).

Corrected indentation in DrawResources/TestCommands.tcl

HTML log will now highlight TODO statement causing IMPROVEMENT status, or REQUIRED statement causing FAIL, by corresponding color.

5 years ago0026668: Eliminate compile warnings obtained by building occt with vc14: conversion...
rkv [Wed, 30 Sep 2015 06:36:04 +0000]
0026668: Eliminate compile warnings obtained by building occt with vc14: conversion requires a narrowing conversion

Warnings "conversion requires a narrowing conversion" were eliminated: IVtk_IdType is defined via vtkIdType from now.

Check of bitness of VTK libraries is added, to ensure that OCCT and VTK use the same bitness.

HashCode() function for long long int added in Standard_Integer.hxx to handle 64-bit integers

5 years ago0026669: Eliminate compile warnings obtained by building occt with vc14: 'type cast...
rkv [Tue, 6 Oct 2015 13:43:47 +0000]
0026669: Eliminate compile warnings obtained by building occt with vc14: 'type cast': conversion from 'BOOL' to 'WNDPROC' of greater size

Signature of the command window callback has been fixed to avoid unnecessary type casting. It is used when Draw_IsConsoleSubsystem = Standard_False
 i.e. in non-console mode (see _main_() in Draw_Main.cxx).

5 years ago0026581: Eliminate compile warnings obtained by building occt with vc14: 'type cast...
rkv [Fri, 2 Oct 2015 13:18:58 +0000]
0026581: Eliminate compile warnings obtained by building occt with vc14: 'type cast' conversion

5 years ago0026585: Eliminate compile warnings obtained by building occt with vc14: 'type cast...
abv [Fri, 9 Oct 2015 08:29:18 +0000]
0026585: Eliminate compile warnings obtained by building occt with vc14: 'type cast' pointer truncation and 'type cast' truncation

- Class OSD_EnvironmentIterator is removed (not used, and would definitely fail under Windows if tried)
- Methods UserId() and GroupId() removed from OSD_FileNode (cannot be made portable, as there is no integer IDs of user and group on Windows)
- Draw_ProgressIndicator corrected to properly pass address via Tcl
- OSD_File.cxx: local function is refactored to avoid senseless encoding / decoding of results
- OSD_Process::UserId() method removed, as it cannot be made cross-platform (no integer IDs on Windows)
- OSD_Thread: use WinAPI conversion functions to avoid warnings
- OSD_WNT.cxx: recursion counter passed via function argument instead of TLS
- TDF_LabelMapHasher revised to use correct hasher function for an address

5 years ago0026720: Coding, STEP - non-conformant names of class fields
rkv [Thu, 8 Oct 2015 07:06:55 +0000]
0026720: Coding, STEP - non-conformant names of class fields

Names of class fields and method parameters are fixed according to coding standard.

5 years ago0026739: Problem with generate Qt samples
ski [Tue, 6 Oct 2015 11:14:36 +0000]
0026739: Problem with generate Qt samples

Generation of project files was fixed.

5 years ago0026734: Visualization, D3DHost_View - drop outdated UserDraw interfaces
kgv [Sat, 10 Oct 2015 19:18:47 +0000]
0026734: Visualization, D3DHost_View - drop outdated UserDraw interfaces

Correction of test case for issue CR26765

5 years ago0026765: Visualization - drop TKVoxel toolkit
kgv [Sat, 10 Oct 2015 19:17:37 +0000]
0026765: Visualization - drop TKVoxel toolkit

5 years ago0026741: Problem with building samples and demo
ski [Thu, 8 Oct 2015 12:09:38 +0000]
0026741: Problem with building samples and demo

Scripts and project files were changed to use corrent environment.

5 years agoAdjusting test cases after integration for issue 26560
apv [Fri, 9 Oct 2015 12:20:19 +0000]
Adjusting test cases after integration for issue 26560

5 years ago0026755: Use of reference to destroyed temporary object in Adaptor3d_SurfaceOfRevolution
abv [Wed, 7 Oct 2015 10:34:41 +0000]
0026755: Use of reference to destroyed temporary object in Adaptor3d_SurfaceOfRevolution

Code corrected to make a copy of temporary object for its further use

5 years ago0026609: Wrong result obtained by solid classifier algorithm.
ifv [Thu, 8 Oct 2015 10:26:15 +0000]
0026609: Wrong result obtained by solid classifier algorithm.

Test case for issue CR26609

Correction of test cases for issue CR26609

5 years ago0026312: ColorScale doesn't work as expected.
isz [Wed, 7 Oct 2015 13:01:13 +0000]
0026312: ColorScale doesn't work as expected.

Now 'vcolorscale' command works correctly with the active view. Changed types of some variables from Standard_Real to Standard_Integer. Added options to set the width or the height of color scale explicitly. Test case is added.

5 years ago0026742: Update test cases for using checknbshapes procedure instead of global variables
ski [Tue, 6 Oct 2015 13:44:32 +0000]
0026742: Update test cases for using checknbshapes procedure instead of global variables

Test cases were updated.

5 years ago0026396: Taper API result differs run-to-run for identical inputs
isn [Thu, 8 Oct 2015 07:32:41 +0000]
0026396: Taper API result differs run-to-run for identical inputs

- all data maps where shape used as a key have been replaced with indexed data maps. Now index used for iteration through this map instead of shape-key.
- new test have been added. This test allows to test stability of DraftAngle-algo.
- alignment corrections...

Removing warnings

5 years ago0026717: Error in IntPatch_PrmPrmIntersection: change of local resolution leads to...
jgv [Thu, 8 Oct 2015 07:21:38 +0000]
0026717: Error in IntPatch_PrmPrmIntersection: change of local resolution leads to break of walking line

Test case for issue CR26717

Correction of test cases for issue CR26717

Test case for issue CR26717

5 years ago0026750: Method IsNormal(...) for gp_Vec2d returns FALSE if the angle between two...
nbv [Thu, 8 Oct 2015 07:14:30 +0000]
0026750: Method IsNormal(...) for gp_Vec2d returns FALSE if the angle between two vectors is equal to -90 degree (-M_PI/2 radian)

The bug has been fixed.
Test case for this issue has been created.

Correct alignment.

5 years ago0026721: Visualization - selection highlight of selected face is broken
vpa [Fri, 2 Oct 2015 14:21:58 +0000]
0026721: Visualization - selection highlight of selected face is broken

- fixed misprint in changing owner higlight status AIS_InteractiveContext::SetSelected;
- duplicatied code for unhighlighting seleced owners was moved in a separate function;
- test case for issue #26721

5 years ago0026560: BRepBndLib build too large bounding box in Z direction for planar spline...
aml [Thu, 8 Oct 2015 06:39:35 +0000]
0026560: BRepBndLib build too large bounding box in Z direction for planar spline edge.

Poles bounding box for curve added for bezier and bspline curves.
Method Poles() for Bezier curve added.

Test case for issue CR26560

Function to compute subshape max tolerance has been added.
Fixed bounding box expanding at Face/Face step of boolean operation.
Test cases are updated to the new behavior.

5 years ago0026734: Visualization, TKOpenGl - drop outdated UserDraw interfaces
kgv [Thu, 8 Oct 2015 06:33:48 +0000]
0026734: Visualization, TKOpenGl - drop outdated UserDraw interfaces

Update ViewerTest and VoxelDemo to not use UserDraw callbacks.

OpenGl_View::blitBuffers() - set 0 GLSL program after blit
to avoid side effects on code that does not use shaders.

Drop interfaces Aspect_GraphicCallbackProc, Graphic3d_CUserDraw,
Graphic3d_Group::UserDraw(), OpenGl_GraphicDriver::UserDrawCallback().

V3d_View::SetWindow() - remove optional arguments initializing redraw callback.
OpenGl_View, declare following methods as virtual for inheritance:
redraw(), redrawImmediate(), render(), renderScene(), drawBackground(), renderStructs().

VocelClient_VisDrawer - do not include removed header

5 years agoUpdate test cases after integration fix for 26607
mkv [Fri, 2 Oct 2015 11:53:55 +0000]
Update test cases after integration fix for 26607

5 years ago0026565: Compsolid after cut becomes compound of solids
emv [Thu, 1 Oct 2015 11:48:30 +0000]
0026565: Compsolid after cut becomes compound of solids

Changed the rules for the types of the arguments for different operations:
1. FUSE:   All arguments and tools should have the same dimension;
2. CUT:    The MAXIMAL dimension of the ARGUMENTS should be less
           or equal to the MINIMAL dimension of the TOOLS;
3. CUT21:  The MINIMAL dimension of ARGUMENTS should be grater
           or equal to the MAXIMAL dimension of the TOOLS;
4. COMMON: The arguments and tools could have any dimensions.

For the arguments of collection type (WIRE, SHELL, COMPSOLID)
the type will be passed into the result of the operation.

The documentation should be updated according to new behavior.

Documentation has been updated.

Implemented suggestions by MSV and some grammar changes.

Test cases for issue CR26565

Correction of test cases for issue CR26565

Correction of test cases for issue CR26565

5 years ago0026732: Visualization, TKOpenGl - add option to request Core profile 3.2+ using GLX
kgv [Tue, 29 Sep 2015 07:15:32 +0000]
0026732: Visualization, TKOpenGl - add option to request Core profile 3.2+ using GLX

Aspect_Window::NativeFBConfig() - extend interface with new method.
Xw_Window - add Aspect_FBConfig option to constructors,
use glXChooseFBConfig() instead of glXChooseVisual() on GLX1.3+.

OpenGl_Window - create context using glXCreateContextAttribsARB()
when GLXFBConfig is provided by Aspect_Window.
This procedure now handles Core Profile and Debug Context options on Linux.

OpenGl_Window - drop code implicitly creating child window
when window XVisual is incomplete for OpenGL context.
This should eliminate event-handling issues at application side,
but would require window to be properly created by application.

5 years ago0026715: Problems in reading STEP short names in complex entities
ika [Thu, 1 Oct 2015 11:01:08 +0000]
0026715: Problems in reading STEP short names in complex entities

Add function to find next part of complex entity by name or short name.
Add missing short names.

Test cases for issue CR26715

5 years ago0026718: Big tolerance value of the edge in the result of General Fuse operation
emv [Thu, 1 Oct 2015 10:57:53 +0000]
0026718: Big tolerance value of the edge in the result of General Fuse operation

class BOPTools_AlgoTools2D
  Standard_Integer BOPTools_AlgoTools2D::AttachExistingPCurve
  (const TopoDS_Edge& aE2, // old
   const TopoDS_Edge& aE1, // new
   const TopoDS_Face& aF,
   const Handle(IntTools_Context)& aCtx)

To prevent huge tolerance increasing check the distances between 2d and 3d
curves (through surface) before attaching 2d curve to the edge.

Test case for issue CR26718

Correction of test cases for issue CR26718

5 years ago0026298: Visualization, OpenGl_Text - make font resolution configurable.
isk [Tue, 29 Sep 2015 09:17:58 +0000]
0026298: Visualization, OpenGl_Text - make font resolution configurable.
Add THE_DEFAULT_RESOLUTION static const parameter to Graphic3d_RenderingParams.
Add resolution to Graphic3d_RenderingParams.
Drop redundant variables from OpenGl_Workspace.
Add a new parameter to Graphic3d_GraphicDriver::TextSize method (and to OpenGl_GraphicDriver).
Add a new parameter to OpenGl_Text::Render() and to OpenGl_Text::render() methods.
OpenGl_Text::FontKey() considers a resolution (PPI) now.
Add a new argument '-resolution' (sets a pixel density) in the 'VRenderParams' draw-command.

5 years ago0026607: Wrong value of area.
ifv [Thu, 1 Oct 2015 10:48:27 +0000]
0026607: Wrong value of area.

Test case for issue CR26607

Fix regressions

Correction of test cases for issue CR26607

5 years ago0026042: OCCT won't work with the latest Xcode
akz [Wed, 23 Sep 2015 13:31:15 +0000]
0026042: OCCT won't work with the latest Xcode

Dereferenced null pointers was eliminated for PLib, BSplCLib and BSplSLib. All affected code was changed accordingly.

5 years ago0026360: Useless global functions IsSimilar() in Standard
akz [Fri, 25 Sep 2015 13:33:23 +0000]
0026360: Useless global functions IsSimilar() in Standard

Remove IsSimilar() global function for Standard types. Replace usege of IsSimilar() by IsEqual().

5 years ago0026648: Configuration - set default path for start of DRAWEXE under Visual Studio...
abv [Thu, 1 Oct 2015 10:22:19 +0000]
0026648: Configuration - set default path for start of DRAWEXE under Visual Studio debugger

Default path for starting executable from Visual Studio debugger set to be $CASROOT in project files generated by genproj

Default path for starting DRAWEXE executable from Visual Studio debugger set to be CMake binary directory in project files generated by CMake

5 years ago0026381: OSD_File - close file on destruction
akz [Thu, 1 Oct 2015 10:28:12 +0000]
0026381: OSD_File - close file on destruction

Add destructor for OSD_File, that unlocks and close file.

Remove senseless checks from status functions in code for Linux.

Destructor of OSD_FileNode is made protected to avoid possibility of deleting descendants by pointer to base class

5 years ago0026723: Qt IE sample can not import STEP and IGES files with names containing not...
gka [Fri, 25 Sep 2015 13:30:29 +0000]
0026723: Qt IE sample can not import STEP and IGES files with names containing not ascii symbols

Added conversion of the names of the imported files in the  Utf8 coding

5 years agoAdjusting test cases for current state of occt
apv [Mon, 28 Sep 2015 09:53:22 +0000]
Adjusting test cases for current state of occt