Wykres commitów

1502 Commity (a25b27aca8ed018352755011cfc8b55e447f3623)

Autor SHA1 Wiadomość Data
Phil Howard a25b27aca8 PicoVector: Improve transform handling.
* Store a reference to transform, so `set_transform(Transform())` is not GC'd until it is replaced
* Transformations return the transform, allowing chaining: `transform.rotate().scale().translate()`
* A new `get_transform` method for getting the currently set transform.
2025-03-28 10:31:01 +00:00
Phil Howard b9a14a275d PicoVector: Don't force iterated points to int(). 2025-03-28 10:31:01 +00:00
Phil Howard b3d7bd497d Hershey Fonts: ifdef guard hershey features for eventual deprecation.
Hershey fonts have all but been replaced by PicoVector's "Alright Fonts"
implementation and in many case we need this flash back!
2025-03-28 10:31:01 +00:00
Phil Howard 7fee95d668 PNG/JPEGDEC: Remove finalizer.
Remove the finalizer from PNGDEC and JPEGDEC, since it was both redundant
and actively harmful.

The finalizer was just calling "close" which is unecessary since the file
is closed automatically after opening/rendering and not left open.

If a file did not exist and "open_file" bailed with ENOENT then it would
be left in an unknown state, and the finalizer calling "close" would
cause a hardlock.
2025-03-28 10:31:01 +00:00
Phil Howard 25627588c3 PNG/JPEGDEC: Use MP_ROM_QSTR. 2025-03-28 10:31:01 +00:00
Phil Howard cfe031db33 Tufty 2040: Update spectrometer vector example. 2025-03-28 10:31:01 +00:00
Phil Howard 79844c6eaa PicoVector: Fix bug in polygon iterator.
list(Polygon) should return a list of points, but crashed with non-empty polygons.

We were advancing to the next path and then retriving an invalid point count for building the tuple.

Save the point count before advancing to the next path.
2025-03-28 10:31:01 +00:00
Phil Howard 10acd5d3de Tufty 2040: Update polygons example. 2025-03-28 10:31:01 +00:00
Phil Howard 17785d9299 PicoVector: Add arbitrary matrix transform. 2025-03-28 10:31:01 +00:00
Phil Howard ad7833e45a PicoVector: Fix bug in Polygon.regular. 2025-03-28 10:31:01 +00:00
Phil Howard 3e7baf6906 PicoGraphics: Check for out of range layers. 2025-03-28 10:31:01 +00:00
Phil Howard 9162120b90 PicoVector: MPY bindings for line and arc. 2025-03-28 10:31:01 +00:00
Phil Howard cb6bf89a33 Hub75: Performance improvements and stacked mode.
Inline and simplify the pixel flip for a 13.2ms -> 3.8ms speedup at 128x128 on RP2350 stock.

Drop RGB565 mode.

Add the ability to stack some panels, eg: 2x128x64 in a 128x127 configuration.
2025-03-28 10:31:01 +00:00
Phil Howard 405cd490ea PicoGraphics/Hub75: Add support for 128x128. 2025-03-28 10:31:01 +00:00
Phil Howard 9a43f5f371 PicoGraphics: Don't force Presto to RGB565. 2025-03-28 10:31:01 +00:00
Mike Bell 2811350c50 PicoGraphics: Presto full res option. 2025-03-28 10:31:01 +00:00
Mike Bell c94f4607de PicoVector: Add optional text max width and max height. 2025-03-28 10:31:01 +00:00
Phil Howard 1bf73a20cd PicoVector: Runtime buffer allocation. 2025-03-28 10:31:01 +00:00
Phil Howard 24eee10895 PicoGraphics: Non-blocking Inky update for #936. 2025-03-28 10:31:01 +00:00
Phil Howard 878af7c31f PicoGraphics: Add Presto. 2025-03-28 10:31:01 +00:00
Phil Howard 95b6c213dd PicoVector: Remove (ifdef guard) debug functions. 2025-03-28 10:31:01 +00:00
Phil Howard 089e5df243 PicoVector: Refactor text multiline support.
Drop dependence on null terminated strings, and for a final linebreak.

Bound all text processing using the text length.
2025-03-28 10:31:01 +00:00
Phil Howard 09dbfa1e64 PicoVector: Improve text rendering and control. 2025-03-28 10:31:01 +00:00
Phil Howard daa6603d1b PicoVector: Big refactor, ppp primitives.
* Remove Polygon types in favour of primitives .circle, .rectangle etc
* Add a new Transform type for building up transformation matrices
* Add support to set/clear transform on drawing
2025-03-28 10:31:01 +00:00
Phil Howard 71bcc9d62c PicoVector: Rewrite around new linked-lists poly. 2025-03-28 10:31:01 +00:00
Phil Howard dd7d6262df PicoVector: Use tile renderer for all pens. 2025-03-28 10:31:01 +00:00
Phil Howard d39516f9e1 PicoVector: Support float types in MicroPython bindings. 2025-03-28 10:31:01 +00:00
Phil Howard fa20fec507 PicoVector: Remove malloc from MicroPython bindings. 2025-03-28 10:31:01 +00:00
Phil Howard 177e5e8762 PicoGraphics: Add get_clip. 2025-03-28 10:31:01 +00:00
Phil Howard df9aeb8abb PicoVector: Remove alright_fonts.cpp from cmake. 2025-03-28 10:31:01 +00:00
Phil Howard a415261cc9 PicoVector: Break things until they work. 2025-03-28 10:31:01 +00:00
Phil Howard 3d6ac818a1 PicoVector: alright-fonts bringup. 2025-03-28 10:31:01 +00:00
Phil Howard 2a25cfea43 PicoVector: Suppress errors.
Ignore sign compare and narrowing conversion errors in pretty-poly.h.
2025-03-28 10:31:01 +00:00
Phil Howard 42d7c71a38 PicoVector: Rewrite MicroPython bindings. 2025-03-28 10:31:01 +00:00
Phil Howard e46fec7902 PicoGraphics: Layers.
Add preliminary support for multiple layered drawing surfaces.

Allows, for example, static content to be loaded into one layer and
remain unmodified while the above layer contains animations.

Particularly useful for drawing PNG or JPEG UI elements which are
then overdrawn with text or animated elements, without paying the
cost of loading/decoding every frame.
2025-03-28 10:31:01 +00:00
Hel Gibbons 054fca0d79 compatibility changes for microdot 2.x 2025-03-10 15:15:14 +00:00
thirdr 53e5864101 compatibility changes for use with microdot 2.x 2025-03-03 09:40:42 +00:00
Phil Howard cfa3d1d90d SCD4X: Add calibration commands for #1056. 2025-02-21 10:29:38 +00:00
Philip Howard aa1e3f18b7
Merge pull request #1029 from pimoroni/feature/scd4x-low-power
SCD4X: API bump and possible low power support
2025-01-15 11:59:00 +00:00
Isaac Webb 9883943dd0 Add pin mode definition to fix Button class on Pico 2 2024-12-26 17:08:15 -05:00
Hel Gibbons e8260bf521
Merge pull request #1041 from pimoroni/examples/rp2350-display-pack
Display Pack: Make button example work with RP2350 boards
2024-12-24 13:50:07 +00:00
Hel Gibbons 77e6a9db6d update display pack button example to work with RP2350 boards 2024-12-24 12:39:29 +00:00
Phil Howard cae1b1381d Inky Frame: Remove MicroPython build and examples.
Inky Frame has a new home at: https://github.com/pimoroni/inky-frame
2024-12-03 11:49:28 +00:00
Phil Howard 2b7b9efac7 Wakeup: Remove runtime init hook. 2024-12-03 11:36:36 +00:00
Phil Howard 030b59c0d1 pcf85063a: Set PICO_INCLUDE_RTC_DATETIME for MicroPython. 2024-12-03 11:36:24 +00:00
Phil Howard 185bea2065 SCD4X: Support low power periodic measurements. 2024-11-18 10:58:16 +00:00
Phil Howard b79814cae3 SCD4X: scd4x_get_data_ready_status to scd4x_get_data_ready_flag.
The function name and behaviour has changed, moving the bitwise check
into the API and making it an implementation detail.
2024-11-18 10:43:00 +00:00
Philip Howard 1495805d2b
Merge pull request #947 from pimoroni/test/network-ppp
PPP-enabled Pico build.
2024-10-31 12:19:50 +00:00
Philip Howard fd4b2922e4
Merge pull request #957 from pimoroni/plasma-stick-brightness
add brightness control to default Plasma Stick W example
2024-10-31 12:13:53 +00:00
Philip Howard b8f4bd3f67
Merge pull request #966 from pimoroni/examples-fix-adc
Examples: Update ADC()
2024-10-31 12:13:24 +00:00