-
Notifications
You must be signed in to change notification settings - Fork 3.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
CZML Interval Edge Case Error #9637
Conversation
Thanks for the pull request @srothst1!
Reviewers, don't forget to make sure that:
|
…moved broken function call from Viewer.js
Given the console error: |
Removing See why the listener never got added in the first place. Step through |
…st, which seems to fix the bug
@lilleyse It seems like One quick fix would be to call |
@lilleyse I believe the simplest solution is to allow for the After updating yields which is both intuitive and user-friendly functionality. Here is a sandcastle demo. |
Now that I've stepped through the timeline code a little bit I'm pretty sure the There's a divide by zero here when Rather than relying on this behavior I think a better solution is to clamp Open to other suggestions as this isn't a system I'm super familiar with. |
@lilleyse From what I can tell, the timeline code and the generated CSS code handle Of your two proposed solutions, I think the second is slightly more intuitive. I implemented it in the most recent commit. When Curious to hear your overall thoughts! |
Ultimately it is arbitrary but |
@lilleyse I just updated
|
Thanks @srothst1, I pushed a couple small commits (one was a small mistake in my example code above). Once CI passes this will be ready to merge. |
Fixes #9097
Resolves an error related to removing a CZML datasource when the clock interval has a duration of zero.
The ISO documentation conclusively says that a duration can be zero. The documentation also indicates that the amount of intervening time on a time interval is expressed by a duration. Thus, the original suggestion in #9097 to not permit CZML data with clock intervals of duration 0 does not seem to meet ISO standards.
The methods
removeAll()
andremove()
in DataSourceCollection.js both cause the same problem outlined in the issue. When removing a dataSource with an intervening time of 0, the error stems from the linethis._dataSourceRemoved.raiseEvent(this, dataSource);
in both methods. I looked at the methodraiseEvent
in Event.js but was not able to find the cause of the error. Assistance on this matter would be appreciated.This sandcastle demo shows the different test cases as well as the errors.
@ebogo1
@lilleyse