After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 312641 - small arcs are not rendered well
small arcs are not rendered well
Status: RESOLVED FIXED
Product: dia
Classification: Other
Component: objects
0.94
Other All
: Normal normal
: 0.98
Assigned To: Dia maintainers
Dia maintainers
Depends on:
Blocks:
 
 
Reported: 2005-08-05 07:50 UTC by dooms
Modified: 2011-06-13 15:19 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
A complete dia file to reproduce (2.95 KB, text/plain)
2005-08-05 13:10 UTC, Hans Breuer
Details
simple file to demonstrate the bug (2.93 KB, text/plain)
2005-08-05 14:01 UTC, dooms
Details

Description dooms 2005-08-05 07:50:45 UTC
Please describe the problem:
If you make an arc  with a small arc_distance (around .1) and close endpoints 
(distance around 1), the complement of the arc is drawn (full circle - real 
arc) instead of the arc itself. 

Steps to reproduce:
 
 <dia:object type="Standard - Arc" version="0" id="O0"> 
      <dia:attribute name="obj_pos"> 
        <dia:point val="19,10.3"/> 
      </dia:attribute> 
      <dia:attribute name="obj_bb"> 
        <dia:rectangle val="18.699,10.2446;19.3524,11.707"/> 
      </dia:attribute> 
      <dia:attribute name="conn_endpoints"> 
        <dia:point val="19,10.3"/> 
        <dia:point val="18.85,11.6"/> 
      </dia:attribute> 
      <dia:attribute name="curve_distance"> 
        <dia:real val="0.16811535837819222"/> 
      </dia:attribute> 
      <dia:attribute name="end_arrow"> 
        <dia:enum val="22"/> 
      </dia:attribute> 
      <dia:attribute name="end_arrow_length"> 
        <dia:real val="0.5"/> 
      </dia:attribute> 
      <dia:attribute name="end_arrow_width"> 
        <dia:real val="0.5"/> 
      </dia:attribute> 
    </dia:object> 
 
  
 

Actual results:
The complement of the arc is drawn  

Expected results:
the actual arc should be drawn 

Does this happen every time?
yes 

Other information:
Comment 1 Hans Breuer 2005-08-05 13:10:53 UTC
Created attachment 50276 [details]
A complete dia file to reproduce

I've pasted your arc into a complete file to reproduce.
In fact it looks as described after loading. *BUT* I am 
not able to degenerate the arc with current cvs - at 
least not with the GUI.
Do you have edited the objects properties *outside* of
Dia and the arc does not show as you expect it to?
Comment 2 dooms 2005-08-05 13:59:55 UTC
Other steps: 
start dia 0.94+cvs 
select arc tool, draw an arc, reduce curvedistance by moving red handle 
towards the two other points, the arc should look almost like a straight line. 
Now move one of the green handles towards the other. At some point, the 
arc/line is not drawn anymore. Hit the left arrow to redraw. 
 
I attach a complete dia file to reproduce. Opening the file in dia 0.94+cvs 
then moving the lower green handle away from the other shows the bug in 
reverse.  
Comment 3 dooms 2005-08-05 14:01:31 UTC
Created attachment 50278 [details]
simple file to demonstrate the bug
Comment 4 Hans Breuer 2006-01-02 13:49:13 UTC
2006-01-02  Hans Breuer  <hans@breuer.org>

	* lib/diarenderer.c(draw_arc_with_arrows) : don't recalculate center
	point and width from the (arrow-)corrected new points. Otherwise a 
	whole new wrong arc may emerge. Fixes bug #312641.
	
Comment 5 Hans Breuer 2006-07-15 16:05:37 UTC
Lars attempt to fix bug #312641 did break this one. No surprise because it was just removing the code added to fix this:
http://cvs.gnome.org/viewcvs/dia/lib/diarenderer.c?r1=1.19&r2=1.20
Comment 6 Hans Breuer 2006-07-16 18:56:22 UTC
Reflect state and passed milestone.
Comment 7 Hans Breuer 2008-05-18 15:10:12 UTC
The 'fixed' one was bug #331372, obviously the reference to this bug in comment #5 is wrong. The respective SVN link is http://svn.gnome.org/viewvc/dia/trunk/lib/diarenderer.c?r1=3342&r2=3366
The issue remains ;(