On 1/4/19 6:18 PM, Tomasz Wlostowski wrote:
> On 04/01/2019 18:51, Brian Piccioni wrote:
>> I am still keen to attempt to incorporate geographical component annotation 
>> into KiCad. In general, it is preferable for component annotation to be done 
>> relative to the PCB and in some logical order (left/right, top to bottom, 
>> etc). Thereafter this information is imported to the schematic. I wrote a 
>> standalone utility (RenumKicadPCB) which does this but ideally, we’d want 
>> the function built into Kicad.
>>
>> I understand this would be viewed as a “rogue effort” but lack of 
>> geographical component annotation is a major missing feature and my hope is 
>> that if my code works the developers might consider adding it or something 
>> like it into the project. Otherwise I’ll just maintain my own variant of the 
>> two affected applications for limited use.
>>
>> I am not used to working in c++ or working on large projects. Nevertheless, 
>> I figured I’d give it a try. I have been studying the source for a few weeks 
>> and have developed a strategy which would be very simple to implement if I 
>> had more skill/experience. 
>>
>> The first thing I want to do is to add the ability for eeSchema to import a 
>> “was/is” file to update schematic annotation. Since renumbering the PCB can 
>> be done manually or with a plugin this seems like a good first step. Since 
>> an annotation function already exists in eeSchema, all I would have to do it 
>> provide an option for replacing annotation with a was/is rather than the 
>> annotation generated by eeSchema’s annotate function. 
>>
>> I see a clear path to doing so however, the scope of Kicad and my limited 
>> experience with c++ and large projects mean it is not going to be easy for 
>> me. I am not that adept at navigating Doxygen files so I have a few 
>> questions regarding the source code (these are limited to eeSchema at the 
>> moment).
>>
>> 1)   Where are the file IO functions? I have searched for (for example) 
>> LoadProjectFIle and find the prototype but not the actual function. 
>> Similarly I find the prototype for SaveEEFile() but not the actual function.
>>
>> 2)   I would like to copy as much of the existing code and dialogs as 
>> possible (i.e. make new dialog based off another dialog) but when I open, 
>> for example, dialog_annotate_base.h I see
>>
>>      
>> ///////////////////////////////////////////////////////////////////////////
>>      // C++ code generated with wxFormBuilder (version Jun  5 2018)
>>      // http://www.wxformbuilder.org/
>>      //
>>      // PLEASE DO *NOT* EDIT THIS FILE!
>>      
>> ///////////////////////////////////////////////////////////////////////////
>>      
>> But I can’t find the “source” from which this file is generated. Where is it?
>>
>> 3)   There is a guide on the Kicad documentation “Tool framework” which 
>> describes adding a tool to PCBNew. Is there a similar guide to adding a 
>> tool/function to eeSchema? How do I go about this?
>>
> 
> Hi Brian,
> 
> Others have already answered to your questions so here's my offer: I
> believe geographical annotation is a very useful feature so I can offer
> a bit of my help. Point me to:
> - the latest sources of your tool,
> - a sketch of the user interface (dialogs), can be a hand-made drawing
> - a brief description of how you want all this to work (in terms of user
> experience).
> 
> Once I have this information, I'll try making a basic port of your code
> to Kicad codebase to the stage where you could take it over and
> contribute further features/fixes on your own.
> 
> Tom
> 

There is a lower level piece of the puzzle that is missing and that is
back annotation from the board editor to the schematic editor.  This is
non-trivial because you have create a netlist from the board information
and pass it back to the schematic editor.  This would be the only
solution that I would accept.  I want to avoid multiple ad-hoc solutions
for back annotation purposes.

Cheers,

Wayne

_______________________________________________
Mailing list: https://launchpad.net/~kicad-developers
Post to     : kicad-developers@lists.launchpad.net
Unsubscribe : https://launchpad.net/~kicad-developers
More help   : https://help.launchpad.net/ListHelp

Reply via email to