itwinjs-core icon indicating copy to clipboard operation
itwinjs-core copied to clipboard

Enhance area patterns

Open markschlosseratbentley opened this issue 2 years ago • 1 comments

This work item contains various area pattern enhancement possibilities.


Outlines should be visible for hatched areas:

See comment in Polyline.ts "Only display the outline if Fill is off..." which came from CachedGeometry.cpp in bim02. See TestHatchOut.zip for dataset.

In the following image, the first green rectangle created is filled without a hatch and a hatch is added for the second . No outlines appear in the last case.

Image


Support raster text in area patterns

Currently text in pattern symbols is either stroked or displayed as boxes, because of the way raster text is deferred until the end of tile generation. But area patterns are often viewed at a level of detail where raster text would be the most legible, and the most performant.


Support area patterns in geometry parts

Geometry parts can contain area patterns, but those have never displayed properly. If they display at all, it's at some seemingly-random offset from the instance of the part. Fix this.


Support geometry maps for area patterns

If an area pattern would produce too many symbols (currently, 250,000), we omit the pattern entirely, because it would be too expensive to process. Instead, we should consider putting the symbol into the tile and generating UV params for the mesh so that the frontend can produce a geometry map (texture) to map to the mesh. The map would need to be regenerated when aspects of the display style (render mode, edge display, edge color, etc etc etc) change.

This could also potentially be used for tiles of sufficiently low level of detail that the symbols would be very tiny.


markschlosseratbentley avatar Jun 08 '22 17:06 markschlosseratbentley