On 04/12/14 18:27, Ryan Lerch wrote:
On 12/03/2014 03:59 PM, Alexander Brock wrote:
> New features:
> Path->All Objects to Path
This would be an awesome feature.
It's already implemented, you can try it if you check out my
experimental branch and compile it.
Maybe a name like "Fill and Stroke to Paths" might work? I
the resulting "fill" object doesn't include the 50% of the fill that
is under the stroke?
Currently the resulting filled object does include these 50%. If that's
not desired I would need to duplicate the "stroke" (which was converted
to a path) and subtract it from the "fill".
I don't want to do that (at least not by default), because the
difference operation tends to create (very small) gaps between the objects.
For example, create two ellipses, duplicate the top ellipse, subtract it
from the lower ellipse, take the union of the resulting two objects and
break the path appart => I ended up with four objects, the union of two
ellipses and two very small objects.
These small objects interfer with my applications, so I want to avoid them.
If you want to get rid of the overlap just use the "remove overlap"
function as soon as it works :-)
> This recursively replaces clipped paths by the path intersected with the
> clip path.
IMHO, This might make more sense to make Path > Intersect work on
multiple objects. i.e. the top object is duplicated and intersected
with each object individually underneath.
The intersection method already works with multiple objects, the result
ist the intersection of all selected paths which makes perfect sense to
me and I wouldn't change that.
The reason i suggest this is that clipping also works on bitmaps, so
having an option to intersect a clip path might be a bit odd when it
doesn't work. Also, this same working on multiples behavior would work
for Path > Difference too -- so you can "punch a hole" in multiple
objects, and Path > Division, where you can cut multiple paths up with
a single action.
I currently don't need difference / division / cut for more than two
objects and I'd like to fix the "remove overlap" function first but I
can implement more of these (more complex) boolean operations later.