5 years ago0023710: Simplification of presentation managment classes
kgv [Thu, 3 Apr 2014 11:33:26 +0000]
0023710: Simplification of presentation managment classes

Merge PrsMgr_Presentation3d into PrsMgr_Presentation

5 years ago0024754: Remove constructor for static class TopOpeBRep_PointGeomTool
kgv [Fri, 28 Mar 2014 06:57:47 +0000]
0024754: Remove constructor for static class TopOpeBRep_PointGeomTool

5 years ago0024764: Alien subshapes occured in result of 'bopcheck' operation
pkv [Thu, 3 Apr 2014 11:29:23 +0000]
0024764: Alien subshapes occured in result of 'bopcheck' operation

class BOPAlgo_ArgumentAnalyzer
   - method:
void BOPAlgo_ArgumentAnalyzer::TestSelfInterferences()
The new shapes has been excluded from the treatment

void BOPAlgo_CheckerSI::PostTreat()
The new shapes has been excluded from the treatment

Standard_Integer bopcheck
  (Draw_Interpretor& di, Standard_Integer n,  const char** a )
The new shapes has been excluded from the treatment.
The interferences of the type */Solid has been included in the treatment.

Test case for issue CR24764

6 years agoUpdate of test cases for Debug
mkv [Fri, 28 Mar 2014 12:02:18 +0000]
Update of test cases for Debug

6 years ago0024765: Compile errors on Mac OS X with GCC 4.2
abv [Wed, 26 Mar 2014 12:06:10 +0000]
0024765: Compile errors on Mac OS X with GCC 4.2

Sequence replaced by handle in map, to avoid involvement of copy constructor (private)

6 years ago0024535: Bad type cast in TDocStd_Document::Update()
szy [Wed, 26 Mar 2014 12:49:44 +0000]
0024535: Bad type cast in TDocStd_Document::Update()

Eliminating of GCC compiler warning on breakage of C pointer aliasing rules.

6 years ago0024752: Visualization - inherit OpenGl_Group from Graphic3d_Group
kgv [Thu, 27 Mar 2014 13:12:18 +0000]
0024752: Visualization - inherit OpenGl_Group from Graphic3d_Group

Graphic3d_Group is now abstract class and should be instantiated
using Graphic3d_Structure::NewGroup() method.
Graphic3d_CGroup has been removed.

The groups list is no more duplicated within Graphic3d_Structure and OpenGl_Structure.
Removed unused/duplicated fields from Graphic3d_Group.

Prs3d_Presentation - remove redundnant field myCurrentGroup.
PrsMgr_Presentation3d::Erase(), ::Clear() - avoid possible NULL dereference.
OpenGl_GraphicDriver/Graphic3d_GraphicDriver - group management methods have been removed
(moved to Graphic3d_CStructure and Graphic3d_Group interfaces).

Graphic3d_Group::GroupPrimitivesAspect() - copy IsEmission flag
Fix wrong iterator
Fix compilation issues

6 years ago0024751: Performance improvements in the Edge/Edge intersection algorithm
emv [Thu, 27 Mar 2014 13:10:12 +0000]
0024751: Performance improvements in the Edge/Edge intersection algorithm

Added new static method PointBoxDistance() to compute distance between point and bounding box.
Removed method IntTools_EdgeEdge::FindRoughRanges().
Test cases for issue CR24751

6 years ago0024738: BRepOffsetAPI_MakePipe algorithm fails on circular path and section (the...
jgv [Thu, 27 Mar 2014 12:59:41 +0000]
0024738: BRepOffsetAPI_MakePipe algorithm fails on circular path and section (the case where result is part of sphere)

Test case for issue CR24738

6 years ago0024684: Command fixshape hangs up on the attached shape
nbv [Thu, 27 Mar 2014 12:56:42 +0000]
0024684: Command fixshape hangs up on the attached shape

Algorithm of seeking of any internal point into given face is corrected.
Test case for issue CR24684

6 years ago0024758: Sample DRAW scripts for demonstrating sweeping algorithm
abv [Thu, 27 Mar 2014 12:54:50 +0000]
0024758: Sample DRAW scripts for demonstrating sweeping algorithm

Two scripts added:
samples/tcl/drill.tcl: creates model of a twist drill bit
samples/tcl/cutter.tcl: creates simplified model of a milling cutter
Added test cases bugs/modalg_5/bug24758_1 bug24758_2

6 years ago0024633: Incorrect projection of a curve on a surface
jgv [Thu, 27 Mar 2014 12:51:39 +0000]
0024633: Incorrect projection of a curve on a surface

Test cases for issue CR24633

6 years ago0024565: MgtBRep persistence bug
szy [Thu, 27 Mar 2014 12:48:46 +0000]
0024565: MgtBRep persistence bug

Fix of the persistence bug (exception with message "Persistant CurveRep is Null").
Creating new draw command for testing CR24565
Revert license header corruption
Correction for new draw command OCC24565
Test case for issue CR24565

6 years ago0024639: Parallelization FillDS part of BO
pkv [Mon, 24 Mar 2014 05:34:34 +0000]
0024639: Parallelization FillDS part of BO

Modifications to avoid compilation errors

6 years ago0024354: TKOpenGl - location modification of multi-connected shape has no effect...
duv [Tue, 18 Mar 2014 11:22:31 +0000]
0024354: TKOpenGl - location modification of multi-connected shape has no effect when object is drawn by GLSL program

6 years ago0024745: Needless inheritance of OSD_MemInfo from Standard_Transient
kgv [Fri, 21 Mar 2014 12:17:39 +0000]
0024745: Needless inheritance of OSD_MemInfo from Standard_Transient

6 years ago0024748: Remove unused instantiations of collection classes
abv [Thu, 27 Mar 2014 12:36:03 +0000]
0024748: Remove unused instantiations of collection classes

- packages PColPGeom, PColPGeom2d
- in Geom package: classes SequenceOfBoundedSurface, (H)SequenceOfSurface
- in TColGeom package: classes Array1OfBoundedCurve, (H)Array1OfBoundedSurface, HArray1OfBoundedCurve, (H)Array2OfBoundedSurface, (H)Array2OfBSplineSurface, HArray2OfBezierSurface, (H)SequenceOfBoundedSurface, HSequenceOfSurface
- in TColGeom2d package: classes (H)Array1OfGeometry, (H)Array1OfBoundedCurve, HSequenceOfGeometry

6 years ago0024734: Convertation of the generic classes to the non-generic. Part 4
dln [Thu, 27 Mar 2014 12:29:16 +0000]
0024734: Convertation of the generic classes to the non-generic. Part 4

Generic classes "LProp_FuncCurExt", "LProp_FuncCurNul" and "LProp_NumericCurInf" from "LProp" package converted to the non-generic classes and moved to the "Geom2dLProp" package. Therefore names of this classes were changed to "Geom2dLProp_FuncCurExt", "Geom2dLProp_FuncCurNul" and "Geom2dLProp_NumericCurInf".
Generic class "Sweep_LinearRegularSweep" from "Sweep" package converted to the non-generic classes and moved to the "BRepSweep" package. Therefore name of this class was changed to "BRepSweep_NumLinearRegularSweep". Also 2 internal classes of "BRepSweep_NumLinearRegularSweep" moved to "BRepSweep.cdl".
Generic classes "Primitives_Wedge" and "Primitives_OneAxis" from "Primitives" package converted to the non-generic classes and moved to the "BRepPrim" package. Therefore names of this classes were changed to "BRepPrim_GWedge" and "BRepPrim_OneAxis". Also enum "Direction" moved to BRepPrim. Therefore all "Primitives" package was deleted.
And some other minor changes were done.

Internal classes Array2OfShapes and SequenceOfShapes from BRepSweep_NumLinearRegularSweep replaced to Array2OfShape and SequenceOfShape from TopTools.

6 years ago0024683: Convertation of the generic classes to the non-generic. Part 1
dln [Thu, 27 Mar 2014 12:24:53 +0000]
0024683: Convertation of the generic classes to the non-generic. Part 1

Generic classes from "BRepApprox" package:
    "BRepApprox_ApproxLineGen" and "BRepApprox_SurfaceToolGen" converted to the non-generic classes "BRepApprox_ApproxLine" and "BRepApprox_SurfaceTool".
Generic classes from "BRepBlend" package:
    "BRepBlend_HCurve3dToolGen" and "BRepBlend_HCurve2dToolGen" converted to the non-generic classes "BRepBlend_HCurve3dTool" and "BRepBlend_HCurve2dTool".
Generic classes from "Blend" package:
    "Blend_Extremity", "Blend_Line" and "Blend_PointOnRst" moved to the corresponding non-generic classes "BRepBlend_Extremity", "BRepBlend_Line" and "BRepBlend_PointOnRst" to "BRepBlend" package.

And some other minor changes were done.
Field "myPntOn2S" was deleted from "BRepApprox_ApproxLine" class. Therefore BRepApprox_ApproxLine::Point(...) method was a little changed.

6 years agoUpdate test cases for debug mode
mkv [Fri, 21 Mar 2014 12:16:29 +0000]
Update test cases for debug mode

6 years ago0024549: Faulty shape after IGES translation with xstep.cascade.unit set to M
ibs [Thu, 20 Mar 2014 10:59:22 +0000]
0024549: Faulty shape after IGES translation with xstep.cascade.unit set to M

pcurve as line isn't created to avoid incorrect parameterization
Test case for issue CR24549

Test cases were corrected according to their new behavior

6 years ago0024687: TKOpenGl shader programs - same view state for different v3d views
duv [Thu, 20 Mar 2014 10:39:23 +0000]
0024687: TKOpenGl shader programs - same view state for different v3d views

OpenGl_ShaderManager::IsSameView() - add const

6 years agoUpdate test cases database
apn [Thu, 20 Mar 2014 10:22:54 +0000]
Update test cases database
- bugs modalg_5 bug23954 -      Added test case for issue 23954
- bugs modalg_1 bug60776_1 -  Corrected square of shape and deleted appropriate TODO
- bugs moddata_1 bug13 -          Added check for the curve length obtained as a result of intersection
- feat featprism S2 -                     Corrected square of shape and deleted appropriate TODO

6 years ago0024727: Convertation of the generic classes to the non-generic. Part 3
dln [Wed, 12 Mar 2014 08:09:23 +0000]
0024727: Convertation of the generic classes to the non-generic. Part 3

1) Generic class "Intf_InterferencePolyhedron" from "Intf" package converted to the non-generic class and moved to the "IntPatch" package. Name of this class was changed to "IntPatch_InterferencePolyhedron".

2) Generic class "MoniTool_Elem" from "MoniTool" package converted to the non-generic class "MoniTool_TransientElem".

3) Generic class "IntWalk_PWalking" from "IntWalk" package converted to the non-generic class. And internal class "TheInt2S" of "IntWalk_PWalking" moved from IntWalk_PWalking.cdl to IntWalk.cdl for correct building. Also several "*.cxx" files of this class merged to one ".cxx".

4) Generic class "Transfer_SimpleBinder" from "Transfer" package converted to the non-generic class and moved to the "TransferBRep" package. Name of this class was changed to "TransferBRep_BinderOfShape".

5) Generic class "Geom2dInt_CurveTool" from "Geom2dInt" package converted to the non-generic class "Geom2dInt_Geom2dCurveTool".

6) Generic class "MAT2d_BisectingLocus" from "MAT2d" package converted to the non-generic class and moved to the "BRepMAT2d" package. Name of this class was changed to "BRepMAT2d_BisectingLocus".

7) Generic class "MAT_Mat" from "MAT" package converted to the non-generic class and moved to the "MAT2d" package. Name of this class was changed to "MAT2d_Mat2d".

6 years ago0024737: Coding - remove <br> tag from header files
kgv [Thu, 20 Mar 2014 10:12:12 +0000]
0024737: Coding - remove <br> tag from header files

Eliminate #ifdefs around #includes, some unnecessary includes and macros

6 years ago0024706: Solids produced by BOP do not have flag Closed set in shells
emv [Thu, 20 Mar 2014 10:09:47 +0000]
0024706: Solids produced by BOP do not have flag Closed set in shells

Flag CLOSED is set for closed shells created during perform of Boolean Operation.
Test cases for issue CR24706

6 years ago0024730: remove constructor for class TopOpeBRep_PointGeomTool
kgv [Wed, 19 Mar 2014 12:10:05 +0000]
0024730: remove constructor for class TopOpeBRep_PointGeomTool

6 years ago0024736: There is new additional compilation warning on Linux platform
kgv [Wed, 19 Mar 2014 08:32:39 +0000]
0024736: There is new additional compilation warning on Linux platform

6 years ago0024733: Subshape IDs change between two executions of a same script
pkv [Wed, 19 Mar 2014 03:02:28 +0000]
0024733: Subshape IDs change between two executions of a same script

1. class BOPTools_Set
   - method:
void BOPTools_Set::AddEdges(const TopoDS_Shape& aS)
has been removed as redundant

2. class BOPTools_Set
   - method:
Standard_Boolean BOPTools_Set::IsEqual  (const BOPTools_Set& theOther)const
has been modified to take into account Locations of the shapes

3. class BOPAlgo_Builder
   - method:
void BOPAlgo_Builder::FillSameDomainFaces()
has been modified in accordance with the modifications done in II.1.

6 years ago0024637: Visualization - clean up implementation of rendering in immediate mode
kgv [Thu, 20 Mar 2014 09:54:12 +0000]
0024637: Visualization - clean up implementation of rendering in immediate mode

Remove unused flag "DoubleBuf".
Remove Visual3d_TransientManager "class" (functionality moved to PrsMgr_PresentationManager).
Remove unused "Add" immediate mode.

V3d_View class - remove methods ::TransientManagerBeginDraw(), ::TransientManagerClearDraw(), ::TransientManagerBeginAddDraw().
Add method ::RedrawImmediate() to redraw only immediate presentations.

OpenGl_GraphicDriver - add methods ::DisplayImmediateStructure(), ::EraseImmediateStructure(), ::RedrawImmediate().
OpenGl_View - manage list of immediate structures.
OpenGl_Workspace - automate rendering workflow of immediate + persistent layers.

Merge PrsMgr_PresentationManager3d class into PrsMgr_PresentationManager.
Mark PrsMgr_PresentationManager3d as alias to PrsMgr_PresentationManager to simplify porting.

Prs3d_Presentation - remove unused field myStruct.
Prs3d_PresentationShadow - shadow link to existing presentation with custom attributes.
Graphic3d_Structure::Highlight() - do not register undisplayed structure in structure manager.

AIS_InteractiveContext, AIS_LocalContext add flag to prevent view update into methods
::MoveTo(), ::HilightNextDetected(), ::HilightPreviousDetected()
to allow update of customized immediate structures before redraw but after ::MoveTo().

Remove unused method AIS_InteractiveContext::Drag().

StdSelect_ViewerSelector3d do not user immediate mode in methods
::DisplayAreas(), ::ClearAreas(), ::ClearSensitive(), ::DisplaySensitive(),

GridEcho - update value in StdSelect_ViewerSelector3d::Pick() instead of V3d_View::Compute().
Do not use global variable for GridEcho vertex.
Redraw immediate mode not within GridEcho but at AIS_InteractiveContext, AIS_LocalContext layer.

V3d_View::ToPixMap() - disable autoupdate during FitAll.
Avoid Redraw() into FBO without ImmediateModeDrawToFront flag.

PrsMgr_PresentationManager stores list of temporary immediate presentations,
automatically cleared within BeginImmediateMode() call.
Methods with ambiguous names have been renamed
(new names now consistent with pre-existed method names in AIS_LocalContext class):
- BeginDraw -> BeginImmediateDraw
- EndDraw -> EndImmediateDraw
Remove now useless Remove() method (and ImmediateRemove() in AIS).

Visual3d_View now stores map of displayed immediate presentations.

ViewerTest_EventManager - eliminate double redraw in selection methods.

Fix warning

6 years ago0024732: OpenGl_Context - retrieve functions up to GL4.4
kgv [Thu, 20 Mar 2014 09:50:28 +0000]
0024732: OpenGl_Context - retrieve functions up to GL4.4

Drop unused OpenGl_ArbVBO.
Replace OpenGl_ExtFBO with OpenGl_ArbFBO.

OpenGl_Context - reorganize GL functions management.
OpenGl_GlFunctions structure now stores pointers for all GL functions,
while inheritors specify functions subset using access levels.
Drop fields core12, core13, core14; replace extFBO by arbFBO.

OpenGl_ArbIns, OpenGl_ArbTBO - use GL3.1 core functions
instead of ARB extensions when available.

OpenGl_ArbFBO - provide complete list of functions

OpenGl_GlCore11 - fix misprint

OpenGl_Context.hxx - remove redundant declarations

6 years ago0024669: BVH binned builder fails to separate objects with the same center
dbp [Mon, 17 Mar 2014 11:54:15 +0000]
0024669: BVH binned builder fails to separate objects with the same center

6 years ago0024725: AIS_TexturedShape - flag switching texture modulation mode does not work
apl [Thu, 20 Mar 2014 09:46:40 +0000]
0024725: AIS_TexturedShape - flag switching texture modulation mode does not work

- Missing code restored
- "vtexture" command improved to support texture modulation option

remarks from kgv

6 years ago0024668: Null flyout value case in AIS_Dimension::SetTextPosition() method is not...
aba [Thu, 20 Mar 2014 09:44:02 +0000]
0024668: Null flyout value case in AIS_Dimension::SetTextPosition() method is not considered.

Corrected checks of working plane and dimension geometry.

Corrected remarks: IsComputed flag was added to the SelectionGeometry to check if it is filled; AdjustParameters() methods became const ones.

minor remark

6 years ago0024728: A lot of tests are crashed on vdump command on Windows in debug mode
apl [Fri, 14 Mar 2014 11:30:29 +0000]
0024728: A lot of tests are crashed on vdump command on Windows in debug mode

6 years ago0024493: Partition algorithm produces not valid shape(splt of 10 faces)
mkv [Tue, 18 Mar 2014 14:37:41 +0000]
0024493: Partition algorithm produces not valid shape(splt of 10 faces)

Test cases for issue CR24493

6 years ago0024644: Draw_Printer - provide the way to control messages gravity filter
kgv [Thu, 20 Mar 2014 09:38:41 +0000]
0024644: Draw_Printer - provide the way to control messages gravity filter

Message_Printer - define GetTraceLevel()/SetTraceLevel() methods in base interface.
Implement message gravity filter in Draw_Printer.
Add new Draw Harness command dtracelevel to show/change message gravity filter.
Redirect default messenger to Draw_Printer within TKDraw instead of TKXSDRAW

Draw::Commands() - assign Draw_Printer only once

6 years ago0024696: Lower performance of the new Edge/Edge intersection algorithm
emv [Thu, 20 Mar 2014 09:36:43 +0000]
0024696: Lower performance of the new Edge/Edge intersection algorithm

Performance improvements in IntTools_EdgeEdge algorithm:
1. Added check for common box between edges: if common box between edges is thin,
   find exact solutions at once, without looking for rough ranges first;
2. Improved methods IntTools_EdgeEdge::FindBestSolution() and
   IntTools_EdgeEdge::CheckCoincidence(...) by using method SplitRangeOnSegments
   with resolution of the curve as a criteria for size of the ranges.

Test cases for issue CR24696

6 years agoUpdate cpulimit due to issue 24596
bugmaster [Fri, 14 Mar 2014 10:16:51 +0000]
Update cpulimit due to issue 24596

6 years ago0024720: Some standard samples are not compiled after latest integration to visualisation
apl [Thu, 13 Mar 2014 10:52:18 +0000]
0024720: Some standard samples are not compiled after latest integration to visualisation

Fixed compilation errors in samples:

6 years ago0024596: Slow import of IGES data
ama [Thu, 13 Mar 2014 11:07:45 +0000]
0024596: Slow import of IGES data

Part 1: Speed up of import functionality.
Correction in ShapeFix_IntersectionTool::FixIntersectingWires() - preliminary construction of ShapeAnalysis_Surface tool for the whole face; computation of 2d bounding boxes for edges and wires before intersection checking.

Part 2: Speed up of check shape.
Correction in BRepCheck_Face::IntersectWires() in the same way: preliminary computation of 2d boxes for edges and wires in order to reduce the number of calls of intersection tool for pair of wires.

Test cases for issue CR24596

6 years ago0024718: Broken build on VC8 (VS 2005) if TBB is used
abv [Thu, 13 Mar 2014 05:15:46 +0000]
0024718: Broken build on VC8 (VS 2005) if TBB is used

Macro _WIN32_WINNT defined in OpenGl_SceneGeometry.cxx for building with TBB on VS 2005

6 years ago0024704: Visualization - inherit OpenGl_Structure from Graphic3d_CStructure
kgv [Thu, 13 Mar 2014 10:35:13 +0000]
0024704: Visualization - inherit OpenGl_Structure from Graphic3d_CStructure

Graphic3d_Structure - store Graphic3d_CStructure as handle.
Graphic3d_Structure class implementation clean up.
Graphic3d_Structure::SetManager() - remove unused method.
Graphic3d_GraphicDriver - move structure-related methods to Graphic3d_CStructure interface.

Remove unsupported Aspect_TOHM_BLINK value.

Remove field-duplicate OpenGl_Structure::myClipPlanes

Fixing warnings

6 years ago0024714: Camera integration - difference in behavior of V3d_View::SetSize
apl [Wed, 12 Mar 2014 10:59:26 +0000]
0024714: Camera integration - difference in behavior of V3d_View::SetSize

Restored behavior of SetSize method

6 years ago0024688: Draw Harness - vdump command makes snapshot only for the first view
kgv [Thu, 13 Mar 2014 10:27:13 +0000]
0024688: Draw Harness - vdump command makes snapshot only for the first view

6 years ago0024667: BRepOffsetAPI_MakePipe::FirstShape() and LastShape() return shapes not from...
skv [Thu, 13 Mar 2014 10:24:28 +0000]
0024667: BRepOffsetAPI_MakePipe::FirstShape() and LastShape() return shapes not from result

Test case for issue CR24667

6 years ago0024710: Avoid including Handle_Class.hxx headers except where necessary
abv [Thu, 13 Mar 2014 10:21:41 +0000]
0024710: Avoid including Handle_Class.hxx headers except where necessary

Includes of Handle*.hxx headers replaced by include of corresponding class (where possible without redesign of the classes).

Minor correction against compiler warning (vc10 64-bit) in BOPAlgo

Remove double header inclusions

Correction of minor mistake

6 years ago0024705: Draw Harness - add -noupdate option to vdisplay command
kgv [Sun, 9 Mar 2014 07:17:30 +0000]
0024705: Draw Harness - add -noupdate option to vdisplay command

Add option to suppress viewer redraw to the following commands:
vdisplay, vdonly, verase, vremove

6 years ago0024342: Create non-constant methods ChangeCoord with index parameter in classes...
abk [Mon, 11 Nov 2013 09:04:25 +0000]
0024342: Create non-constant methods ChangeCoord with index parameter in classes gp_XY and gp_XYZ

