0023384: Translate sub-shape names between XDE document and STEP
Sub-shapes naming translation between XDE and STEP implemented as an optional mode of Reader/Writer.
New static variables are now available: write.stepcaf.subshapes.name for Writer and read.stepcaf.subshapes.name for Reader (both have 0 values by default).
XOpen command implemented in scope of XDEDRAW asset.
0023403: Crash when parsing an expression with lexical error
Fix double freeing of memory in case when lexical error is detected by parser:
- revert previous fix, instead nullify the global buffer after its freeing in ExprIntrp_stop_string().
0023405: BOP common produces one face instead of a solid
Modified class :IntTools_FaceFace
- method: void IntTools_FaceFace::ComputeTolReached3d()
The goal is:
to give more precise definition to the value of tolerance of intersection curves in 3D for the case plane/sphere.
Added test case boolean/bopcommon_complex/M7
Added test case boolean/bopcommon_simple/ZP9 for verified bug CR23374
oan [Fri, 7 Sep 2012 09:58:12 +0000 (13:58 +0400)]
0023409: Tricheck command doesn't report problem when triangulation has unexpected holes
Tricheck command improvement for checking triangulation holes on free links
More obvious error message
Added test case bugs demo CR23409
Modified test case offset wire_closed_outside_0_005 G7
Roman Lygin [Sun, 19 Aug 2012 07:01:32 +0000 (11:01 +0400)]
0023393: Improve usability of OSD_MAllocHook::CollectBySize
Usability of OSD_MAllocHook::CollectBySize was improved:
- fields of OSD_MAllocHook::CollectBySize are made public (not private) to enable access for debugging purposes.
- added field myMaxAllocSize to denote maximum tracked size
pkv [Fri, 24 Aug 2012 10:32:10 +0000 (14:32 +0400)]
0023341: Wrong result done by 2D classifier algorithm for a point and a face.
Class classIntCurve_IntConicConic has been changed.
The intersection point that is definitely out of both domains is rejected.
Improving expression on lines 1101-1104 of IntCurve_IntConicConic_1.cxx to be more clear with adding comments.
Pawel [Fri, 24 Aug 2012 10:18:55 +0000 (14:18 +0400)]
0023373: MSVC++ warnings issued during compilation for 64bits, 'Sparse Arrays'
Replaced 'Standard_Integer' with 'Standard_Size' to avoid compiler warning.
Removed redundant casting to 'Standard_Size'.
Removed code checking if a 'Standard_Size' variable is negative.
Pawel Kowalski [Fri, 3 Aug 2012 09:28:27 +0000 (13:28 +0400)]
0023348: Expression 'ii >= 0' is always true. Unsigned type value is always >= 0.
Redesigned the loop to work correctly with unsigned variables.
Treatment of path to source file is rewritten using OSD_Path for more clarity
Command getsourcefile corrected to return its result as Tcl string, and simplified
Error in treatment of optional arguments in substituted puts is fixed in src/DrawResources/TestCommands.tcl
Test case added: demo draw getsource
san [Fri, 3 Aug 2012 07:16:58 +0000 (11:16 +0400)]
0023363: [Regression] Lost gradient background when switching to the hollow interior style
Calling glPolygonMode() to ensure filled polygon rendering when drawing
the view background
Revert "Calling glPolygonMode() to ensure filled polygon rendering when drawing"
This reverts commit 41d41ab23cb81acb3bcf7e6ad5d10ea0097eecdd.
OpenGl_Workspace::ResetAppliedAspect() method improved in order to
reset GL parameters to default values specified in default aspects.
This method is now called twice during scene rendering:
- At the very beginning by OpenGl_Workspace::Activate()
- After all structures has been drawn but before the auxiliary stuff
(like trihedrons, overlayer, display callbacks)
0023273: Avoid failures due to datadir commend when data files are not present
Fix for #23273 issue.
Fix for #23273 issue (boolean/013/R9).
Modifications of tests according to #23260 issue.
Attempt to protect against hang-ups due to waiting for standard input
change of behaviour of offset/shape_type_i/D7 case.
Attempt to protect against hang-ups during initialization of menu in batch mode.
increase cpulimit for parallel incmesh.
#23260 is fixed. count_parallel is not needed anymore.
Deleted unused code.
change of behaviour of offset/shape_type_i/D7 case.
The fix was incorrect.
Second attempt to protect against hang-ups during initialization of menu in batch mode
correction of tests in order to awoid instability.
Elapsed time changed to CPU user time is performance tests.
Processing of errors on Windows.
Stop cpulimit killer if armed by test, after the test is completed
0023260: Regression: Instability in parallel incmesh on Linux.
Added protection to the function which may have data race (according to the valgrind report).
Added protection to the BRepMesh_FastDiscretFace::RestoreStructureFromTriangulation function
Slight reordering to optimize use of mutex (lock once)
Now Standard_Mutex::SentryNested are created as named object.
Map inside TopTools_MutexForShapeProvider now store Handle_TopoDS_TShape as a key instead of TopoDS_Shape
0023287: IntPolyh_MaillageAffinage.cxx, line 2217: "identical sub-expressions to the left and to the right of the '-' operator"
The expression
Abs(PEP1.U()-PEP1.U())
changed to
Abs(PEP1.U()-PEP2.U())
In this case the points are equal and so the points number can be reduced to '1'.
0023303: Expression always true in ShapeFix_Face.cxx
The two corrected if-clause conditions were always true.
In FixSmallAreaWire where the documentation says: "Detects wires with small area (that is less than 100*Precision::PConfusion(). Removes these wires if they are internal." and the bugfix conforms to this.
For 'NeedCheckSplitWire' option in the Perform method the same assumption is made although no documentation on this could be found.
Directories for generated files (projects, Visual Studio artifacts, Emacs backup files, test results) are added to .gitignore
Suppressed generated files.
Allow to use bat, sh, am, m4 and ac files in subdirectories.
0023003: Photos of AIS Viewer are corrupted on Windows if tests are executed remotely
Default position of 3d viewer window created by vinit command is set to the right-left corner of the screen (0,0) to avoid problems on small screens, e.g. dummy remote desktops
Default position of 3d viewer window created by vinit command is set to be close to the right-left corner of the screen (0,0) to avoid problems on small screens, e.g. dummy screens of remote desktops
0023226: Extend OpenGl_Context to store map of shared GPU resources
OpenGl_Resource was slightly corrected and OpenGl_Element was extended
with Release method to manage GPU resources.
OpenGl_PrimitiveArray now uses new OpenGl_VertexBuffer class (requires OpenGL 1.5+).
Strange workarounds for feedback mode were removed.
OpenGl_Context now provides access to shared GPU resources
and manages resources queue for delayed release
(replaces functionality of removed OpenGl_ResourceCleaner).
Loaded GL_ARB_texture_buffer_object and GL_ARB_draw_instanced extensions.
Global maps of views, workspaces and structures
were moved to OpenGl_GraphicDriver members.
UserDrawCallback() function moved to OpenGl_GraphicDriver methods.
Aspect_GraphicCallbackStruct now holds handle of OpenGl_Context
instead of system-dependent pointers to GL context definition.
New classes NCollection_Vec2, NCollection_Vec3 and NCollection_Vec4
implements interface to low-level data (points, vertices, colors) in GLSL-style.
Removed EnableVBO argument from vdrawparray Draw Harness command
Corrected compilation errors
Fixed wrong argument in Index VBO initialization
Fixed several cases of incorrect memory management in TKV3d
Visual3d_ViewManager::Remove()
Destroy structures before last view removed for correct GPU resources management.
Graphic3d_Structure::GraphicClear()
Remove groups to avoid usage of dead OpenGl_Group pointers.
V3d_View::Remove()
Fixed mistake in #0000280 patch.
Small correction
Fixed OCC280 test command
Replace removed view within created one in ViewerTest EventManager.
ViewerTest, do not create unused 3D view
In current design NIS_View always created and used for both - NIS objects and AIS objects.