Access data within timerange

8 views (last 30 days)
Thomas Horst
Thomas Horst on 11 Jul 2020
Commented: Thomas Horst on 12 Jul 2020
Hey guys,
I use timerange for accessing data in huge timetables (measurements) which works perfectly. I store these timeranges in cells.
However, in some cases it would be useful to get the starttime or endtime of a certain timerange, so another function can handle it (e. g. as a datetime). Or just to calculate the duration of the timerange.
I did not find anything like this, so I hope someone can help me! Thanks!

Accepted Answer

dpb
dpb on 11 Jul 2020
The timerange object is another of those opaque thingies TMW has fallen in love with that has useful stuff inside it that is hidden and not documented. :(
You can get the two interval values and the type of interval as two-step process--
s=timerange(t1,t2);
ss=struct(s); % convert the timerange object to a struct that reveals internals
t1=ss.first; % retrieve the start
t2=ss.last; % end times in timerange s
However, since you have to have set t1,t2 for the timeranage object when you created it; it would be more straightforward to create your own "object" or array of objects that contains the information for the specific tmerange then. At the convenience of not having to carry those around but being able to reconstruct on demand for any specific timerange at hand.
  1 Comment
Thomas Horst
Thomas Horst on 12 Jul 2020
Thank you so much, this is exactly what I needed!
You were right, of course, in your closing remarks. Next time I'll do it like that. Unfortunately, I already have hundreds of timeranges in my project and no more sources.

Sign in to comment.

More Answers (0)

Categories

Find more on Graphics Object Programming in Help Center and File Exchange

Products


Release

R2020a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!