The methods were created.

6 years ago0024701: TKernel - drop redundant headers Standard_ctype.hxx and Standard_inverse.h
kgv [Fri, 7 Mar 2014 11:16:22 +0000]
0024701: TKernel - drop redundant headers Standard_ctype.hxx and Standard_inverse.h

6 years ago0024431: Using svg-images in the documentation
abv [Thu, 13 Mar 2014 09:20:08 +0000]
0024431: Using svg-images in the documentation

Documentation generator improved to automatically convert SVG images to PDF when PDF documents are generated. This is done with Inkscape thus it becomes necessary for generation of PDF documents.

Doxygen alias "figure" added for easy insertion of images with single command for both HTML and PDF output.

Documentation is updated.

Reviewed documentation.md and added more recommendations on Document Syntax.
Introduced existing svg images in the documentation.

Description of formatting of plain text, code blocks, and references revised.
Snapshot of structure of dox folder is updated.
Copyright year is corrected in PDF documents to be always the current one.

Some grammar corrections.

6 years ago0024719: Snapshots for bugs/vis/bug6145 are unstable
kgv [Thu, 13 Mar 2014 05:36:02 +0000]
0024719: Snapshots for bugs/vis/bug6145 are unstable

Use "new" Boolean operation instead of "old" one.

6 years ago0024685: Coding Rules - "Draw:Atoi" misprints in the document
kgv [Tue, 4 Mar 2014 15:40:03 +0000]
0024685: Coding Rules - "Draw:Atoi" misprints in the document

6 years ago0024413: Visualization - get rid of projection shift from orthographic camera definition
apl [Thu, 6 Mar 2014 11:15:53 +0000]
0024413: Visualization - get rid of projection shift from orthographic camera definition

From now on, the panning behavior of V3d_View completely corresponds to equal operations with camera. There is no more confusing "Center" property and "ProjectionShift" which were used to introduce composite panning, while respecting view referential points: At, Eye unchanged. The V3d_View::FitAll approach has been rewritten to do "fit all" geometrically, operating with frustum, to make it working for both orthographic and perspective projections.

1) Getting rid of ProjectionShift and Center property:
- Removed ProjectionShift property of Graphic3d_Camera.
- Removed confusing Center property of V3d_View (related to projection shift).
- Removed redundant code related to the Center property of V3d_View.
- Removed WindowLimit method of Graphic3d_Camera - no more used.

2) Improvements of fit all and selector:
- Improved FitAll operation of V3d_View and reused it in NIS_View - the perspective projection is now handled correctly.
- Revised code of Select3D_Projector class - can be defined with any given projection and model-view matrices.
- Modified StdSelect_ViewerSelector3d and ensured that panning, zooming and going into the view do not lead to unwanted re-projection of sensitives. The handling of perspective selection is revised.
- Take into account graphical boundaries of infinite structure on ZFitAll.

3) Improvements of camera:
- Introduced new z range scale parameter for V3d_View::AutoZFit. See, V3d_View::AutoZFitMode.
- Allow negative ZNear, ZFar for orthographic camera to avoid clipping of viewed model.
- Moved camera ZNear, ZFar validity checks to V3d_View level.
- Use more meaningful Standard_ShortReal relative precision for ZNear, ZFar ranges computed by ZFitAll.
- Use Standard_Real type for camera projection and orientation matrices.
- Extended camera to generate both Standard_Real and Standard_ShortReal transformation matrices using the same matrix evaluation methods and converted input parameters.

Correcting picking tests for perspective view

Modify v3d face test cases for 1px changes in face picking

Modified test cases for new arguments of vviewparams DRAWEXE command

6 years ago0024650: Wrong intersection curves obtained for a surface of revolution and a plane.
ifv [Thu, 6 Mar 2014 11:11:23 +0000]
0024650: Wrong intersection curves obtained for a surface of revolution and a plane.

Test case for issue CR24650

6 years ago0024679: test command doesn't work with tmp path containing white spaces
ibs [Tue, 4 Mar 2014 08:06:46 +0000]
0024679: test command doesn't work with tmp path containing white spaces

6 years ago0024639: Parallelization FillDS part of BO
pkv [Thu, 6 Mar 2014 11:05:58 +0000]
0024639: Parallelization FillDS part of BO

Edge/Edge Interferences

1. class BOPAlgo_PaveFiller
  - method:
void BOPAlgo_PaveFiller::PerformEE()
the chages provides the parallel computations of
Edge/Edge interferences.

   - auxiliary classes:
have been added.
The classes are auxiliary classes to provide the parallel computations
of Edge/Edge interferences.

2. class BOPTest
void BOPTest::PartitionCommands(Draw_Interpretor& theCommands)
- static function:
Standard_Integer bfillds(Draw_Interpretor& di,
                         Standard_Integer n,
                         const char** a)
The syntax of the command "bfillds" has been changed.
> bfillds [-s -t]
-s - launch the algorithm in sequential mode
-t - display CPU time

Test case for issue CR24639

6 years ago0024628: Intersection result is unfixed
emv [Thu, 6 Mar 2014 11:02:08 +0000]
0024628: Intersection result is unfixed

The map for collecting pave blocks of two faces has been replaced with indexed map
to ensure the constant order of pave blocks when checking section curves for existents.

Test case for issue CR24628

6 years ago0024612: Wrong pcurve of the section curve
nbv [Wed, 5 Mar 2014 12:54:38 +0000]
0024612: Wrong pcurve of the section curve

Main changes are in "IntWalk_IWalking::TestDeflection(...)" function (IntWalk_IWalking_5.gxx).

Some test cases were corrected according to their new behavior.

6 years ago0024673: Test cases for the new Edge/Edge intersection algorithm
emv [Thu, 6 Mar 2014 10:55:02 +0000]
0024673: Test cases for the new Edge/Edge intersection algorithm

