View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0030728 | Open CASCADE | OCCT:Visualization | public | 2019-05-22 17:31 | 2020-11-30 11:00 |
Reporter | nds | Assigned To | bugmaster | ||
Priority | normal | Severity | integration request | ||
Status | closed | Resolution | fixed | ||
Target Version | 7.4.0 | Fixed in Version | 7.4.0 | ||
Summary | 0030728: Visualization - using one implementation of highlight/unhighlight in context | ||||
Description | It is proposed to move logic of highlight/unhighlight in two separate methods in AIS_InteractiveContext and update highlight state by using the methods only. | ||||
Tags | No tags attached. | ||||
Test case number | Not required | ||||
|
Branch CR30728 has been created by nds. SHA-1: 36b87936acf5a89d573663b5e8d086a4a4a084d3 Detailed log of new commits: Author: nds Date: Wed May 22 17:33:02 2019 +0300 0030728: Visualization - using one implementation of highlight/unhighlight in context |
|
Branch CR30728_1 has been created by nds. SHA-1: 32b949305614baa81e6e0c6e037d8641be739ab1 Detailed log of new commits: Author: nds Date: Wed May 22 17:33:02 2019 +0300 0030728: Visualization - using one implementation of highlight/unhighlight in context |
|
Branch CR30728_1 has been updated by nds. SHA-1: ef29a0836580b047dfc63aafdec510ab11f7bdbe Detailed log of new commits: Author: nds Date: Tue Jun 4 23:15:52 2019 +0300 0030728: Visualization - using one implementation of highlight/unhighlight in context #compilation correction |
|
Branch CR30728_2 has been created by nds. SHA-1: dd23cc853300487f6e13bb929800821a099fa29a Detailed log of new commits: Author: nds Date: Tue Jun 4 23:19:59 2019 +0300 0030728: Visualization - using one implementation of highlight/unhighlight in context |
|
--- a/src/AIS/AIS_InteractiveContext.cxx +++ b/src/AIS/AIS_InteractiveContext.cxx @@ -1947,7 +1947,9 @@ void AIS_InteractiveContext::EraseGlobal (const Handle(AIS_InteractiveObject)& t } const Standard_Integer aDispMode = theIObj->HasHilightMode() ? theIObj->HilightMode() : 0; - unhighlightOwners (theIObj); + AIS_NListOfEntityOwner anOwners; + anOwners.Append(theIObj->GlobalSelOwner()); + unhighlightOwners (anOwners); I would expect this breaking #0030717 back, doesn't it? |
|
Branch CR30728_3 has been created by nds. SHA-1: 1ea5dd67b1890fd7002cd2be6682fda2fef09cfb Detailed log of new commits: Author: nds Date: Tue Jun 4 23:19:59 2019 +0300 0030728: Visualization - using one implementation of highlight/unhighlight in context (cherry picked from commit dd23cc853300487f6e13bb929800821a099fa29a) |
|
Branch CR30728_3 has been updated by nds. SHA-1: e62abffbf6139d6d4b39ff8dea87d6e5f178a010 Detailed log of new commits: Author: nds Date: Thu Aug 15 07:35:04 2019 +0300 0030728: Visualization - using one implementation of highlight/unhighlight in context # correction for regression in clear selection. |
|
Branch CR30728_4 has been created by nds. SHA-1: 55c834662df4394843ffe5934ae759c394def3d6 Detailed log of new commits: Author: nds Date: Tue Jun 4 23:19:59 2019 +0300 0030728: Visualization - using one implementation of highlight/unhighlight in context |
|
Dear Kirill, it is ready for review. Job: http://vm-jenkins-test-12.nnov.opencascade.com:8080/view/CR30728_3-master-NDS/ (One failed case comes with WEEK-33 were the branch started) Thank you in advance, Natalia |
|
+ //! Helper function that highlights the owners given with <theStyle> with check + //! for AutoHighlight, e.g. is used for selection. + Standard_EXPORT void highlightOwners (const AIS_NListOfEntityOwner& theOwners, + const Standard_Boolean& theToUseObjectDisplayMode); Why Standard_Boolean&? The description does not match method. //! Helper function that highlights the owners given with <theStyle> with check //! for AutoHighlight, e.g. is used for selection. Standard_EXPORT void unhighlightOwners (const AIS_NListOfEntityOwner& theOwners, const Standard_Boolean theIsToHilightSubIntensity = Standard_False); The description does not match method. - Handle(AIS_GlobalStatus) aStatus; - if (!myObjects.Find (anInteractive, aStatus)) - { - continue; - } + Handle(AIS_GlobalStatus)& aStatus = myObjects.ChangeFind (anInteractive); ... - if (aStatus->IsSubIntensityOn()) + if (!aStatus.IsNull() && aStatus->IsSubIntensityOn()) This does not work like this - either ChangeFind() should be replaced with seekers, or NULL check should be removed (myObjects never contains NULL entities). |
|
- const Standard_Integer aHiMode = getHilightMode (anObj, aStyle, -1); + highlightOwners (anOwners, Standard_False/*check if it is really important*/); As AIS_InteractiveContext::highlightSelected() is expected to be called on displayed object, I think that Standard_False and this flag is unnecessary. |
|
Branch CR30728_4 has been updated by nds. SHA-1: c44e991189bf66ea65738ceb9e98ae3144139028 Detailed log of new commits: Author: nds Date: Mon Aug 19 15:58:27 2019 +0300 0030728: Visualization - using one implementation of highlight/unhighlight in context # remarks correction |
|
Branch CR30728_5 has been created by nds. SHA-1: 021714ea264358c2c9a55718eb8a154f72a1c272 Detailed log of new commits: Author: nds Date: Mon Aug 19 16:01:48 2019 +0300 0030728: Visualization - using one implementation of highlight/unhighlight in context # remarks correction |
|
Dear Kirill, remarks are corrected. Could you please check the branch once again. Job: http://vm-jenkins-test-12.nnov.opencascade.com:8080/view/CR30728_3-master-NDS/ Thank you for your help, Natalia |
|
- highlightGlobal (theIObj, aStatus->HilightStyle(), theDispMode); + highlightGlobal (theIObj, aStatus->HilightStyle()); ... - const Standard_Integer aHiMode = getHilightMode (theObj, theStyle, theDispMode); + const Handle(AIS_GlobalStatus)& aStatus = myObjects (theObj); + const Standard_Integer aHiMode = getHilightMode (theObj, theStyle, aStatus->DisplayMode()); This change adds one extra map lookup, which in most cases is redundant. Could you please avoid this? |
|
Branch CR30728_5 has been updated by nds. SHA-1: 9c88ed07e2aa03d0c5366dfc97395946e1dd8be4 Detailed log of new commits: Author: nds Date: Tue Aug 20 11:23:37 2019 +0300 0030728: Visualization - using one implementation of highlight/unhighlight in context # remark correction |
|
Branch CR30728_6 has been created by nds. SHA-1: db52e4bf683e8078251b8866b48834e53c2f00df Detailed log of new commits: Author: nds Date: Tue Aug 20 11:52:27 2019 +0300 0030728: Visualization - using one implementation of highlight/unhighlight in context New internal methods: - highlightOwners/unhighlightOwners with container of owners as an argument. Modifications: - SetSelected: SetHilightStatus/SetHilightStyle has removed as processed for global owner in highlightOwners() from highlightSelected(), - AddOrRemoveSelected: functionality of SetHilightStatus/SetHilightStyle/ClearSelected is implemented in unhighlightOwners. - highlightGlobal/unhighlightGlobal are not const as called from not const methods. |
|
Done. |
|
Combination - OCCT branch : CR30728_6 master SHA - db52e4bf683e8078251b8866b48834e53c2f00df 5f5b1aed1c6e139bbd34314eca77ae7abcd8895c Products branch : master SHA - 32e882a7b3145a66baa739f965d275c822c0bd8a was compiled on Linux, MacOS and Windows platforms and tested in optimize mode. Number of compiler warnings: No new/fixed warnings Regressions/Differences/Improvements: No regressions/differences CPU differences: Debian80-64: OCCT Total CPU difference: 16106.09000000008 / 16105.290000000065 [+0.00%] Products Total CPU difference: 10499.850000000037 / 10484.700000000048 [+0.14%] Windows-64-VC14: OCCT Total CPU difference: 18119.703125 / 18149.296875 [-0.16%] Products Total CPU difference: 12106.671875 / 12045.34375 [+0.51%] Image differences : No differences that require special attention Memory differences : No differences that require special attention |
|
There are differences in images: v3d mesh B3: B3.png differs [3423 different pixels] v3d mesh A2: A2.png differs [3238 different pixels] http://occt-tests/CR30728_3-master-NDS-OCCT/Debian80-64/diff-Debian80-64-image.html http://occt-tests/CR30728_3-master-NDS-OCCT/Windows-64-VC14/diff-Windows-64-VC14-image.html |
|
Branch CR30728_6 has been updated by nds. SHA-1: f34884bfc6cfa14cbd657b2ea6ade317162de513 Detailed log of new commits: Author: nds Date: Wed Sep 4 09:47:42 2019 +0300 0030728: Visualization - using one implementation of highlight/unhighlight in context #fix regression found by DRAW tests - restore previous owners collecting in case of !IsAutoHighlight |
|
Branch CR30728_7 has been created by nds. SHA-1: 22a1922570729f06402e235ebf4490682aa44a33 Detailed log of new commits: Author: nds Date: Wed Sep 4 10:00:42 2019 +0300 0030728: Visualization - using one implementation of highlight/unhighlight in context |
|
Dear Kirill, could you please check the patch once again. (Some previous code is obligatory, it has been removed in previous fix, restored now) The wrong images are corrected. Job: http://jenkins-test-12.nnov.opencascade.com/view/CR30728_3-master-NDS/ Thank you in advance, Natalia |
|
Combination - OCCT branch : CR30728_7 master SHA - 22a1922570729f06402e235ebf4490682aa44a33 5f5b1aed1c6e139bbd34314eca77ae7abcd8895c Products branch : master SHA - 34e9bf11c6b525830b5dee35839707da81e7d1ab was compiled on Linux, MacOS and Windows platforms and tested in optimize mode. Number of compiler warnings: No new/fixed warnings Regressions/Differences/Improvements: No regressions/differences CPU differences: Debian80-64: OCCT --- Products --- Windows-64-VC14: OCCT Total CPU difference: 18231.765625 / 18256.515625 [-0.14%] Products Total CPU difference: 11993.59375 / 12168.265625 [-1.44%] Image differences : No differences that require special attention Memory differences : No differences that require special attention |
|
Branch CR30728_7 has been deleted by inv. SHA-1: 22a1922570729f06402e235ebf4490682aa44a33 |
|
Branch CR30728_6 has been deleted by inv. SHA-1: f34884bfc6cfa14cbd657b2ea6ade317162de513 |
|
Branch CR30728_5 has been deleted by inv. SHA-1: 9c88ed07e2aa03d0c5366dfc97395946e1dd8be4 |
|
Branch CR30728_4 has been deleted by inv. SHA-1: c44e991189bf66ea65738ceb9e98ae3144139028 |
|
Branch CR30728_3 has been deleted by inv. SHA-1: e62abffbf6139d6d4b39ff8dea87d6e5f178a010 |
|
Branch CR30728_2 has been deleted by inv. SHA-1: dd23cc853300487f6e13bb929800821a099fa29a |
|
Branch CR30728_1 has been deleted by inv. SHA-1: ef29a0836580b047dfc63aafdec510ab11f7bdbe |
|
Branch CR30728 has been deleted by inv. SHA-1: 36b87936acf5a89d573663b5e8d086a4a4a084d3 |
occt: master 741c4f3e 2019-09-04 07:00:42 Committer: bugmaster Details Diff |
0030728: Visualization - using one implementation of highlight/unhighlight in context |
Affected Issues 0030728 |
|
mod - src/AIS/AIS_InteractiveContext.cxx | Diff File | ||
mod - src/AIS/AIS_InteractiveContext.hxx | Diff File | ||
mod - src/AIS/AIS_InteractiveContext_1.cxx | Diff File |
Date Modified | Username | Field | Change |
---|---|---|---|
2019-05-22 17:31 | nds | New Issue | |
2019-05-22 17:31 | nds | Assigned To | => kgv |
2019-05-22 17:33 | git | Note Added: 0084552 | |
2019-05-22 17:35 | nds | Assigned To | kgv => nds |
2019-06-04 22:19 | git | Note Added: 0084831 | |
2019-06-04 23:16 | git | Note Added: 0084834 | |
2019-06-04 23:20 | git | Note Added: 0084835 | |
2019-06-05 10:02 | kgv | Note Added: 0084843 | |
2019-07-17 07:04 | nds | Target Version | 7.4.0 => 7.5.0 |
2019-08-02 15:49 | git | Note Added: 0085995 | |
2019-08-15 07:37 | git | Note Added: 0086251 | |
2019-08-15 07:54 | git | Note Added: 0086252 | |
2019-08-15 12:13 | nds | Note Added: 0086258 | |
2019-08-15 12:13 | nds | Assigned To | nds => kgv |
2019-08-15 12:13 | nds | Status | new => resolved |
2019-08-16 16:17 | kgv | Note Added: 0086288 | |
2019-08-16 16:17 | kgv | Assigned To | kgv => nds |
2019-08-16 16:17 | kgv | Status | resolved => assigned |
2019-08-16 16:20 | kgv | Note Added: 0086289 | |
2019-08-19 16:01 | git | Note Added: 0086339 | |
2019-08-19 16:04 | git | Note Added: 0086340 | |
2019-08-20 06:56 | nds | Note Added: 0086344 | |
2019-08-20 06:56 | nds | Assigned To | nds => kgv |
2019-08-20 06:56 | nds | Status | assigned => resolved |
2019-08-20 06:56 | nds | Target Version | 7.5.0 => 7.4.0 |
2019-08-20 09:10 | kgv | Note Added: 0086346 | |
2019-08-20 09:10 | kgv | Assigned To | kgv => nds |
2019-08-20 09:10 | kgv | Status | resolved => assigned |
2019-08-20 09:11 | kgv | Note Edited: 0086346 | |
2019-08-20 11:26 | git | Note Added: 0086358 | |
2019-08-20 11:55 | git | Note Added: 0086360 | |
2019-08-20 11:57 | nds | Note Added: 0086361 | |
2019-08-20 11:57 | nds | Assigned To | nds => kgv |
2019-08-20 11:57 | nds | Status | assigned => resolved |
2019-08-20 12:18 | kgv | Assigned To | kgv => bugmaster |
2019-08-20 12:18 | kgv | Severity | minor => integration request |
2019-08-20 12:18 | kgv | Status | resolved => reviewed |
2019-08-20 19:39 | bugmaster | Test case number | => Not required |
2019-08-20 19:40 | bugmaster | Note Added: 0086377 | |
2019-08-20 19:40 | bugmaster | Status | reviewed => tested |
2019-08-23 15:42 | apn | Note Added: 0086439 | |
2019-08-23 15:42 | apn | Assigned To | bugmaster => nds |
2019-08-23 15:42 | apn | Status | tested => assigned |
2019-09-04 10:01 | git | Note Added: 0086714 | |
2019-09-04 10:03 | git | Note Added: 0086715 | |
2019-09-04 13:19 | nds | Note Added: 0086731 | |
2019-09-04 13:19 | nds | Assigned To | nds => kgv |
2019-09-04 13:19 | nds | Status | assigned => resolved |
2019-09-04 15:05 | kgv | Assigned To | kgv => bugmaster |
2019-09-04 15:05 | kgv | Status | resolved => reviewed |
2019-09-04 16:43 | bugmaster | Note Added: 0086739 | |
2019-09-04 16:43 | bugmaster | Status | reviewed => tested |
2019-09-07 11:38 | bugmaster | Changeset attached | => occt master 741c4f3e |
2019-09-07 11:38 | bugmaster | Status | tested => verified |
2019-09-07 11:38 | bugmaster | Resolution | open => fixed |
2019-09-07 16:26 | git | Note Added: 0086936 | |
2019-09-07 16:27 | git | Note Added: 0086937 | |
2019-09-07 16:27 | git | Note Added: 0086947 | |
2019-09-07 16:27 | git | Note Added: 0086948 | |
2019-09-07 16:27 | git | Note Added: 0086949 | |
2019-09-07 16:27 | git | Note Added: 0086953 | |
2019-09-07 16:27 | git | Note Added: 0086954 | |
2019-09-07 16:27 | git | Note Added: 0086955 | |
2020-11-30 11:00 | kgv | Relationship added | parent of 0031965 |