View Issue Details

IDProjectCategoryView StatusLast Update
0001359FreeCADPatchpublic2014-01-18 11:12
Reportershoogen Assigned Towmayer  
PrioritynormalSeverityminorReproducibilityhave not tried
Status closedResolutionfixed 
Product Version0.14 
Target Version0.14Fixed in Version0.14 
Summary0001359: Drawing SVG output makes ever knot symetrical.
DescriptionA bezier segment could be linear (degree == 1).
The path elements "S" and "T" are used incorrectly.
They mean the the knot is symmetrical. The seconds pole of the second segment and the second last pole of the first segment are symmetric to the common knot. AFAIK. OCCT data structures don't explicitly provide that information and it wouldn't make any sense to calculate it to save a few characters.
The Output of the first segment seems to be valid the first pole is passed with the 'M' statement. The poles 2-4 are passed with the C statement. For the following segments the poles 2-4 should be passed (with a 'C' statement)*. The first pole is redundant since represent the common knot between two segments. But for further segments the second pole is omitted. And the knot interpreted to be symmetrical to the last segment (C1).
Assume that you have a BSpline that C0 continuous. The given code example would never create valid SVG code except for the first segment.
*) repeated statements can be omitted.
Additional Informationpatch available at:
git://github.com/5263/FreeCAD.git drawing-svg
TagsNo tags attached.
FreeCAD Information

Activities

shoogen

2014-01-17 10:27

developer   ~0004086

I'm still hitting the else branch because of unexpected degree.
For example Degree 5 when drawing Schenkel.stp

shoogen

2014-01-17 11:02

developer   ~0004088

C0 did the trick ;)
i updated my branch.
So far i only for SVG output and not for DXF.

shoogen

2014-01-17 11:46

developer   ~0004089

I'm still not sure if it's better to use C0 or C1. But C2 will always return a Degree of 5.

wmayer

2014-01-18 11:11

administrator   ~0004092

Merged into master

wmayer

2014-01-18 11:12

administrator   ~0004093

git show 9c5f1c2

Issue History

Date Modified Username Field Change
2014-01-17 09:46 shoogen New Issue
2014-01-17 10:27 shoogen Note Added: 0004086
2014-01-17 11:02 shoogen Note Added: 0004088
2014-01-17 11:46 shoogen Note Added: 0004089
2014-01-18 11:11 wmayer Note Added: 0004092
2014-01-18 11:12 wmayer Note Added: 0004093
2014-01-18 11:12 wmayer Assigned To => wmayer
2014-01-18 11:12 wmayer Status new => closed
2014-01-18 11:12 wmayer Resolution open => fixed
2014-01-18 11:12 wmayer Fixed in Version => 0.14