On 12/03/2014 03:59 PM, Alexander Brock wrote:
Hi,
I implemented most of the parts, you can find the code here:
https://code.launchpad.net/~inkscape+alexander/inkscape/flatten
New features: Path->All Objects to Path This recursively convertes strokes to paths. If the object has a fill and a stroke it is duplicated for one copy the stroke is converted to a path, for the other the stroke ist set to none. Therefore the visual appearance doesn't (shouldn't) change.
This would be an awesome feature. Maybe a name like "Fill and Stroke to Paths" might work? I assume that the resulting "fill" object doesn't include the 50% of the fill that is under the stroke?
Object->Clip->Intersect 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 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.
cheers, ryanlerch
Path->Remove Overlap This doesn't work and I don't understand why. It's implemented in splivarot.cpp, line 1740
The basic idea is very simple:
- Get all selected shapes, even indirectly selected ones in groups etc.
- Sort them so the topmost shape is the first in the list
- Get a copy of the topmost shape, total_union = copy(topmost_object)
- Get the next object in the list "current_object", make a copy
"duplicate_object" 5. Make a copy of total_union, name it total_union_duplicate 6. Subtract "total_union_duplicate " from "current_object" using "sp_selected_path_boolop", with operation "bool_op_diff" This doesn't work for me, the method never does anything (line 1816) 7. Add "duplicate_object" to "total_union" using "sp_selected_path_boolop" with operation "bool_op_union" This also doesn't work, I expect to get exactly 1 object, instead I get 2 (line 1834) 8. If list not empty goto 4
I'm out of ideas why the boolean operation doesn't work for my objects, it always works perfectly for me when I do it by hand.
Any ideas / comments?
Alexander
Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server from Actuate! Instantly Supercharge Your Business Reports and Dashboards with Interactivity, Sharing, Native Excel Exports, App Integration & more Get technology previously reserved for billion-dollar corporations, FREE http://pubads.g.doubleclick.net/gampad/clk?id=164703151&iu=/4140/ostg.cl...
Inkscape-devel mailing list Inkscape-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/inkscape-devel