Anonymous | Login | 2021-01-18 07:15 MSK | ![]() |
My View | View Issues | Change Log | Roadmap |
View Issue Details [ Jump to Notes ] | [ Issue History ] [ Print ] | ||||||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||||||
0029254 | Community | [OCCT] OCCT:Visualization | public | 2017-10-23 12:59 | 2020-08-28 14:25 | ||||||||
Reporter | BenjaminBihler | ||||||||||||
Assigned To | kgv | ||||||||||||
Priority | normal | Severity | minor | ||||||||||
Status | new | Resolution | open | ||||||||||
Platform | Windows | OS | VC++ 2015 | OS Version | 64 bit | ||||||||
Product Version | [OCCT] 7.2.0 | ||||||||||||
Target Version | [OCCT] 7.6.0* | Fixed in Version | |||||||||||
Summary | 0029254: [Regression to OCCT 7.1.0] Programmatically highlighting AIS_Trihedron is not possible anymore | ||||||||||||
Description | When an AIS_Trihedron is highlighted programmatically, its colour does not change to the chosen color. For other AIS objects highlighting works as expected. | ||||||||||||
Steps To Reproduce | Insert the following lines into samples\qt\Tutorial\src\DocumentTut.cxx after "emit selectionChanged();" and before "fitAll();": Handle(AIS_Trihedron) trihedron = new AIS_Trihedron(new Geom_Axis2Placement(gp_Ax2())); getContext()->Display(trihedron, Standard_False); getContext()->HilightWithColor(trihedron, getContext()->HighlightStyle(), Standard_True); getContext()->HilightWithColor(AISBottle, getContext()->HighlightStyle(), Standard_True); The following includes have to be added: #include <AIS_Trihedron.hxx> #include <Geom_Axis2Placement.hxx> When drawing the bottle, the bottle is correctly highlighted but not the trihedron. This behaviour has changed since OCCT 7.1.0. | ||||||||||||
Tags | No tags attached. | ||||||||||||
Test case number | |||||||||||||
Attached Files | |||||||||||||
![]() |
|||||||||||||
|
![]() |
|
(0071719) kgv (developer) 2017-10-23 17:16 edited on: 2017-10-23 17:17 |
This is a limitation of custom highlighting API, existed long time before AIS_Trihedron modification (AIS_Trihedron::IsAutoHilight() and AIS_Trihedron::HilightSelected() are now overridden)://! Method which draws selected owners ( for fast presentation draw ) virtual void HilightSelected (const Handle(PrsMgr_PresentationManager3d)& PM, const SelectMgr_SequenceOfOwner& Seq); To overcome this limitation, related API methods (e.g. SelectMgr_SelectableObject::HilightSelected()) should be modified to receive style Prs3d_Drawer as in case of Auto Hilight is turned on - see also current implementation of AIS_InteractiveContext::highlightGlobal() which just ignores passed style because HilightSelected() does not receive it: if (!aGlobOwner->IsAutoHilight()) { SelectMgr_SequenceOfOwner aSeq; for (AIS_NListOfEntityOwner::Iterator aSelIter (mySelection->Objects()); aSelIter.More(); aSelIter.Next()) { if (aSelIter.Value()->IsSameSelectable (theObj)) { aSeq.Append (aSelIter.Value()); } } theObj->HilightSelected (myMainPM, aSeq); ///!<< } else { aGlobOwner->HilightWithColor (myMainPM, theStyle, aHiMode); ///!<< } |
![]() |
|||
Date Modified | Username | Field | Change |
2017-10-23 12:59 | BenjaminBihler | New Issue | |
2017-10-23 12:59 | BenjaminBihler | Assigned To | => kgv |
2017-10-23 13:01 | kgv | Relationship added | related to 0027958 |
2017-10-23 17:08 | kgv | Relationship added | related to 0027818 |
2017-10-23 17:16 | kgv | Note Added: 0071719 | |
2017-10-23 17:17 | kgv | Note Edited: 0071719 | View Revisions |
2017-10-23 17:17 | kgv | Note Edited: 0071719 | View Revisions |
2019-09-04 17:50 | kgv | Target Version | 7.4.0 => 7.5.0 |
2019-11-18 17:17 | kgv | Relationship added | related to 0031153 |
2020-08-28 14:25 | kgv | Target Version | 7.5.0 => 7.6.0* |
Copyright © 2000 - 2021 MantisBT Team |