-
Notifications
You must be signed in to change notification settings - Fork 2.1k
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
[PART-4] CPUAggregation Refactor : Add CPU Aggregation support to GridAggregationLayer #3954
Conversation
48ef7a4
to
7b72da4
Compare
ca9dcac
to
6455fbd
Compare
7b72da4
to
236e258
Compare
6455fbd
to
f98a4cc
Compare
236e258
to
780d45a
Compare
f98a4cc
to
8506c52
Compare
…ual triggers not needed anymore
@@ -47,8 +51,17 @@ void main(void) { | |||
|
|||
vec2 pos = project_to_pixel(windowPos); | |||
|
|||
vec2 pixelXY64[2]; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks like you are not handling positions64Low
for ScreenGridLayer
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
pixelXY64
defined here only to perform fp64 arithmetic for division operation, applies to both world space aggregation and screen space, but I am not actually using low fp64 positions attributes, doesn't seem to be needed, we can add if there is a need.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The projection to clipspace is inaccurate if you don't use the low parts. This applies to both geospatial and non-geospatial.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm only making the comment here because GitHub doesn't allow me to comment on a line you didn't change.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Updated attributes to be 64bit and added attribute to the shader.
603efb9
to
e596d1a
Compare
contourSegments.length > 0 && | ||
new LinesSubLayerClass( | ||
this.getSubLayerProps({ | ||
id: 'contour-line-layer' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- Just use sub layer ids "lines" and "bands". They will be concatenated with the parent layer's id so you don't have to call out that they are children of a contour layer.
- The sub layer ids should be documented in
contour-layer.md
} | ||
}); | ||
} | ||
// Private (Sublayers) | ||
|
||
_onGetSublayerColor(element) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is extremely expensive (creating inline functions inside an iteration).
You should be able to do something like contours[object.contourIndex].color
.
Same thing for _onGetSublayerStrokeWidth
For #3583
NOTE: Splitting #3912 to multiple stacked PRs, will close #3912 (keeping it open for existing discussions to be resolved).
Background
Change List
CPUGridLayer
).ContourLayer
,ScreenGridLayer
, andGPUGridLayer
to extend formGridAggregationLayer
. [NOTE:CPUGridLayer
doesn't useGridAggregationLayer
, which requires more sophisticated dimension management, same as `HexagonLayer]