Scott Williams
281c7366cb
cleanup drawing namespace
9 years ago
James Jackson-South
1975c11dd6
Remove ParallelOptions from IImageProcessor
9 years ago
Scott Williams
94c60cb338
inital rename packages and namespaces
9 years ago
Scott Williams
64f18bc298
migrate to use primitives from SixLabors.Core
9 years ago
James Jackson-South
cc87885d83
Internalize PixelAccessor
9 years ago
James Jackson-South
b980703b02
Replace BufferSpan<T> with Span<T>
- Add System.Memory
- Update System.Runtime.CompilerServices.Unsafe
- Move memory classes/structs to ImageSharp.Memory
- Replace BufferSpan<T> with Span<T> and adjust methods accordingly
9 years ago
Scott Williams
3671d9b906
blend functions everywhere.
9 years ago
Scott Williams
472bb85030
initial blender implementations
9 years ago
James Jackson-South
3e5c8f7b5d
Move IPixel types to PixelFormat namespace
9 years ago
James Jackson-South
eceb889758
Rename TColor to TPixel
9 years ago
James Jackson-South
58bd379394
Make all processors internal
9 years ago
James Jackson-South
3eda81fb0f
Move all drawing code into drawing project
9 years ago
Scott Williams
509eaf12d5
consolidate packages
9 years ago
Anton Firszov
be4c189533
IPixel
9 years ago
Scott Williams
4e745d7280
added IRegion and droped use of vectors in brushes
9 years ago
Scott Williams
086115fd78
code cleanup and comments
10 years ago
Scott Williams
d07e0885db
use abstract base class instead of interface
10 years ago
Scott Williams
734b33b69e
Put processors folder/namespace back
10 years ago
Scott Williams
0b2e792f26
fix namespaces
10 years ago
Scott Williams
b0985ddb0e
migrate processors
10 years ago
Scott Williams
85061df804
Split Drawing from Core
10 years ago
James Jackson-South
171a38a0fa
Fix Tests
Merge IImageFilteringProcessor with IImageProcessor to simplify
encapsulation and allow easy setting of parallel options
10 years ago
Scott Williams
5bcc92cbde
Add a recolor brush
10 years ago
James Jackson-South
99fed3ff36
Merging into master
10 years ago
James Jackson-South
3863f69bff
Remove TPacked from generic signature
10 years ago
James Jackson-South
77f9bdecae
Update TPacked signature
Removes boxing allocation when comparing generic packed value.
10 years ago
Scott Williams
b9a63120c1
Add drawing methods.
Adds a 4 `IPath`s;
- `Path` : a generic open path described by an arbitrary collection of `ILineSegments` which are closed.
- `Polygon` : a generic closed path described by an arbitrary collection of `ILineSegments` which are closed.
Adds 2 `ILineSegment`s;
- `LinearLineSegment` : a segment made up of control points representing straight lines.
- `BezierLineSegment` : a path made up of control points describing a bezier path.
Adds 4 `IShape`s
- `Polygon` : a generic closed path described by an arbitrary collection of `ILineSegments` which are closed.
- `LinearPolygon` : a shape made up of control points representing straight lines.
- `BezierPolygon` : a shape made up of control points describing a set of bezier curves which are closed by a straight line
- `ComplexPolygon` : a polygon described by one or more `IShape`s as either outlines or holes.
All `IShape`s can be represents as a collection of `IPath`.
Adds 2 `IBrush`s
- `SolidBrush` : described by a `TColor`
- `Patternbrush` : described by a foreground and background `TColor` and a pattern.
Adds 1 `IPen`:
- `Pen` : described by an `IBrush` a width/thickness to draw the line and an optional pattern.
Adds 3 Image Processors
- `FillProcessor` : flood fills the image with an `IBrush`.
- `FillShapeProcessor` : flood fills inside an `IShape`.
- `DrawPathProcessor` : draws a collection of `IPath`s or and `IShape`s onto the image using an `IPen` to determine `TColor`.
Adds a multitude of Image Extensions for accessing the above processors in a manor similar to `System.Drawing`
10 years ago
James Jackson-South
cf63963a80
Simplify filter API further
No need for startY, endY parameters.
10 years ago
James Jackson-South
2e3c485c2a
Fix blending on #14
ALso impove glow, vignette and background color.
10 years ago
James Jackson-South
858b6ac7ab
Normalize naming and organize locations
10 years ago
dirk
009340228f
Fixed reference in comments.
10 years ago
dirk
4f08406452
Changed PixelAccessor to use IPackedPixel<TPacked>.
10 years ago
James Jackson-South
2b2ec84e9c
Rename to ImageSharp
10 years ago
dirk
cf542ef1ec
Enforce struct on TColor
Former-commit-id: c22a93c67274e1ab495ffa6a85d6c7cb95688974
Former-commit-id: 12a03f05c3c0137240006e978a573e5ff0746ce4
Former-commit-id: 78b186b3d54015644377e55314c070c84debfb25
10 years ago
James Jackson-South
d949ab0f26
Revert "Enforce struct on TColor"
This reverts commit c6a36c9427 [formerly 1e48873bd7609b2ecd1b33158ae1f7d3f9d517e0] [formerly 5ee53a5681d546619d3fabaf65d343e20d025b58] [formerly 0de461016f83628673d07d18a2f2a402082f47b2].
Former-commit-id: d0b4d2efc7bae39501eb4d0ed8f130f0185d0b1c
Former-commit-id: 6cb6f17122c793f01a7ea53f9dbe24d10fd02970
Former-commit-id: 1006885854cb5e74f5b53eddd803a531327a872c
10 years ago
James Jackson-South
c6a36c9427
Enforce struct on TColor
Former-commit-id: 0de461016f83628673d07d18a2f2a402082f47b2
Former-commit-id: 5ee53a5681d546619d3fabaf65d343e20d025b58
Former-commit-id: 1e48873bd7609b2ecd1b33158ae1f7d3f9d517e0
10 years ago
James Jackson-South
2b5424327c
Remove progress event handler.
It was useless once multiple processors were combined and also hurt
performance.
Former-commit-id: 639ea64d56094dbaed1cfb94cdc154d5439fc446
Former-commit-id: 9cf0ff1d972ff903bc14c8121c2feb15fcbcd690
Former-commit-id: 04da60830efe9a6d774e0f80431592c9c53f1841
10 years ago
James Jackson-South
cd97b2308e
Don't create a copy if you dont need to.
ImageFilter = NoCopy
ImageSampler = Copy
Former-commit-id: 530cc95d3b655175999dc78d95fea988f25416e6
Former-commit-id: 63650e982a0a2bb116a473816692187b186a4d0f
Former-commit-id: fe8e7020aa116899a2ae1620b4c78b446a3510e7
10 years ago
James Jackson-South
ccc13bbac3
Revert Unsafe.Copy and cleanup
Former-commit-id: 401fa40681eb231eabcfe11f5115c05404c84498
Former-commit-id: 160012def06309092c8ee00cba8fa99a53f83ebf
Former-commit-id: bf644e6660e40cb25e20de9058bc181284730409
10 years ago
James Jackson-South
5e9ce77841
Use PixelAcessor<TColor, TPacked> #457
Former-commit-id: 38a4a37351b55ae4027064c96983460a440140b8
Former-commit-id: db9a4f0f2ce7930ae633e3a7ceee0fab7f5db464
Former-commit-id: 34289d7967ca5c8cdbb0949ed8bf0f65586fa297
10 years ago
James Jackson-South
4516432915
Sanitation, performance, vignette, and glow
TODO convolution and colormatrix sanitation
Former-commit-id: 2dc40b04a3d2c7bcf539488d4c0559fd42a48125
Former-commit-id: e79bce183a3fce5bd19c05271ac55dc756f74098
Former-commit-id: 43fa71e167864c565463fd3d2250a9603125661a
10 years ago
James Jackson-South
e70f07426e
Add setter to IPackedVector<TP>
Former-commit-id: 8f90f6fd99515e8cbf50184baeaefd93466bb39c
Former-commit-id: f1e9aa552dc446eedb450aa7ed1a9f6ef87a5001
Former-commit-id: 15c3d89bf472544d8c89dd7da2f45dfffbb441e6
10 years ago
James Jackson-South
01ff266e7e
Use processor specific parallel options.
Former-commit-id: 2acf4fe804efd492297eab966fb5202502ea5455
Former-commit-id: 8fa7b831fa1b096316c10b12c1003a116541051b
Former-commit-id: b5970581a06e6a7af28b806f2625517a153591cb
10 years ago
James Jackson-South
a8af901bf9
BackgroundColor
Former-commit-id: abafddef9276f279c204a312c097cd28aa1d3e58
Former-commit-id: 27079155a41cd95690c7b676601e9df4044a05ca
Former-commit-id: 0c77f74fd0194f4bab444d9bb4522422f65ad029
10 years ago
James Jackson-South
c1cea3b06e
Trim back to basics
Former-commit-id: 3cca13c49abcf0e9a5a394794153406084d2e19e
Former-commit-id: 767a3db69cf4adecac58c58a84891b736ada79eb
Former-commit-id: db1a5b695cc73951becdff9b31535b8f7b03e75b
10 years ago
James Jackson-South
d6db0366fc
Remove task splitting code.
Former-commit-id: a29d6e26e80dd4c47adfe6dab3cea8b41699165e
Former-commit-id: 5463d0ceda62e577377de3ad9d52d347a830622b
Former-commit-id: b3efff43e573ba7239d5724187cea5ae62f93690
10 years ago
James Jackson-South
53199d0592
Fix namespaces
Former-commit-id: 5e9d8e0d98e6bed499d71b0cab005c2c253ec917
Former-commit-id: 87cc61833ac266b0795f93a8c3a46ba84796e726
Former-commit-id: 2d3e58fe24556ae5701d00236b10125f878b4b63
10 years ago
James Jackson-South
3dbad0c44a
Use PixelAccessor
Former-commit-id: 9b7174022ac6745534acff3ed69718d143e91e6f
Former-commit-id: f8d1e182dec104b3c77fec79cd4d7c00a299a70f
Former-commit-id: 98f22a9d62b5133aeba4b4525a71b2e6c2b18133
10 years ago
James Jackson-South
b79435b6c5
Fix naming. Apologies to all who have forked.
Former-commit-id: b3318e2897e80fcb91ed454fc725fb8235552210
Former-commit-id: 2f26839a479acd967c72874647e312971a5a99da
Former-commit-id: ec046509505fb50980397da16e659e80bbded4aa
10 years ago
James Jackson-South
f2d1c8ad5d
Rename to Core
Former-commit-id: c18f0149c93be6a2b8f196bd9265d293071f303b
Former-commit-id: ec96e4fa102a05b541bee1dc6be583ad9676a664
Former-commit-id: af407d177b01792436a266deecb16925f1c22981
10 years ago