| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
https://github.com/mapbox/mapbox-gl-js/pull/4781/commits/81363951ed56c54f331ffc8d88e4e5079226a224
|
|
|
|
|
|
|
|
|
|
| |
port https://github.com/mapbox/mapbox-gl-js/pull/4781
This improves legibility of labels that follow lines in pitched views.
The previous approach used the limited information in the shader to
calculate put the glyph in approximatelyright place. The new approach
does this more accurately by doing it on the cpu where we have access to
the entire line geometry.
|
| |
|
| |
|
|
|
|
| |
on tile distance from camera.
|
|
|
|
| |
since they're not implemented there
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
* Always return image metrics exclusive of padding
* Work with integer coordinates whenever possible
* Eliminate redundant SpriteAtlasElement members
* Fix asymmetric re-padding in getIconQuad when pixelRatio != 1
* Add explanatory comments
|
|
|
|
| |
Lack of icon is already checked at the call site of shapeIcon; no need to check hasArea() here.
|
| |
|
| |
|
|
|
|
| |
We switched to 16-bit coordinates in attributes in b0cb8715ed74678b4d0f05829fa71a590e41b2f6, so there's no longer any reason to require that they are divisible by four.
|
|
|
|
| |
No longer used as of 5cdf838a387cae446dba500ac49a1c5524bf7949.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
A style has a collection of images, just as it has collections of sources and layers.
* Name things appropriately
* Use std::unique_ptr
|
| |
|
|
|
|
| |
GlyphRangeSet isn't keyed by FontStack, so using it to indicate that a particular range was loaded could have produced false positives.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Update gl-js and generate style code
* Factor out packUint8Pair() helper function
* Draft implementation of DDS for {text,icon}-size
Ports https://github.com/mapbox/mapbox-gl-js/pull/4455
* Fix text-size/composite-function-line-placement test
* Refactor to PaintPropertyBinders-like strategy
* Dedupe gl::Program construction
* Use exponential function base for interpolation
* Dedupe coveringZoomStops method
* Fixup tests
* Fix CI errors (hidden within #if block)
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Expose glyph and icon information to workers via message interface.
- Glyph/SpriteAtlas track which tiles have outstanding requests
and send messages to them when glyphs/icons become available.
- Remove obsolete "updateSymbolDependentTiles" pathway
- Symbol preparation for a tile now depends on all glyphs becoming
available before it can start.
- Start tracking individual icons needed for a tile, although we don't
do anything with the information yet.
- Introduce typedef for GlyphID
|
| |
|
| |
|
| |
|
|
|
|
|
| |
h/t @ChrisLoer catching this place where we were relying on member
initialization order. While it _happened_ to be okay here, it's
unnecessarily fragile.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Verbose commenting on getSegmentGlyphs
This came out of @cloer and @anandthakker trying to figure out
how getSegmentGlyphs actually worked.
Goal is to use this commented version as the base for a refactor.
* Refactor getSegmentGlyphs for clarity.
* Add more documentation, inline helper functions
* Initialize VirtualSegments directly
* Fix virtual anchor diagram
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
{text,icon}-{color,opacity,halo-color,halo-blur,halo-width} (#7939)
* Add symbol dds attributes and adapt style code generation
* Update to mapbox-gl-js/master
* Refactor SymbolFeature as a subclass of GeometryTileFeature
Prepares for enabling DDS on symbol paint properties by allowing the
SymbolFeatures, which we keep around after constructing SymbolLayout,
to be used in evaluating data-driven paint properties later in the
layout process.
* Draft approach for splitting icon/text paint properties
The `Program` types are set up to bind GL attributes to each of the
data-driven paint properties specified in the `PaintProperties` type
provided. Since `SymbolPaintProperties` specifies both `Text*` and
`Icon*` properties, the symbolIcon, symbolIconSDF, and symbolGlyph
programs each attempt to bind roughly double the number of attributes
that they actually need.
This change addresses this by:
- Adding the more specific `IconPaintProperties` and `TextPaintProperties` types, which are subsets of the full `SymbolPaintProperties`.
- The symbol layer continues to use its `SymbolPaintProperties paint` member to track layer property state, but it provides helpers that construct objects of each the specific `{Icon,Text}PaintProperties::Evaluated` type, for use by the painter.
- The three symbol programs instantiate `Program<>` using the appropriate `{Icon,Text}PaintProperties` type.
* check in generated style code
* Populate paint buffers for symbol DDS properties
* Address first round of review comments
* Refactor VectorTile{Layer,Feature} to explicitly share data
* Update submodule
|
| |
|
|
|
|
| |
This was already accessible via SymbolFeature::text.
|
| |
|
|
|
|
|
|
| |
Provide Image::copy, which handles copying rectangles from a source to a destination, with thorough bounds checking.
Also fixes an indexing error in SpriteAtlas, where the top row of pixels in a wrapped image was copied from the wrong source row.
|
|
|
|
|
| |
CJK characters and adjacent punctuation now remain upright in vertically oriented labels that have line placement.
Fixes #1682.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
This reduces state and simplifies the test added in the prior commit.
|