New test cases for 0024673
Corrected names of shapes in test cases bugs/modalg_5/bug24208_1 - bug24208_14.

6 years ago0024675: Crash reading a VRML file
vro [Thu, 6 Mar 2014 10:48:36 +0000]
0024675: Crash reading a VRML file

A node index for a normal is passed through a map of corrected references to node indices.

Test case for issue CR24675

6 years ago0024662: Removing unused "generic" classes. Part 3
dln [Wed, 19 Feb 2014 07:29:13 +0000]
0024662: Removing unused "generic" classes. Part 3

In scope of this issue next unused generic class will be removed:

- IntImp_CSCurveTool
- IntImp_CSFunction
- IntImp_CurveTool
- IntImp_ISurfaceTool
- IntImp_PSurfaceTool
- IntStart_ArcTool
- IntStart_PSurfaceTool
- IntStart_SIFunction
- IntStart_SITool
- IntStart_SOBFunction
- IntStart_SOBTool
- IntStart_TopolTool
- IntWalk_IWFunction
- IntWalk_Iterator
- IntWalk_LoopPointTool
- IntWalk_PSurfaceTool
- IntWalk_PathPointTool
- Intf_ToolPolyhedron
- LProp_CurveTool
- LProp_SurfaceTool
- LibCtl_ProtocolTemplate
- MAT_Tool
- Primitives_Builder
- Sweep_Builder
- Sweep_Iterator
- Sweep_Tool
- TopClass_FaceExplorer
- TopClass_Intersection2d
- HatchGen_Intersector
- IFSelect_SelectList
- IntCurveSurface_CurveTool
- IntImp_COnSCurveTool
- IntImpParGen_ParTool

6 years ago0024672: Visualization - AIS_TexturedShape does not activate back face culling aspect
kgv [Thu, 6 Mar 2014 10:40:36 +0000]
0024672: Visualization - AIS_TexturedShape does not activate back face culling aspect

6 years ago0024622: Add method to AIS_TexturedShape class to assign texture data directly from...
apl [Thu, 6 Mar 2014 10:15:39 +0000]
0024622: Add method to AIS_TexturedShape class to assign texture data directly from byte stream

Added methods to specify Image_PixMap as texture source to AIS_TexturedShape and Graphic3d_TextureRoot.
Modified internal class MeshVS_ImageTexture2D, originally used for the purpose of sourcing texture as Image_PixMap.

AIS_TexturedShape class:
- Get rid from cdl declaration.
- Remove unused and uninitialized field myDeflection / method Deflection().
- Improve class documentation.
- Use Graphic3d_NOT_2D_UNKNOWN instead of -1.
- Use myIsCustomOrigin and myToScale flags to use/ignore custom values.

6 years ago0022912: After calling AIS_InteractiveContext::UnsetColor objects are drawn with...
apn [Tue, 4 Mar 2014 12:59:43 +0000]
0022912: After calling AIS_InteractiveContext::UnsetColor objects are drawn with the same color when transparency is changed

Added test case bugs/vis/bug22912

6 years ago0024663: Removing unused "generic" classes. Part 4
dln [Thu, 20 Feb 2014 05:28:46 +0000]
0024663: Removing unused "generic" classes. Part 4

In scope of this issue next unused generic class will be removed:

- TCollection_AVLBaseNode
- TCollection_AVLIterator
- TCollection_AVLList
- TCollection_AVLNode
- TCollection_AVLSearchTree

- PCollection_ATInOrderIterator
- PCollection_ATPostOrderIterator
- PCollection_ATPreOrderIterator
- PCollection_AVLIterator
- PCollection_AVLNode
- PCollection_AdjacentVerticesIterator
- PCollection_BackEdgesIterator
- PCollection_BreadthFirstIterator
- PCollection_DepthFirstIterator
- PCollection_DoubleMapIterator
- PCollection_DoubleMapNode
- PCollection_Edge
- PCollection_EdgesIterator
- PCollection_FrontEdgesIterator
- PCollection_HAVLSearchTree
- PCollection_HArbitraryTree
- PCollection_HDirectedGraph
- PCollection_HDoubleMap
- PCollection_HQueue
- PCollection_HSet
- PCollection_HStack
- PCollection_LeavesIterator
- PCollection_QueueIterator
- PCollection_RootsIterator
- PCollection_SetIterator
- PCollection_StackIterator
- PCollection_Vertex
- PCollection_VerticesIterator
- PCollection_HDataMap
- PCollection_HIndexedDataMap
- PCollection_IndexedDataMapNode
- PCollection_MapIterator
- PCollection_MapNode

6 years ago0024645: Pointer to the last is wrong for a tree node
vro [Thu, 6 Mar 2014 09:31:59 +0000]
0024645: Pointer to the last is wrong for a tree node

- An extra call to DownCast() is removed for a performance reason.
- Information on last child is added to the Dump() method + fixed a problem of lost last child tree node on removal (detach) operation.
- Test case for issue CR24645

6 years ago0024671: TKOpenGl, OpenGl_Context - glGetPointerv might be called without GL context
osa [Fri, 28 Feb 2014 06:17:21 +0000]
0024671: TKOpenGl, OpenGl_Context - glGetPointerv might be called without GL context

6 years ago0024599: Tools for interacting with DRAW from Visual Studio debugger
abv [Mon, 3 Mar 2014 09:52:33 +0000]
0024599: Tools for interacting with DRAW from Visual Studio debugger

Minor correction of #include to avoid dependency of package Draw on DBRep (problem building by WOK).
License statements in new files corrected for licensecheck command.
Non-ascii en-dash symbol repleced by Ascii hyphen in debug.md.

6 years ago0024654: Result of Boolean operation is invalid for bopargcheck if rotated
pkv [Thu, 27 Feb 2014 14:50:42 +0000]
0024654: Result of Boolean operation is invalid for bopargcheck if rotated

class  BndLib
   - method:
void BndLib::Add(const gp_Hypr& H,
                 const Standard_Real P1,
                 const Standard_Real P2,
                 const Standard_Real Tol,
                 Bnd_Box& B)
  - static function:
Standard_Integer ComputeBox(const gp_Hypr& aHypr,
                            const Standard_Real aT1,
                            const Standard_Real aT2,
                            Bnd_Box& aBox)
The function computes bounding box for bounded hyperbola

Test case for issue CR24654

6 years ago0024666: Removal of output information in debug mode in Ocaf
vro [Thu, 27 Feb 2014 14:48:52 +0000]
0024666: Removal of output information in debug mode in Ocaf

DEB_BUILDER replaces DEB pre-processor directive to eliminate extra output on setting a shape to a label.
Small correction of test case

6 years ago0024660: Removing unused "generic" classes. Part 1
dln [Tue, 18 Feb 2014 08:44:54 +0000]
0024660: Removing unused "generic" classes. Part 1

In scope of this issue next unused generic classes will be removed:

1) AppBlend_Line

2) AppBlend_SectionGenerator

3) AppCont_SurfLeastSquare

4) AppCont_TheLineTool

5) AppCont_TheSurfTool

6) AppParCurves_MLineToo

7) AppParCurves_Projection

8) ApproxInt_WLine

9) Approx_ComputeCSurface

10) Approx_TheLineTool

11) Blend_Iterator

12) Contap_ArcTool

13) Contap_SurfaceTool

14) Contap_TopolTool

15) Dynamic_EnumerationParameter

16) Dynamic_MethodInstance

17) Extrema_ExtPSOfRev

18) GProp_CurveTool

19) GProp_DomainTool

20) GProp_FaceTool

6 years ago0024575: Exception is raised during 'checkshape' operation.
nbv [Thu, 27 Feb 2014 14:45:27 +0000]
0024575: Exception is raised during 'checkshape' operation.

Recursion calling of "Propagate(...)" function is replaced with cycle.
Test case for issue CR24575

6 years ago0024645: Pointer to the last is wrong for a tree node
vro [Thu, 27 Feb 2014 14:43:38 +0000]
0024645: Pointer to the last is wrong for a tree node

Information on last child is added to the Dump() method + fixed a problem of lost last child tree node on removal (detach) operation.
Test case for issue CR24645

6 years ago0024636: Coding Rules - define rules for development of Draw Harness commands
kgv [Thu, 27 Feb 2014 14:39:32 +0000]
0024636: Coding Rules - define rules for development of Draw Harness commands

.md file corrected grammar, style and logic. Removed redundancies.

6 years ago0024659: misprints in draw documentation
ibs [Tue, 25 Feb 2014 06:53:32 +0000]
0024659: misprints in draw documentation

6 years ago0024364: Document system should use local MathJax also
ibs [Thu, 27 Feb 2014 14:33:30 +0000]
0024364: Document system should use local MathJax also

the new ability choosing of the location of MathJax was introduced
new argument was added to gendoc.bat script
MathJax choice was updated for CHM articles
Minor corrections of documentation

6 years ago0024599: Tools for interacting with DRAW from Visual Studio debugger
abv [Thu, 27 Feb 2014 14:22:52 +0000]
0024599: Tools for interacting with DRAW from Visual Studio debugger

Global functions are added to allow a user performing DRAW commands from VS Command Window when DRAW is interrupted on a breakpoint.
Previously existing functions are adapted to work with Visual Studio debugger (Command Window).
A manual describing use of these functions and other debugging facilities and some hints is added to Developer Guides.
Minor corrections and refinement of debug.md.

6 years ago0024655: Boolean common produces incorrect result
pkv [Thu, 27 Feb 2014 14:15:55 +0000]
0024655: Boolean common produces incorrect result

class BOPAlgo_WireSplitter
   - method:
void BOPAlgo_WireSplitter::SplitBlock
                 (const TopoDS_Face& myFace,
                   BOPTools_ConnexityBlock& aCB);

 - static functions:
void RefineAngles(const TopoDS_Face& myFace,
                  const BOPCol_ListOfShape& myEdges,
                  BOPAlgo_IndexedDataMapOfShapeListOfEdgeInfo& mySmartMap);

void RefineAngles(const TopoDS_Vertex& aV,
                  const TopoDS_Face& myFace,
                  const BOPCol_MapOfShape& aMBE,
                  BOPAlgo_ListOfEdgeInfo& aLEI);

Standard_Boolean RefineAngle2D(const TopoDS_Vertex& aV,
                               const TopoDS_Edge& aE,
                               const TopoDS_Face& myFace,
                               const Standard_Real aA1,
                               const Standard_Real aA2,
                               Standard_Real& aA);

The treatment p-curves convergent in node.
The refining the angles of p-curves taking into account
bounging curves if exist.

Test case for issue CR24655

6 years agoDeleted TODO which is not reproduced in Debug mode.
apn [Fri, 21 Feb 2014 07:50:37 +0000]
Deleted TODO which is not reproduced in Debug mode.

6 years ago0024648: Different types of intersection curves between Cone and Torus with a differe...
emv [Thu, 20 Feb 2014 13:14:04 +0000]
0024648: Different types of intersection curves between Cone and Torus with a different order of arguments

Correct treatment of the cases with Cone and Torus.
Test cases for issue CR24648

6 years ago0024620: BOPAlgo_CheckerSI returns interferences that are not sub-shapes of the sourc...
pkv [Thu, 20 Feb 2014 13:07:51 +0000]
0024620: BOPAlgo_CheckerSI returns interferences that are not sub-shapes of the source shape

void BOPAlgo_CheckerSI::PrepareCopy()
has been added.
   - provides the copy of the argument
   - provides links between the copy and the original
- protected method:
void BOPAlgo_CheckerSI::PostTreatCopy()
has been added.
Purpose: provides post treat actions wit the copy.

void BOPAlgo_PaveFiller::Perform()
The try/catch mechanism is used inside the method

Standard_Integer bopcheck
  (Draw_Interpretor& di, Standard_Integer n,  const char** a )
The redundant copying is removed.

Standard_Integer bopargcheck
  (Draw_Interpretor& di, Standard_Integer n,  const char** a )
The redundant copying is removed.


Test cases for issue CR24620
Small correction of text case for issue CR24620

6 years ago0024627: Extrema 2d between an arc of circle and an ellipse crashes
ifv [Thu, 20 Feb 2014 12:59:35 +0000]
0024627: Extrema 2d between an arc of circle and an ellipse crashes

Test case for issue CR24627

6 years ago0024618: Embedding vertex in BOP depends on the order of arguments
pkv [Thu, 20 Feb 2014 12:53:03 +0000]
0024618: Embedding vertex in BOP depends on the order of arguments

Changes: class BOPDS_DS
   - method:
void BOPDS_DS::AloneVertices(const Standard_Integer theI,
                             BOPCol_ListOfInteger& theLI)const
The condition for DS-index of a vertex has been corrected

class BOPTools_AlgoTools3D
   - static function:
Standard_Boolean HasGeometry(const TopoDS_Shape& aS)
The returnig value  has been corrected for shapes of vertex type

Modified entities:

Test cases for issue CR24618

6 years ago0024635: Eliminate trivial compiler warnings by GCC in Debug mode
abv [Fri, 14 Feb 2014 12:03:01 +0000]
0024635: Eliminate trivial compiler warnings by GCC in Debug mode

6 years ago0024642: TKOpenGl, OpenGl_Text - rotation angle is ignored in case of 2D text
osa [Wed, 19 Feb 2014 10:27:15 +0000]
0024642: TKOpenGl, OpenGl_Text - rotation angle is ignored in case of 2D text

6 years ago0024641: TKOpenGl - public methods of OpenGl_Text and OpenGl_AspectText classes are...
osa [Wed, 19 Feb 2014 10:17:48 +0000]
0024641: TKOpenGl - public methods of OpenGl_Text and OpenGl_AspectText classes are not exported

6 years ago0024640: Broken logic of check of variable for zero in IntCurvesFace_Intersector...
abv [Wed, 19 Feb 2014 04:54:49 +0000]
0024640: Broken logic of check of variable for zero in IntCurvesFace_Intersector constructor

The check is fixed to avoid FPE division by zero

6 years ago0024558: Boolean operation can not create all results solids which should be built.
emv [Wed, 12 Feb 2014 11:40:05 +0000]
0024558: Boolean operation can not create all results solids which should be built.
Corrections in checking 2d distances when splitting wires.
Test case for the issue.

6 years ago0024624: Lost word in license statement in source files
abv [Thu, 20 Feb 2014 12:06:26 +0000]
0024624: Lost word in license statement in source files

License statement text corrected; compiler warnings caused by Bison 2.41 disabled for MSVC; a few other compiler warnings on 54-bit Windows eliminated by appropriate type cast
Wrong license statements corrected in several files.
Copyright and license statements added in XSD and GLSL files.
Copyright year updated in some files.
Obsolete documentation files removed from DrawResources.

6 years ago0024530: TKMesh - remove unused package IntPoly
aml [Thu, 13 Feb 2014 05:39:50 +0000]
0024530: TKMesh - remove unused package IntPoly

Deletion of package IntPoly.

6 years agoUpdate testing case for issue 0024499
apn [Fri, 14 Feb 2014 07:56:57 +0000]
Update testing case for issue 0024499
Added XSDRAW instead of XDE

6 years agoAdded QA command OCC24086 and test case bugs/modalg_5/bug24086 for issue 24086.
apn [Thu, 13 Feb 2014 09:44:30 +0000]
Added QA command OCC24086 and test case bugs/modalg_5/bug24086 for issue 24086.

6 years agoAdded test case bugs/modalg_5/bug24074 for issue 24074.
apn [Thu, 13 Feb 2014 09:40:26 +0000]
Added test case bugs/modalg_5/bug24074 for issue 24074.

6 years agoAdded test case bugs/step/bug24055 for issue 24055.
apn [Thu, 13 Feb 2014 09:37:55 +0000]
Added test case bugs/step/bug24055 for issue 24055.

6 years agoAdded QA command OCC24051 and test case bugs/vis/bug24051 for issue 24051.
apn [Thu, 13 Feb 2014 09:25:57 +0000]
Added QA command OCC24051 and test case bugs/vis/bug24051 for issue 24051.

6 years agoAdded QA command OCC24012 and test case bugs/modalg_5/bug24012 for issue 24012.
apn [Thu, 13 Feb 2014 09:22:06 +0000]
Added QA command OCC24012 and test case bugs/modalg_5/bug24012 for issue 24012.

6 years agoAdded test case bugs/vis/bug23984 for issue 23984.
apn [Thu, 13 Feb 2014 09:17:37 +0000]
Added test case bugs/vis/bug23984 for issue 23984.

6 years ago0024585: Wrong pcurve of the section curve
nbv [Wed, 12 Feb 2014 10:21:54 +0000]
0024585: Wrong pcurve of the section curve

PCurve is extended to surface boundary forcefully.
It is made by finding some additional points (if it is possibly).
"bopcurves" DRAW-command returns number of found 3D-curves and (as an option) 2D-curve (see help for more detail information).

Test cases for issue CR24585

6 years ago0024358: TKV3d - connected structures are not re-computed on device lost
aba [Thu, 13 Feb 2014 09:09:42 +0000]
0024358: TKV3d - connected structures are not re-computed on device lost

Graphic3d_StructureManager::ReComputeStructures() method was corrected to consider all child (connected) structures.
Corrected remarks: added image dump in test case; corrected method name.