-
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
Data source outline width #2255
Conversation
1. Add `outlineWidth` property to all geometry graphics objects. 2. Update Updaters to expose outline information. 3. Fix issues in DataSource geometry specs.
Also add `Scene.minimumAliasedLineWidth`
Also hook up `stroke-width` property from simple style spec.
@@ -2334,6 +2334,10 @@ define([ | |||
return new PickId(this._pickObjects, key, Color.fromRgba(key)); | |||
}; | |||
|
|||
Context.prototype.putLineWidthInValidRange = function(width) { |
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.
Context
is private. We try to avoid using it unless we are in rendering code. Perhaps make this Scene.clampLineWidth
even if we don't want to make it public.
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.
No problem, wasn't sure if Scene or Context was the more appropriate place. I'll leave it private for now, we can always expose it later if we need to.
Move and rename `Context.putLineWidthInValidRange` to `Scene.clampLineWidth`
I forgot to add that the only way to test this on Windows is to use Chrome Canary with the |
Only depth test opaque outlines, move outline primitives last to be drawn.
@bagnell Had some offline comments which I've now made. This is ready for another look or to be merged. |
…eWidth Data source outline width
The bulk of this change adds geometry outline width support to the
DataSource
layer. This is exposed via a newoutlineWidth
property onEllipseGraphics
,EllipsoidGraphics
,PolygonGraphics
,RectangleGraphics
, andWallGraphics
. For non-time-dynamic data,StaticOutlineGeometryBatch
now groups geometry by width before splitting them into translucent/opaque groups. Time-dynamic data regenerates geometry every frame as it was already doing (but now includes outline width).Also:
outlineWidth
support to CZML geometry packets.stroke-width
support to the GeoJSON simple-style implementation.Scene.clampLineWidth
, which clamps the value to line widths supported by the underlying WebGL implementation.Should we add information somewhere regarding browsers only supporting a line width of 1 on Windows? I'm sure it will continue to be a common question on the mailing list; more so now that we're exposing it at a higher level.