Marek Roszko
417f2f357c
Cleanup naming of shader params/uniforms
2022-05-19 07:49:24 -04:00
Jeff Young
38e5faf21b
Overhaul bitmap text for performance.
...
Also adjusts metrics to better match stroke font.
Also removes text-halo highlighting as it's too expensive to re-render
when the zoom changes.
Fixes https://gitlab.com/kicad/code/kicad/issues/11460
2022-05-14 20:09:54 +01:00
Marek Roszko
6d7835e742
Switch shader storage to char arrays
2022-05-14 11:39:46 -04:00
Marek Roszko
8288f24264
Move all the shaders to glsl files (and fix the processor more)
2022-05-12 23:37:44 -04:00
Marek Roszko
6188f632b9
Initial implementation of shader translation to cpp at build time
2022-05-12 23:37:44 -04:00
Marek Roszko
abfe944299
Split gal cmake target to a subdirectory
2022-05-11 20:22:22 -04:00
jean-pierre charras
1d5be1adeb
Cairo GAL: fix incorrect size and thickness of text drawn by GAL::BitmapText()
2022-04-08 18:40:26 +02:00
Jeff Young
bf0f2aa4a8
Adjust bitmap text spacing a bit so it's closer to the stroke font.
...
This helps the text better match the highlighting when it gets small
enough that we switch to the bitmap font for performance.
2022-03-07 20:30:50 +00:00
Jeff Young
a8d2dd8dc7
Bitmap text can't yet handle multi-line text.
2022-03-06 16:59:18 +00:00
Jeff Young
a29968fa91
Make sure bitmap fallback is only used for non-cached text.
...
Also fixes backwards vertical justification for bitmap text.
Fixes https://gitlab.com/kicad/code/kicad/issues/10956
2022-02-24 18:16:45 +00:00
Marek Roszko
1f8d101b1d
Fix color4d distance return type
2022-02-06 21:05:44 -05:00
Wayne Stambaugh
8426ffa238
Fix wxWidgets invalid string specifier assertion.
...
(cherry picked from commit ab184ba9f3
)
2022-01-24 15:50:40 -05:00
Jeff Young
c8a50d9b50
Remove unit-less angles from VECTOR2I/D APIs.
2022-01-20 23:58:20 +00:00
Jeff Young
4a05b36bc6
Prefer EDA_ANGLE to naked radians.
2022-01-20 21:10:04 +00:00
Jeff Young
e84c574830
Some more EDA_ANGLE cleanup.
2022-01-16 19:16:18 +00:00
Marek Roszko
8fe16690b7
Add array deleter
2022-01-14 22:04:47 -05:00
Jeff Young
07013d00e1
More EDA_ANGLE.
2022-01-14 16:08:19 +00:00
Jeff Young
33338aa0f2
Formatting.
2022-01-11 14:34:16 +00:00
Jeff Young
8f7d2dd06a
More VECTOR2D -> VECTOR2I and wxPoint cleanup.
2022-01-11 14:20:14 +00:00
Jeff Young
7d032f9c2f
Outline font rendering for Cairo, plotter, printer and 3D viewer.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10319
2022-01-10 01:54:28 +00:00
Jeff Young
05cfdd3907
Supply a text size & thickness for GAL::StrokeText
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10226
2022-01-08 16:47:45 +00:00
Jeff Young
04c76f10e9
Performance enhancements for fonts.
2022-01-08 16:47:45 +00:00
Ola Rinta-Koski
9b406c1da4
Outline font support.
2022-01-08 16:47:45 +00:00
Seth Hillbrand
26c0a78947
Plot pads in layer color
...
v6 pads are not allowed to be a different color from the rest of the
copper layer, so don't query the GAL layer for a color
Fixes https://gitlab.com/kicad/code/kicad/issues/10293
(cherry picked from commit bfca928900
)
2022-01-07 08:56:22 -08:00
Jeff Young
8e4a4306c7
Go back to using inter-character spacing from the stroke font.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/1078
2022-01-04 00:46:08 +00:00
Mike Williams
404659d275
Gerbview: Fix diff mode issues with OpenGL transparency
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/10121
2022-01-02 23:15:36 +00:00
Marek Roszko
ec83537576
Fix missing win32 header
2022-01-02 13:07:56 -05:00
jean-pierre charras
c4af66f6d3
Fix compil issues on Windows+msys2
...
Probably some fixes also on other platforms
2022-01-02 18:32:39 +01:00
Jeff Young
89c0f8e297
Move to new font engine.
2022-01-02 14:57:03 +00:00
Jeff Young
86cb57f4a7
Cherry-pick TEXT_ATTRIBUTES and EDA_ANGLE from rockola/kicad-strokefont
2021-12-28 22:15:20 +00:00
Seth Hillbrand
78ff9a857a
Jerry-rig HTML-format alpha parsing
...
On wx3.0, the HTML format #RRGGBBAA cannot handle the alpha channel.
Instead, we route this through a COLOR4D routine when we need to use
these colors
Fixes https://gitlab.com/kicad/code/kicad/issues/9963
2021-12-13 16:04:40 -08:00
Jon Evans
a205595404
PROF_COUNTER -> PROF_TIMER
...
I want to add an event counter, and this one is a timer
2021-12-05 14:25:37 -05:00
jean-pierre charras
f24bdf4067
Fix minor Coverity warnings (not initialized vars).
2021-12-03 17:55:21 +01:00
Tomasz Wlostowski
691ca11b5a
DRAW_PANEL_GAL: add profiling counter for OGL buffer swap
2021-11-29 23:30:10 +01:00
Tomasz Wlostowski
2c6e9778a1
GAL: OpenGL draw calls pooling/splitting
...
Improves rendering performance, esp. for large designs by:
- using a separate glDrawArrays calls() for large buffers of contiguous vertices (e.g. large zone fills)
- pooling smaller items into a small-sized index buffer held in system RAM (has to be DMAed to the GPU by the driver anyway)
2021-11-29 23:30:10 +01:00
Tomasz Wlostowski
569c39ac37
GAL: runtime profiling for CACHED_CONTAINER
2021-11-29 23:30:10 +01:00
Tomasz Wlostowski
9518d425ca
OPENGL_GAL: added runtime render speed profiling
2021-11-29 23:30:10 +01:00
Tomasz Wlostowski
b59ee13fcc
GAL: made Begin/EndDrawing calls public to have more control over timing of rendering context creation/destruction
2021-11-29 23:30:10 +01:00
jean-pierre charras
19fc8c6d98
CAIRO_GAL: fix incorrect display of segments in outline mode in flipped board view
...
Fixes #9633
https://gitlab.com/kicad/code/kicad/issues/9633
2021-11-15 10:12:10 +01:00
Ian McInerney
961c127ebe
Convert mouse coordinates to native pixesl in the 3D viewer
...
All operations in the camera are done using the native pixel sizes,
so we need to ensure the mouse coordinates are converted to native
pixels to make the mouse operations line up with the view.
Fixes https://gitlab.com/kicad/code/kicad/issues/2561
Fixes https://gitlab.com/kicad/code/kicad/issues/8410
2021-10-10 17:52:12 +01:00
Seth Hillbrand
52bbfb9109
Remove dependency of dot size on linear mils
...
Changes a dot to be a square pixel (linewidth x linewidth). This allows
the removal of IU dependencies and ensures that a dot is always visible
on screen. Also makes sure that cairo is setting the current linewidth
during its stroke routines
Fixes https://gitlab.com/kicad/code/kicad/issues/9362
2021-10-10 09:40:26 -07:00
Seth Hillbrand
9a8d1246cc
We don't keep a CHANGELOG.TXT
...
Direct interested readers to AUTHORS.TXT instead.
2021-10-05 19:46:53 -07:00
Jeff Young
930c4e5582
Cleanup.
...
Formatting.
Naming conventions.
Use of auto.
Use of STL cover types.
2021-10-03 19:42:29 +01:00
jean-pierre charras
5aea7b8123
Cairo: fix incorrect handling of arcs with angle >= 360 deg in some cases.
...
Fixes #9231
https://gitlab.com/kicad/code/kicad/issues/9231
2021-09-25 09:06:09 +02:00
Marek Roszko
91e456113f
Use StartsWith instead of Contains for the Intel check
2021-09-20 18:56:06 -04:00
Marek Roszko
1b8259701e
Expand "Intel" GL_VENDOR check for workaround
...
Fix #7444 maybe
2021-09-20 18:20:57 -04:00
Jeff Young
6197717251
Avoid poor choices for point colors.
...
Also adjusts the point size to account for the fact that it now has a border.
2021-09-16 14:17:52 +01:00
Wayne Stambaugh
3b16c38756
Coverity issue fixes.
...
Fix Coverity issues 157138, 338547, and 338716.
2021-09-08 14:51:27 -04:00
jean-pierre charras
56374ffa26
Try to fix a compil issue that does not happen on my computers.
2021-09-06 18:36:27 +02:00
jean-pierre charras
36048fa436
OPENGL_GAL::DrawArcSegment(): use a better number of segm to approximate the arc.
...
Previously, the count of segments used a magic number optimized for Pcbnew.
This is not good, and does not work well on Gerbview.
The count uses now a max error acceptable is approximation (5 microns in Gerbview and Pcbnew).
Fixes #9101
https://gitlab.com/kicad/code/kicad/issues/9101
2021-09-06 16:36:47 +02:00