Dxf export - arc becomes polyline

i am trying to export some ugly curves that got converted and worked on by multiple hands. I need a proper .dxf to send the curves to a cam and finally a robot.
only lines arcs, polycurves with only lines & arcs are allowed.
Curvy stuff must be approximated by arcs - otherwise the machine will not work properly.

Find attached the rhino file, the export scheme, the generated dxf.

As soon as i remove the specific segment from the curve, the export is fine.
Including the segment in the polycurve - this segment is causing the dxf-export to convert the curve to a polyline

why ?

what i am doing wrong ? is it a bug ?

see screenshots:

curves before export.
curves exported with attachted scheme and re-opend in rhino.

thanks for any hints.

Drops_00.3dm (58.0 KB)
drops_00.dxf (216.2 KB)
robot_2022.ini (980 Bytes)

is there any documentation, what got changed from Rhino V5 to V6 to V7 regarding .dxf export.
My customer claims the export functions well in rh v5.

… as i see it is always a bad idea to post stuff on friday…
@pascal who can help ? who s responsible for the dxf export ?

Hi Tom - I am looking at this now.
@Tom_P - it looks like this setting sorts it out, though I am not sure why yet

I’m guessing that this may, possibly, have to do with polycurve segments now maintaining their own structures rather than imposing the most complex structure on the entire polycurve. Just a guess, but that is a change in V7.


thanks a lot for having a look at this.
if i change the maximum angle, the polyline is getting less or more segments.
it s really that single segment, that is triggering the curve (that is a polycurve with arcs) to get tessellated by the dxf export. … ???

Hi Tom - uncheck that option altogether, is what I meant - does that sort it out?


with this all off - i get no tessellation, but also no bulge arcs at all - the result is a polyline, one line segment per polycurve-segement.

Hi Tom - is this what you are shooting for?

Drops_00_PG.dxf (163.9 KB)



what s the export scheme / setting you used ?


i also checked the .dxf as text - the vertices should have (this ugly) bulge with Group-Code 42.
so it is correct.

Hi Tom - so… it seems that the scheme one is looking at and the one that is actually used on export do not necessarily correspond - I’ll dig deeper in a moment but this looks like a bad thing.
I’ll start from scratch and get you a scheme that works.

@Tom_P - just use the R12 natural -
Drops_00_R12Natural.dxf (9.1 KB)



dear Pascal. thanks

I could repeat your result with the R12Natural Scheme.

I don t want the simplify-option - that is part of the R12Natural Scheme.

In the Scheme, Curves Tab: As soon as i uncheck the simplify option, the curve is getting tessellated. (Polyline-approximation)
if i call the rhino simplifyCrv command on the curve, it is not changed.
if i reimport the correct export, the crvdeviation is 4.55427e-13, same number of segments.
ok, but if i check the result from the rhino _list command:
the centerpoints and Start/End-Points of the reimport derivate very little / last 3 digits:
center = (501.08090911755306, 12.728493751708157, -482.30058706523675)
center = (501.08090911755295, 12.728493751708172, -482.30058706523647)

is this simplify option of the dxf export documented somewhere ? (it has a Tolerance value)
does it do something else then the rhino-Command simplifyCrv ? (it uses document tolerance ?)

Thanks for your effort. kind regards -tom

Hi Tom - the short answer is, I do not know, I’ll have to ask a developer to look at this - the behavior seems counterinuitive to me, to say the least.


Dear @pascal thanks a lot - i 'll (try to ) stay patient.
Meanwhile i 'll tell the customer to handle “simplify” and Polyline with Bulge Arc as separate files / settings / schemes as work-arround. It s a big pity that .dxf has become a non-trustful pseudo-standard. I experience so much struggle around this format.
kind regards -tom

Hi Tom - what is the harm done, in the dxf output, if Simplify is used? Can the simplify tolerance be set small enough that it does nothing and get the results you need?


for example
a polyline is used to transfer the order of drill-holes - one hole per vertex.
simplify will filter the inner points, if they are in one row / line.
each vertex will become a XYZABC position for the robot - sometimes it makes sense that an arc is send in 2 180 or 4 90 degree pieces. with additional orientation.

but as i wrote above - it is ok to export / Import in two steps - but seams not nescessary…

if the curves are simplified, it would be nice to see the result before it s getting exported.
and as you wrote - it s a bit conterintuitive.

Got it, thanks.