Henri Verbeet
a84658f928
d2d1: Properly handle collinear edges in d2d_cdt_insert_segment().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-23 20:57:16 +09:00
Henri Verbeet
c125612cbb
d2d1: Properly handle collinear edges in d2d_cdt_cut_edges().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-23 20:57:03 +09:00
Henri Verbeet
c575f04b68
d2d1: Properly check if a face is real in d2d_path_geometry_add_face().
...
In particular, the existing test may fail if the convex hull has only three
vertices.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-09 12:58:23 +09:00
Henri Verbeet
76aa675da3
d2d1: Only search for the initial edge for each figure in d2d_cdt_insert_segments().
...
For each subsequent segment we can just re-use the edge we just inserted.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-08 12:53:23 +09:00
Henri Verbeet
e6da1a780e
d2d1: Only test figures that overlap the probe in d2d_path_geometry_point_inside().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-08 12:53:18 +09:00
Henri Verbeet
c98d34d745
d2d1: Only test overlapping figures in d2d_geometry_intersect_self().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-08 12:53:10 +09:00
Henri Verbeet
7e6b52e88b
d2d1: Implement d2d_cdt_incircle() in a more robust way.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
2015-10-07 13:03:22 +09:00
Henri Verbeet
e8b4d8e0d0
d2d1: Implement d2d_point_ccw() in a more robust way.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
2015-10-07 13:01:07 +09:00
Henri Verbeet
f35bfff4fc
d2d1: Properly handle the candidate being the last vertex before the base edge origin in d2d_cdt_fixup().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
2015-10-07 13:00:53 +09:00
Piotr Caban
f5b64c0d35
d2d1: Avoid possible infinite loop in d2d_geometry_intersect_self caused by rounding errors.
2015-08-27 21:43:47 +09:00
Henri Verbeet
bdaa571c5d
d2d1: Avoid leaking "object" on an error path in d2d_factory_CreateWicBitmapRenderTarget() (Coverity).
2015-08-25 21:13:38 +09:00
Henri Verbeet
acbb0bdfac
d2d1: Implement d2d_factory_CreateTransformedGeometry().
2015-08-20 20:26:41 +09:00
Henri Verbeet
69906b59d8
d2d1: Properly cleanup in d2d_rectangle_geometry_init() failure paths.
...
This avoids leaking the factory reference in particular.
2015-08-20 20:26:36 +09:00
Henri Verbeet
57eec429c6
d2d1: Implement d2d_text_renderer_DrawInlineObject().
2015-08-18 18:28:51 +09:00
Henri Verbeet
2474f5e33a
d2d1: Implement d2d_bitmap_CopyFromMemory().
2015-08-18 18:28:49 +09:00
Henri Verbeet
1bea5f44b0
d2d1: Make d2d_geometry_sink_vtbl static const.
...
Spotted by Francois Gouget.
2015-08-17 22:50:46 +09:00
Henri Verbeet
4460006fbd
d2d1: Only draw if the geometry has any faces in d2d_d3d_render_target_FillGeometry().
2015-08-17 22:50:44 +09:00
Henri Verbeet
20ad2e397f
d2d1: Print a WARN instead of a FIXME for the glyph run description in d2d_text_renderer_DrawGlyphRun().
...
The glyph run description seems to be mostly informational, there doesn't
appear to be a lot we could do with it.
2015-08-17 22:50:41 +09:00
Henri Verbeet
d29af2e460
d2d1: Only print a FIXME/WARN for specific properties in d2d_factory_init().
2015-08-17 22:50:39 +09:00
Henri Verbeet
3e0af5f1e0
d2d1: Only print a FIXME/WARN for specific properties in d2d_d3d_render_target_init().
2015-08-17 22:50:37 +09:00
Henri Verbeet
d41f568226
d2d1: Get rid of a FIXME in d2d_wic_render_target_init().
2015-08-13 15:04:10 +09:00
Henri Verbeet
64ccd138a2
d2d1: d2d_bitmap_brush_init() can't fail.
2015-08-13 15:04:08 +09:00
Henri Verbeet
7bdc1ef899
d2d1: Get rid of a FIXME in d2d_bitmap_brush_init().
2015-08-13 15:04:06 +09:00
Henri Verbeet
7d801d67ed
d2d1: Get rid of a FIXME in d2d_solid_color_brush_init().
...
All properties for solid color brushes are implemented.
2015-08-13 15:04:04 +09:00
Francois Gouget
f8a7d6ed74
Assorted spelling fixes.
2015-08-07 23:50:48 +09:00
Henri Verbeet
cd59e3db6c
d2d1: Implement d2d_d3d_render_target_CreateSharedBitmap().
2015-08-04 09:45:59 +02:00
Henri Verbeet
f0bf9e81fa
d2d1: Use the same device for all WIC render targets from the same factory.
2015-08-04 09:45:50 +02:00
Henri Verbeet
da47b214cd
d2d1: Implement d2d_bitmap_GetFactory().
2015-08-04 09:45:48 +02:00
Henri Verbeet
91b9ce69b7
d2d1: Implement d2d_gradient_GetFactory().
2015-08-03 10:56:53 +02:00
Henri Verbeet
4e50527c17
d2d1: Implement d2d_solid_color_brush_GetFactory().
2015-08-03 10:56:51 +02:00
Henri Verbeet
8b893839bc
d2d1: Implement d2d_linear_gradient_brush_GetFactory().
2015-08-03 10:56:47 +02:00
Henri Verbeet
414d04e27d
d2d1: Implement d2d_bitmap_brush_GetFactory().
2015-08-03 10:56:44 +02:00
Henri Verbeet
47f9f09c73
d2d1: Implement d2d_rectangle_geometry_GetFactory().
2015-08-03 10:56:22 +02:00
Henri Verbeet
14c0009add
d2d1: Implement d2d_path_geometry_GetFactory().
2015-07-31 12:08:59 +02:00
Henri Verbeet
9745efaf6d
d2d1: Implement d2d_mesh_GetFactory().
2015-07-31 12:08:57 +02:00
Henri Verbeet
c1fc008493
d2d1: Implement d2d_state_block_GetFactory().
2015-07-31 12:08:55 +02:00
Henri Verbeet
68ce000df7
d2d1: Implement d2d_stroke_style_GetFactory().
2015-07-30 11:39:57 +02:00
Henri Verbeet
e5c793e637
d2d1: Don't pass NULL resource data to ID3D10Device_CreateTexture2D().
2015-07-30 11:39:55 +02:00
Henri Verbeet
4371946d94
d2d1: Fix the TRACE in d2d_bitmap_Release().
2015-07-30 11:39:53 +02:00
Henri Verbeet
c2135dd498
d2d1: Properly handle D2D1_ALPHA_MODE_PREMULTIPLIED on render targets.
2015-07-30 11:39:51 +02:00
Henri Verbeet
52c412492f
d2d1: Bitmap values are always premultiplied in practice.
...
Since creating bitmaps with D2D1_ALPHA_MODE_UNKNOWN or
D2D1_ALPHA_MODE_STRAIGHT is not possible, and D2D1_ALPHA_MODE_IGNORE
behaves as if alpha == 1.0f.
2015-07-30 11:39:46 +02:00
Henri Verbeet
230785dc32
d2d1: Force alpha to 1.0f for clears.
2015-07-29 21:44:02 +02:00
Henri Verbeet
c4503779bb
d2d1: Take the bitmap's alpha mode into account in bitmap brushes.
2015-07-29 21:44:02 +02:00
Henri Verbeet
d742887b7f
d2d1: Implement d2d_bitmap_brush_SetBitmap().
2015-07-29 21:44:02 +02:00
Henri Verbeet
a2f41ed5b6
d2d1: Implement d2d_bitmap_GetPixelFormat().
2015-07-29 21:44:01 +02:00
Henri Verbeet
1b3574ebc0
d2d1: Validate bitmap formats.
2015-07-29 21:44:01 +02:00
Henri Verbeet
ccc347038b
d2d1: Also infer the alpha mode in d2d_d3d_render_target_CreateBitmapFromWicBitmap().
2015-07-28 09:49:04 +02:00
Henri Verbeet
a4bcae0bf7
d2d1: Implement d2d_d3d_render_target_GetPixelFormat().
2015-07-21 16:33:23 +02:00
Henri Verbeet
3b400cad34
d2d1: Fix the bitmap DPI scale for bitmap brushes.
2015-07-21 16:33:23 +02:00
Henri Verbeet
4c64c76c0b
d2d1: Implement d2d_d3d_render_target_FillEllipse().
2015-07-21 16:33:23 +02:00