HPGL output scaling incorrect
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Inkscape |
Fix Released
|
Low
|
Alvin Penner |
Bug Description
The scaling factor used to generate hpgl output is slightly incorrect. Inkscape version 0.47.
In hpgl_output.py, the scaling is set to 1016/90. This assumes 40 plotter units per mm.
In fact, there are 40.2 plotter units per mm.
The following text is reproduced from the HP7475A interfacing and programming manual page 2-5:
"The plotting area is divided into plotter units; one plotter unit equals 0.025 mm (0.00098 in). There are approximately 40.2 plotter units per millimeter, or approximately 1021 plotter units per inch."
On this plotter, if I plot an object of a known size, and then measure it with a ruler, the size is incorrect. I modified the scale factor in hpgl_output.py to be 1021/90 instead of 1016/90 and repeated the experiment. This caused the object to measure correctly.
I don't know if any other plotters use this same value. It might be useful to allow the user to specify the number of plotter units per inch for their specific plotter in the dialog that appears when saving as hpgl.
Anyway, at least for the HP 7475A, the correct number is 1021, not 1016.
Neil Baylis
Related branches
tags: | added: exporting hpgl |
Changed in inkscape: | |
importance: | Undecided → Wishlist |
status: | New → In Progress |
Changed in inkscape: | |
milestone: | none → 0.48 |
Changed in inkscape: | |
importance: | Wishlist → Low |
Changed in inkscape: | |
assignee: | nobody → Alvin Penner (apenner) |
Changed in inkscape: | |
status: | Fix Committed → Fix Released |
attached is a modified version of hpgl_output.py that deals with this. It contains a new parameter called resolution. Could you try this and see if it helps?