View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0023613 | Open CASCADE | OCCT:Modeling Algorithms | public | 2012-12-04 11:10 | 2013-04-29 15:23 |
Reporter | Assigned To | ||||
Priority | normal | Severity | feature | ||
Status | closed | Resolution | fixed | ||
Product Version | 6.5.4 | ||||
Target Version | 6.6.0 | Fixed in Version | 6.6.0 | ||
Summary | 0023613: Add diagnostic tool for BOP | ||||
Description | In order to facilitate debug of BOP (mainly in context of 0021762), I propose to add general tool for automatic diagnostic of problems in BOP, to OCCT code. The diagnostics should be disabled by default but activated by some environment variable (e.g. CSF_DEBUG_BOP). This would enable possibility for any application using BOP to easily detect problems and generate bug reports, even without rebuilding. The idea is as follows: 1. The check can be integrated to BRepAlgoAPI_* classes 2. If environment variable CSF_DEBUG_BOP is defined, each call to boolean operation should check both its arguments and result 3. The check should ensure that all problems relevant for BOP are detected: - general shape validity (checkshape) - specific criteria for BOP (bopargcheck) - tolerance - anything else as needed.. 4. If the check fails, save relevant shape(s) and DRAW script to reproduce the problem: - location to save can be specified by the same variable CSF_DEBUG_BOP or different one - if check is failed on argument shape, save that shape and put DRAW command for restoring it and launching relevant check (e.g. checkshape) on it - if check is failed on result, save both arguments and put DRAW command for restoring arguments, running operation, and launching relevant check - the names for saved shapes and logs can be generated automatically (e.g. "bop_pb_123_arg1.brep", "bop_pb_123.tcl") - a message should be printed to cout to indicate that some problem has been detected 5. Naturally this possibility should be documented to be usable in projects | ||||
Additional information and documentation updates | Added new static public function BRepAlgoAPI::BoolDump() which is used for saving the initial shapes and the result shape of boolean operation in case if the arguments or the result are not valid shapes in terms of BRepAlgoAPI_Check. This feature is activated by environment variable CSF_DEBUG_BOP. This variable should specify path to generated scripts and saving argument and result of Boolean operations. | ||||
Tags | No tags attached. | ||||
Test case number | |||||
|
In the class BRepAlgoAPI_BooleanOperation.cxx added prototypes of methods for dump Boolean operation with invalid arguments or invalid result in the tcl script. This features is activated by environment variable CSF_DEBUG_BOP as proposed above. This variable should specify path to generated scripts and saving argument and result of Boolean operations. |
|
Dear BugMaster, All modifications have been made in the issue 0023648. |
|
All modifications have been made in the issue 0023648. |
Date Modified | Username | Field | Change |
---|---|---|---|
2012-12-04 11:10 |
|
New Issue | |
2012-12-04 11:10 |
|
Assigned To | => pkv |
2012-12-04 11:10 |
|
Relationship added | related to 0021762 |
2012-12-06 10:13 |
|
Assigned To | pkv => gka |
2012-12-06 10:58 |
|
Status | new => assigned |
2012-12-06 18:35 |
|
Assigned To | gka => emv |
2012-12-06 18:48 |
|
Note Added: 0022602 | |
2013-02-27 11:22 |
|
Relationship added | parent of 0023648 |
2013-03-12 11:31 |
|
Note Added: 0023660 | |
2013-03-12 11:31 |
|
Assigned To | emv => mkv |
2013-03-12 11:31 |
|
Status | assigned => resolved |
2013-03-12 11:31 |
|
Additional Information Updated | |
2013-03-14 11:13 | bugmaster | Status | resolved => reviewed |
2013-03-14 11:13 | bugmaster | Note Added: 0023714 | |
2013-03-14 11:13 | bugmaster | Status | reviewed => verified |
2013-03-14 11:13 | bugmaster | Resolution | open => fixed |
2013-03-14 11:13 | bugmaster | Assigned To | mkv => emv |
2013-04-23 13:35 |
|
Status | verified => closed |
2013-04-29 15:23 |
|
Fixed in Version | => 6.6.0 |