pcbnew: Text rotation angles limited to 0 or 90 again

Bug #1753362 reported by Kevin Cozens on 2018-03-05
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
KiCad
Wishlist
Jeff Young

Bug Description

While working on a PCB I noticed that about half of the value and reference text on the board is upside down. When I went to rotate the text I found the rotation angles were limited to 0 or 90 degrees once again. I was told that rotation angles greater than 90 are still possible if I change a setting. However that setting is on a per footprint basis and requires several steps to make each change. It will be a lot of work to make all the changes needed on my board with 25 ICs plus all the additional components. I have some observations and suggestions about this recent change to pcbnew.

1. File format change
   The addition of a setting to limit rotations means there has been a file format change which needs to be documented.

2. Change the label in the dialog box for the setting
   In the Footprint Text Properties dialog box the current text reads "Unlock text orientation". This is misleading. If the text is locked I should not be able to change its rotation with the R key. A better label for the setting is "No text rotation limit". I was originally going to suggest "Limit text rotation" but that would be the opposite value for the setting.

3. Disable rotation angle choices when text rotation is limited
   In the Footprint Text Properties dialog box the selections for angles > 90 should be disabled when the text rotation limit is in effect.

4. Make the rotation limit setting global rather than per footprint
   I would prefer setting the rotation limit at the project level or as a Kicad setting (for all current projects and for future ones).

My current version of KiCad is as follows:

Application: kicad
Version: (5.0.0-rc2-dev-16-g319b7cf), debug build
Libraries:
    wxWidgets 3.0.2
    libcurl/7.47.0 GnuTLS/3.4.10 zlib/1.2.8 libidn/1.32 librtmp/2.3
Platform: Linux 4.4.0-116-generic x86_64, 64 bit, Little endian, wxGTK
Build Info:
    wxWidgets: 3.0.2 (wchar_t,wx containers,compatible with 2.8) GTK+ 2.24
    Boost: 1.58.0
    Curl: 7.47.0
    Compiler: GCC 5.4.0 with C++ ABI 1009

Build settings:
    USE_WX_GRAPHICS_CONTEXT=OFF
    USE_WX_OVERLAY=OFF
    KICAD_SCRIPTING=ON
    KICAD_SCRIPTING_MODULES=ON
    KICAD_SCRIPTING_WXPYTHON=ON
    KICAD_SCRIPTING_ACTION_MENU=ON
    BUILD_GITHUB_PLUGIN=ON
    KICAD_USE_OCE=ON
    KICAD_SPICE=OFF

Seth Hillbrand (sethh) wrote :

1) The addition of the per-footprint lock/unlock happened in November. You are right that it should be documented and file formats are one of the documentation tasks for 5.

2) I disagree here. The _orientation_ is locked. The text hint is correct. The rotation is not locked. You can see this by rotating your footprint.

3) This relates to 2. Inherently the text is relative to the footprint. Having angles greater than 90° makes sense if you can rotate your footprint. I'm not sure that taking that away serves a purpose.

4) Perhaps a command "Unlock all text orientations" is what you are looking for?

Changed in kicad:
importance: Undecided → Wishlist
status: New → Triaged

I was testing out the "lock orientation" feature. I can see it being useful but there are some implementation details about the feature that could be improved.

1. The setting text uses the word "lock" in a way that is not consistent with other uses of the word. It wasn't clear to me from the text beside the check box as to what was meant by "orientation".
  I think a better label would for the setting would be "Auto rotate text".
2. I discovered the "lock" is per text element and not per footprint
  Does this make sense? For the value and reference text why would you want only one to be "locked" and the other not?
3. If text orientation is "locked" why should you still be allowed to toggle text rotation between 0 and 90 degrees?
  If a footprint is locked you can't move it without being asked if you are sure you want to do that. If the value and reference text is being "locked" I would expect that it could not be rotated manually until it is unlocked.
4. If text orientation is "locked" then the Footprint Text Properties dialog box should disable all Orientation options other than the ones actually allowed while it is locked. If the text is fully locked then all options in the dialog box
 should be disabled.
5. Sideways text is only readable from the right side of the page and not the left side.
  I have a board with the bottom of the board along the left-side of the page. The "lock orientation" feature forces the text base line to be towards the right side of the page. That means it is upside down by default and I would have to go about unlocking a whole pile of value/reference text labels and flip the text 180 degrees to make it so the text base line is on the left side. That's a lot of work. An option is need that says whether the sideways text is rotated +90
or -90 degrees.

Jeff Young (jeyjey) on 2018-05-27
Changed in kicad:
assignee: nobody → Jeff Young (jeyjey)
status: Triaged → In Progress
milestone: none → 6.0.0-rc1
Jeff Young (jeyjey) on 2018-06-23
Changed in kicad:
milestone: 6.0.0-rc1 → 5.1.0
Jeff Young (jeyjey) on 2018-07-17
Changed in kicad:
status: In Progress → Fix Committed
Changed in kicad:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers