← Back to team overview

kicad-developers team mailing list archive

New to dev - What I'm working on

 

Group,

     Outside of managing the initial toolchain setup, and 1st week code
orientation - here's a list of things I've been working on and a short
blurb of how it is going:

1. PL Editor, scrollbar centering
    Status: could not identify what needs to be done to default with
scrollbars centered.  Needs further research for my understanding.
Currently - "Shelved" i.e. back-burner status

2. 3D Viewer - board color (realistic mode)
    Status: added preferences menu item to change board/soldermask color.
Was not happy with this being hard-coded.  Also save/restore result in
config write/read.  Currently - Done (although I would prefer to add
a modified layer widget method of doing this)

See: http://imgur.com/VYX1ChW

3. 3D Viewer - silkscreen color
    Status: identical to board color

4. 3D Viewer - allow realistic mode comment layer
    Status: Didn't like forcing comment and Eco layers off in realistic
mode.  Although I understand the rationale - I would prefer to allow the
user to make this choice using the "show" properties.  So I deleted the
hard-coded check for realistic mode in displaying these layers.  Currently
- Done

5. 3D Viewer - Save rotate positions and zoom factor
    Status: Was tired of zooming into my PCB object every time I went to
look at the 3D view - so I added saving the rotate position and zoom
factor.  Due to architecture choices on the x/y position, I d not save
this.  I find little loss of functionality (my original purpose) by
limiting to only rotation position and zoom factor.  However, this would
break down if the origin is selected in a way that positions the part "way
off center" in a displeasing manner.  Currently - Done (although would like
to add x,y offset eventually).

6. 3D Viewer - Copper shows up inside pad with drill hole (Through-hole GND
pin for example)
    Status: Tried to fix - but have not identified a proper method.

7. 3D Viewer - Finer control over panning
    Status: Found the x/y movement of the part insufficient to properly
center a part in a reasonable manner.  I added shift and control key
control when panning using the arrow keys.  A shift key reduces the x/y
increments by a small factor, the control key by a larger factor, and both
held down to the added factor ("huge") which gives the finest movement
control.  I also made sure this did not conflict with the control/shift
feature with the mousewheel.  Currently - Done

8. 3D Viewer - Decouple layer visible properties from 3D viewer
     Status: I found the fact the PCB had to have all layers visible in
order for the 3D viewer to allow control of the show/hide within the 3D
viewer.  Basically, the chosen functionality of Kicad was for the 3D viewer
to apply an additional "hide" mask over what the PCB already presented.
During use of the software, there are lots of reasons to show/hide layers
-- few of these relate to what I would want to see out of the 3D view.
Furthermore the 3D viewer has its own "show" buttons which imply if they
are checked - then this layer is shown.  Not true.  What I've done is make
a 2nd copy of the PCB for 3D viewer and turned all layers on during the 3D
viewer init.  This allowed for the 3D viewer "show" mask to apply properly
and decoupled the 3D viewer's show/hide from the PCB show/hide.  Currently
- Done

9. 3D Viewer - Soldermask transparency
    Status: I found the transparency of the solder mask was not
"realistic".  What I ended up with is better - as a matter of opinion.
When I made the solder mask less transparent I found the back side seemed
solid and front was fine.   I tried changing the OpenGL lighting as a
theory of why this was.  I looked at how the layers stacked in the "Z" axis
and didn't find an answer.  Eventually, I just applied a different
transparency for the back vs. the front -- still both less transparent than
the original.  The result is slightly more realistic than the original.
Note some of these items are as a learning exercise. Currently - Done
(although I need to remove some of the extra spotlight objects I added)

10. 3D Viewer - Attempt to add layer widget
      Status: I wanted to have a far-right layer widget method of both
showing/hiding layers and changing the colors of different layers within
the 3D view (decoupled from the PCBNew colors and show/hide).  The layer
widget code used in PCBNew is less (easily) reusable than other items.
Therefore, what I found is that I would have to make deeper changes than I
was ready to understand in order to get a modified layer widget into the 3D
viewer.  Status - Shelved, requires more research/architecture
understanding.

11. PCBNew - Crashes at exit
      Status: I've seen this from my 1st compiles before adding any of the
above with or without SCRIPTING on.  Currently - tracking, need to debug
but have not done so.

12. 3D Viewer - Orthographic / Perspective Projection Observations
      Status: It seems the "Enable/Disable" orthographic projection seems
to be orthographic when "off" (icon not highlighted blue) and perspective
when "on" (icon highlighted blue).  Therefore, it seems to be an
Enable/Disable for Perspective Projection.  Furthermore, the perspective
seems to be incorrectly matrix transformed as points which are
"further away" are expanded and points which are "closer" are contracted.
This seems opposite of a proper perspective view.  Currently - no dev.
work, just an observation.

Regards,
Jason

Follow ups