Skip to content

dotted line pattern support#39

Open
stevesims wants to merge 1 commit intoavalonbits:mainfrom
stevesims:dotted-lines
Open

dotted line pattern support#39
stevesims wants to merge 1 commit intoavalonbits:mainfrom
stevesims:dotted-lines

Conversation

@stevesims
Copy link
Contributor

Canvas gets several new calls:

setLinePattern accepts a LinePattern object for setting a pattern a line can optionally use

setLinePatternLength allows the length of the line pattern to be set

setLinePatternOffset allows the offset within the pattern to be adjusted

setLineOptions sets whether a line should be drawn as a dotted line, and whether its first and/or last points should be omitted

BitmappedDisplayController’s PaintState object now includes linePattern, lineOptions and linePatternLength.

genericAbsDrawLine now looks at the lineOptions in the current paint state to determine whether a dotted line should be drawn, and whether first or last points should be omitted

fabutils gains a getBit function which will get a bit at an index within an array of uint8_t numbers. the position is in “most significant bit” order, i.e. bitIndex 0 is the bit representing 128 in the first byte in the array

Canvas gets several new calls:

`setLinePattern` accepts a LinePattern object for setting a pattern a line can optionally use

`setLinePatternLength` allows the length of the line pattern to be set

`setLinePatternOffset` allows the offset within the pattern to be adjusted

`setLineOptions` sets whether a line should be drawn as a dotted line, and whether its first and/or last points should be omitted

BitmappedDisplayController’s `PaintState` object now includes `linePattern`, `lineOptions` and `linePatternLength`.

`genericAbsDrawLine` now looks at the `lineOptions` in the current paint state to determine whether a dotted line should be drawn, and whether first or last points should be omitted

fabutils gains a `getBit` function which will get a bit at an index within an array of uint8_t numbers.  the position is in “most significant bit” order, i.e. bitIndex 0 is the bit representing 128 in the first byte in the array
@stevesims
Copy link
Contributor Author

Adds support for dotted lines plotting, essentially as per Acorn's dot-dash line plotting whereby a pattern of 1-64 bits in length can be applied to a line

this will be used and form part of the next release of the console8 agon-vdp (2.7.0)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant