mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-05-21 10:55:33 +03:00
0025532: Visualization - fix cross-references between AIS_ConnectedInteractive and connected presentation
New test case added.
This commit is contained in:
parent
df932fdfb2
commit
c8be748cd4
@ -96,8 +96,6 @@ void AIS_ConnectedInteractive::Connect (const Handle(AIS_InteractiveObject)& the
|
|||||||
{
|
{
|
||||||
myTypeOfPresentation3d = myReference->TypeOfPresentation3d();
|
myTypeOfPresentation3d = myReference->TypeOfPresentation3d();
|
||||||
}
|
}
|
||||||
|
|
||||||
theAnotherObj->AddChild (this);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//=======================================================================
|
//=======================================================================
|
||||||
|
54
tests/bugs/vis/bug25532
Normal file
54
tests/bugs/vis/bug25532
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
puts "============"
|
||||||
|
puts "OCC25532"
|
||||||
|
puts "============"
|
||||||
|
puts ""
|
||||||
|
#######################################################################
|
||||||
|
# Visualization - fix cross-references between AIS_ConnectedInteractive
|
||||||
|
# and connected presentation
|
||||||
|
#######################################################################
|
||||||
|
|
||||||
|
pload MODELING VISUALIZATION
|
||||||
|
psphere s 0.5
|
||||||
|
tclean s
|
||||||
|
incmesh s 0.001
|
||||||
|
trinfo s
|
||||||
|
|
||||||
|
vinit View1
|
||||||
|
vclear
|
||||||
|
vaxo
|
||||||
|
vcaps -vbo 0
|
||||||
|
vsetdispmode 1
|
||||||
|
vdefaults absDefl=1.0
|
||||||
|
set aMemInit [meminfo h]
|
||||||
|
|
||||||
|
set aNb 1000
|
||||||
|
|
||||||
|
# display as copies
|
||||||
|
eval compound [lrepeat $aNb s] ss
|
||||||
|
explode ss
|
||||||
|
for {set i 1} {$i <= $aNb} {incr i} { vdisplay -noupdate ss_${i}; vsetlocation -noupdate ss_${i} 0 0 s }
|
||||||
|
vfit
|
||||||
|
set aMemDisp1 [meminfo h]
|
||||||
|
vclear
|
||||||
|
set aMemClear1 [meminfo h]
|
||||||
|
|
||||||
|
# display as connected instances of single presentation
|
||||||
|
vconnectto i_1 0 0 0 s
|
||||||
|
for {set i 2} {$i < $aNb} {incr i} { vconnectto i_${i} ${i} 0 0 i_1 }
|
||||||
|
set aMemDisp2 [meminfo h]
|
||||||
|
vclear
|
||||||
|
set aMemClear2 [meminfo h]
|
||||||
|
|
||||||
|
puts "Initial memory: [expr $aMemInit / (1024 * 1024)] MiB"
|
||||||
|
puts "Displaying (simple): [expr $aMemDisp1 / (1024 * 1024)] MiB"
|
||||||
|
puts "Clearing (simple): [expr $aMemClear1 / (1024 * 1024)] MiB"
|
||||||
|
puts "Displaying (connected): [expr $aMemDisp2 / (1024 * 1024)] MiB"
|
||||||
|
puts "Clearing (connected): [expr $aMemClear2 / (1024 * 1024)] MiB"
|
||||||
|
|
||||||
|
set aRatio [expr $aMemClear2 / double($aMemClear1)]
|
||||||
|
|
||||||
|
# check if the memory difference is greater than 10%
|
||||||
|
if [expr $aRatio > 1.1] {
|
||||||
|
puts "Error : TEST FAILED"
|
||||||
|
}
|
||||||
|
|
Loading…
x
Reference in New Issue
Block a user