mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-04-10 18:51:21 +03:00
0033114: Visualization - AIS_Animation returns 0 elapsed time after finishing playback
Added -elapsedTime option to DRAW vanim command
This commit is contained in:
parent
a939fd40eb
commit
b9f787f180
@ -251,7 +251,9 @@ void AIS_Animation::Stop()
|
|||||||
myState = AnimationState_Stopped;
|
myState = AnimationState_Stopped;
|
||||||
if (!myTimer.IsNull())
|
if (!myTimer.IsNull())
|
||||||
{
|
{
|
||||||
|
const Standard_Real anElapsedTime = ElapsedTime();
|
||||||
myTimer->Stop();
|
myTimer->Stop();
|
||||||
|
myTimer->Seek (Min (Duration(), anElapsedTime));
|
||||||
}
|
}
|
||||||
|
|
||||||
for (NCollection_Sequence<Handle(AIS_Animation)>::Iterator anIter (myAnimations); anIter.More(); anIter.Next())
|
for (NCollection_Sequence<Handle(AIS_Animation)>::Iterator anIter (myAnimations); anIter.More(); anIter.Next())
|
||||||
|
@ -7296,9 +7296,10 @@ static Standard_Integer VAnimation (Draw_Interpretor& theDI,
|
|||||||
Standard_Real aPlaySpeed = 1.0;
|
Standard_Real aPlaySpeed = 1.0;
|
||||||
Standard_Real aPlayStartTime = anAnimation->StartPts();
|
Standard_Real aPlayStartTime = anAnimation->StartPts();
|
||||||
Standard_Real aPlayDuration = anAnimation->Duration();
|
Standard_Real aPlayDuration = anAnimation->Duration();
|
||||||
Standard_Boolean isFreeCamera = Standard_False;
|
Standard_Boolean isFreeCamera = Standard_False;
|
||||||
Standard_Boolean toPauseOnClick = Standard_True;
|
Standard_Boolean toPauseOnClick = Standard_True;
|
||||||
Standard_Boolean isLockLoop = Standard_False;
|
Standard_Boolean isLockLoop = Standard_False;
|
||||||
|
Standard_Boolean toPrintElapsedTime = Standard_False;
|
||||||
|
|
||||||
// video recording parameters
|
// video recording parameters
|
||||||
TCollection_AsciiString aRecFile;
|
TCollection_AsciiString aRecFile;
|
||||||
@ -7352,6 +7353,11 @@ static Standard_Integer VAnimation (Draw_Interpretor& theDI,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else if (anArg == "-elapsedtime"
|
||||||
|
|| anArg == "-elapsed")
|
||||||
|
{
|
||||||
|
toPrintElapsedTime = Standard_True;
|
||||||
|
}
|
||||||
else if (anArg == "-resume")
|
else if (anArg == "-resume")
|
||||||
{
|
{
|
||||||
toPlay = Standard_True;
|
toPlay = Standard_True;
|
||||||
@ -7760,8 +7766,17 @@ static Standard_Integer VAnimation (Draw_Interpretor& theDI,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
ViewerTest::CurrentEventManager()->AbortViewAnimation();
|
if (anAnimation.IsNull() || anAnimation->IsStopped())
|
||||||
ViewerTest::CurrentEventManager()->SetObjectsAnimation (Handle(AIS_Animation)());
|
{
|
||||||
|
ViewerTest::CurrentEventManager()->AbortViewAnimation();
|
||||||
|
ViewerTest::CurrentEventManager()->SetObjectsAnimation(Handle(AIS_Animation)());
|
||||||
|
}
|
||||||
|
|
||||||
|
if (toPrintElapsedTime)
|
||||||
|
{
|
||||||
|
theDI << "Elapsed Time: " << anAnimation->ElapsedTime() << " s\n";
|
||||||
|
}
|
||||||
|
|
||||||
if (!toPlay && aRecFile.IsEmpty())
|
if (!toPlay && aRecFile.IsEmpty())
|
||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
@ -14338,13 +14353,14 @@ List existing animations:
|
|||||||
vanim
|
vanim
|
||||||
|
|
||||||
Animation playback:
|
Animation playback:
|
||||||
vanim name {-play|-resume|-pause|-stop} [playFrom [playDuration]]
|
vanim name {-play|-resume|-pause|-stop} [playFrom [playDuration]] [-speed Coeff]
|
||||||
[-speed Coeff] [-freeLook] [-noPauseOnClick] [-lockLoop]
|
[-freeLook] [-noPauseOnClick] [-lockLoop] [-elapsedTime]
|
||||||
|
|
||||||
-speed playback speed (1.0 is normal speed)
|
-speed playback speed (1.0 is normal speed)
|
||||||
-freeLook skip camera animations
|
-freeLook skip camera animations
|
||||||
-noPauseOnClick do not pause animation on mouse click
|
-noPauseOnClick do not pause animation on mouse click
|
||||||
-lockLoop disable any interactions
|
-lockLoop disable any interactions
|
||||||
|
-elapsedTime prints elapsed time in seconds"
|
||||||
|
|
||||||
Animation definition:
|
Animation definition:
|
||||||
vanim Name/sub/name [-clear] [-delete]
|
vanim Name/sub/name [-clear] [-delete]
|
||||||
|
Loading…
x
Reference in New Issue
Block a user