QCAD Bugtracker

  • Status Closed
  • Percent Complete
  • Task Type Bug Report
  • Category QCAD (main)
  • Assigned To
  • Operating System All
  • Severity Low
  • Priority Very Low
  • Reported Version 3.22.1
  • Due in Version Undecided
  • Due Date Undecided
  • Votes
  • Private
Attached to Project: QCAD Bugtracker
Opened by CVH - 22.06.2019
Last edited by Andrew - 24.06.2019

FS#1906 - Draw > Polyline > Polyline from Segments: Converting full arcs to polylines


Full 360 degrees Arcs don’t convert correct to polylines with the methods OG and OC.
Both methods create a zero-length open type Polyline and remove the full Arc.
OG creates a Poly with 2 vertexes at the startpoint (= endpoint) and OC one with 0 (zero!) vertexes.
The firts one is selectable, the second one only with ‘Select All’//TA because there are no references.

The OL method with the same start and endpoint doens’t affect the full arc.
Neither a poly is created nor an error is generated that the method failed.

Typical the bulge of the OG method is (-)16331239353195370, the OC method has no references.
The math to calculate the bulge should result in a division by zero or an illegal function as tan(π/2).
Therefore a polyline can’t contain a 360 degrees arc by standard means.

From the OC method is known that it simplify coradial arc strings to a single arc.
This should not result in 360 degrees arcs what would result in zero-length segments.
(With CAM fuzzy things may happen at such positions)

Simplifying coradial arcs strings that would create a 360 degrees arc should result in no less then two coradial Arcs.
The OG method will then creates a open Poly with 3 vertexes, OC a closed one with 2 vertexes.

Found while fiddling around with editing CXF fonts.
CXF uses full Arcs, two half arcs and even polylines with coradial segments that forms circles are supported,
the OC closed polyline with 2 vertexes is recoded as two 180 degree Arcs (90-270&270-90).


Closed by  Andrew
24.06.2019 09:54
Reason for closing:  Fixed
CVH commented on 24.06.2019 01:06

Look at QCAD 3 Font Version: 3.22.1 Glyph 0x00a4

CVH commented on 27.06.2019 06:01

Follow up on  FS#1906  Polyline from full arcs


.....QCAD 3 Font Standard.cxf Version: 3.22.1 Glyph 0x00a4
(I see I forgot to mention the Fonttype)

Installed snapshot after  FS#1906  was fixed and closed.

There is indeed a change in the behaviour with version
Full arcs still simply vanish into thin air.
Drawing attached.

A) Full Arcs OC
Created such in version it is not visible but selectable by deselecting visible ones.
Loading the file in version it appears as a null-lenght polyline at the origin(0,0); 2 vertexes; open.
On creating such with the polyline can't be found. It appears after closing and reloading.
There is no more evidence off the creation of a null-polyline with null vertexes and no or zero references. From a full Arc both OG & OC methods now both produce a null-lenght polyline with 2 vertexes; OG-open, OC-closed.
Or it will appear after save and reload.
The math for a full arc doesn't match up with the polyline definition.
In this case single 360 degrees arcs should be 'simplified' or promoted to at least 2 arc segments.
Keeping the startpoint and the endpoint, 2 sweeps of 180 degrees seems obvious. » In the past it occured sometimes that with exploded text the origin allways was part of the auto zoom or the auto fit while there was nothing. An invisible null-polyline at (0,0) could explain this. B) Full Arcs
OG (&OC)
The OG null-lenght polys and the former OC null-polyline have now a bulge of 0.
Typical the bulge of the OG method was (-)16331239353195370.
Merely loading such a file in version turns these bulges to 0.
Neither is correct.
- 0 is a straight line segment or a segment with no bulging, strictly stated it is not an arc.
- As long as one can calculate the bulge, even like 16331239353195370, it is not a full 360 degrees arc.

(180 degrees is a bulge of 1; 359.99 ..almost 23000; 359.999 ..230000 and so on)

C) I wrote 'From the OC method is known that it simplify coradial arc strings'.
I knew of this behavior so simplification to a full arc should be avoided so they don't end up disappearing.
Well this wasn't the case.
From multi coradial strings as a full circle the OC method created closed polylines with 2 vertexes.
In version this results in closed polylines with 3 vertexes.
From 2 coradial Arcs the OC method created closed polylines with 2 vertexes.
And with the same result in version ( it doesn't invent any 3th)
The limit is no less than 2 arc segments for a full arc, 2 or 3 vertexes means the same for that matter.
So the changes made here to QCAD weren't necessary.

Botom line:
Null-entities nor null-lenght entities
and in this case
Null-polylines with null vertexes nor null-lenght polylines nor null-lenght polyline segments
should not ever be created with any action IMHO.

Kind Regards

Andrew commented on 27.06.2019 07:54

This fix from 24/06/2019 is not included in the latest snapshot from 11/06/2019.

CVH commented on 27.06.2019 10:38

OK, I see I could find the release date in the announcements.


Available keyboard shortcuts


Task Details

Task Editing