Re: [Kicad-developers] Routing algorithm used in PCB

2017-08-28 Thread Arun Kumar
At least the non-resource intensive tasks like creating schematics, symbols
and foot prints etc can be pushed on to the web.

Resource intensive tasks can be done by a server side code (c++ or python
code which you already developed can be used at the server side).

Google is able to run services like sheets, docs and other resource
intensive services on the cloud. Everything will eventually move to the
cloud. It's better that we start a web based as early as possible.

Today even the development environment like IDEs, SDK, workspaces have
moved to cloud (example https://www.codenvy.com/)

On Mon, Aug 28, 2017 at 10:26 PM, Bastian Neumannn <
neumann.bast...@gmail.com> wrote:

> KiCad does come with a python interface.
> Moving to python as native system and other web technologies are not a
> good idea imho.
>
> Not every software is better with web and cloud stuff.
>
> 2017-08-28 18:04 GMT+02:00 Arun Kumar :
>
>> Documentation of code or the usage of Kicad? I see that there is already
>> documentation on the user guide.
>>
>> Would be happy if Kicad transitions to python or other web technologies.
>>
>> On Mon, Aug 28, 2017 at 8:56 PM, Fabrizio Tappero <
>> fabrizio.tapp...@gmail.com> wrote:
>>
>>> Hi Arun,
>>> if yu like you can contribute with the documentation.
>>>
>>> Regards
>>> Fabrizio
>>>
>>>
>>> On Mon, Aug 28, 2017 at 10:47 AM, Arun Kumar 
>>> wrote:
>>>
>>>> I don't know C++ so unable  to contribute and I want to build my own
>>>> FOSS app with the languages I know. I always wanted to contribute to an
>>>> existing project there  isn't a proper documentation about the source code.
>>>> Have to go through hundreds and thousands of lines of code to understand
>>>> where they have implemented a specific functionality.
>>>>
>>>> I browsed the folders of the source code of Kicad but unable to
>>>> understand what routing techniques are used and the code associated with
>>>> it. I  found  a folder with name algorithm but couldn't understand how
>>>> they're working with the parts.
>>>>
>>>> Thanks,
>>>> Arun
>>>>
>>>> On Mon, Aug 28, 2017 at 12:04 PM, José Ignacio 
>>>> wrote:
>>>>
>>>>> You already established that you want to extract techniques from kicad
>>>>> for your own project instead of contributing. The code is all there in the
>>>>> repo, free to use under the GPL.
>>>>>
>>>>> On Mon, Aug 28, 2017 at 12:41 AM, Arun Kumar 
>>>>> wrote:
>>>>>
>>>>>> Hi Team,
>>>>>>
>>>>>> Which PCB routing algorithm are used in PCB designing in Kicad?
>>>>>>
>>>>>> Thanks
>>>>>> Arun
>>>>>>
>>>>>> ___
>>>>>> 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
>>>>>>
>>>>>>
>>>>>
>>>>
>>>> ___
>>>> 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
>>>>
>>>>
>>>
>>
>> ___
>> 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
>>
>>
>
___
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


Re: [Kicad-developers] Routing algorithm used in PCB

2017-08-28 Thread Arun Kumar
Documentation of code or the usage of Kicad? I see that there is already
documentation on the user guide.

Would be happy if Kicad transitions to python or other web technologies.

On Mon, Aug 28, 2017 at 8:56 PM, Fabrizio Tappero <
fabrizio.tapp...@gmail.com> wrote:

> Hi Arun,
> if yu like you can contribute with the documentation.
>
> Regards
> Fabrizio
>
>
> On Mon, Aug 28, 2017 at 10:47 AM, Arun Kumar 
> wrote:
>
>> I don't know C++ so unable  to contribute and I want to build my own FOSS
>> app with the languages I know. I always wanted to contribute to an existing
>> project there  isn't a proper documentation about the source code. Have to
>> go through hundreds and thousands of lines of code to understand where they
>> have implemented a specific functionality.
>>
>> I browsed the folders of the source code of Kicad but unable to
>> understand what routing techniques are used and the code associated with
>> it. I  found  a folder with name algorithm but couldn't understand how
>> they're working with the parts.
>>
>> Thanks,
>> Arun
>>
>> On Mon, Aug 28, 2017 at 12:04 PM, José Ignacio 
>> wrote:
>>
>>> You already established that you want to extract techniques from kicad
>>> for your own project instead of contributing. The code is all there in the
>>> repo, free to use under the GPL.
>>>
>>> On Mon, Aug 28, 2017 at 12:41 AM, Arun Kumar 
>>> wrote:
>>>
>>>> Hi Team,
>>>>
>>>> Which PCB routing algorithm are used in PCB designing in Kicad?
>>>>
>>>> Thanks
>>>> Arun
>>>>
>>>> ___
>>>> 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
>>>>
>>>>
>>>
>>
>> ___
>> 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
>>
>>
>
___
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


Re: [Kicad-developers] wire connections

2017-08-28 Thread Arun Kumar
Now I realise that it's a bit complex because of the followup steps.

Make the drawing area as a 2D array grid P[ ] [  ] with walkable points
representing as 0 and obstacle points as 1.

walkable point P[5][6] =0
obstacle point P[5] [7] = 1

1) On each part's drag stop event, make the area (bounding box of the part)
occupied by the part as obstacle so that wire cannot be drawn over it.

2) Make the area from where the part moved as walkable so that other wires
can pass through that area.

3) check if paths already exist with the pins of the part moved. If yes,
remove that path and make the area of the path walkable. else check next pin

4) Draw the new path from the new position and mark he path as obstacle so
that other wires do not overlap with this.

5) Push the new path into an array or object.

6) update the walkable and obstacles in the grid

7) iterate the above steps with other pins of the part moved.


On Tue, Aug 22, 2017 at 7:10 PM, Arun Kumar  wrote:

> Yes, I'm referring to the schematic wires. Through the G hotkey has the
> functionality, the wires are not  orthogonal bend at 90  degrees) after
> drag/move.
>
> I don't think it would be lot of logic to add. Because we can use any
> existing routing library such as A* search algorithm.
>
> 1) Call the routing library immediately after the drag stop event.
> 2) Pass the part dragged to the routing library and the connections
> associated with it.
> 3) The A* search library re-draws the wires.
>
>
>
>
> On Tue, Aug 22, 2017 at 6:41 PM, su_pyrow  brooklynelectronicsgroup.com> wrote:
>
>> Try 'G' to grab rather than 'M' to move
>> is that what you mean?
>>
>>
>> On 08/22/2017 09:04 AM, Arun Kumar wrote:
>> > Hi Team,
>> >
>> > The wire connections doesn't move or sustain when the parts are moved
>> > around. Is there any work going on to address this. Almost in all
>> > commercial softwares the wires connections adjust as per the movement of
>> > the parts.
>> >
>> > Thanks,
>> > Arun
>> >
>> >
>> > ___
>> > 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
>> >
>>
>>
>>
>> ___
>> 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
>>
>>
>
___
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


Re: [Kicad-developers] Routing algorithm used in PCB

2017-08-28 Thread Arun Kumar
I don't know C++ so unable  to contribute and I want to build my own FOSS
app with the languages I know. I always wanted to contribute to an existing
project there  isn't a proper documentation about the source code. Have to
go through hundreds and thousands of lines of code to understand where they
have implemented a specific functionality.

I browsed the folders of the source code of Kicad but unable to understand
what routing techniques are used and the code associated with it. I  found
 a folder with name algorithm but couldn't understand how they're working
with the parts.

Thanks,
Arun

On Mon, Aug 28, 2017 at 12:04 PM, José Ignacio 
wrote:

> You already established that you want to extract techniques from kicad for
> your own project instead of contributing. The code is all there in the
> repo, free to use under the GPL.
>
> On Mon, Aug 28, 2017 at 12:41 AM, Arun Kumar 
> wrote:
>
>> Hi Team,
>>
>> Which PCB routing algorithm are used in PCB designing in Kicad?
>>
>> Thanks
>> Arun
>>
>> ___
>> 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
>>
>>
>
___
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


[Kicad-developers] Routing algorithm used in PCB

2017-08-27 Thread Arun Kumar
Hi Team,

Which PCB routing algorithm are used in PCB designing in Kicad?

Thanks
Arun
___
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


Re: [Kicad-developers] wire connections

2017-08-22 Thread Arun Kumar
Yes, I'm referring to the schematic wires. Through the G hotkey has the
functionality, the wires are not  orthogonal bend at 90  degrees) after
drag/move.

I don't think it would be lot of logic to add. Because we can use any
existing routing library such as A* search algorithm.

1) Call the routing library immediately after the drag stop event.
2) Pass the part dragged to the routing library and the connections
associated with it.
3) The A* search library re-draws the wires.




On Tue, Aug 22, 2017 at 6:41 PM, su_pyrow <
su_py...@brooklynelectronicsgroup.com> wrote:

> Try 'G' to grab rather than 'M' to move
> is that what you mean?
>
>
> On 08/22/2017 09:04 AM, Arun Kumar wrote:
> > Hi Team,
> >
> > The wire connections doesn't move or sustain when the parts are moved
> > around. Is there any work going on to address this. Almost in all
> > commercial softwares the wires connections adjust as per the movement of
> > the parts.
> >
> > Thanks,
> > Arun
> >
> >
> > ___
> > 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
> >
>
>
>
> ___
> 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
>
>
___
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


[Kicad-developers] wire connections

2017-08-22 Thread Arun Kumar
Hi Team,

The wire connections doesn't move or sustain when the parts are moved
around. Is there any work going on to address this. Almost in all
commercial softwares the wires connections adjust as per the movement of
the parts.

Thanks,
Arun
___
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


Re: [Kicad-developers] Wiring logic/algorithm

2017-08-03 Thread Arun Kumar
I'm working on a Web based open source schematic editor. So want to borrow
some techniques from kicad.

On Thu 3 Aug, 2017, 7:25 PM Wayne Stambaugh,  wrote:

> C++ is a prerequisite for working on KiCad.  I doubt anyone will have
> the time to generate psuedo code for you.
>
> On 8/3/2017 8:31 AM, Arun Kumar wrote:
> > I'm not familiar with C++. May be a pseudo code would be of great help.
> >
> >
> > On Thu 3 Aug, 2017, 5:15 PM Wayne Stambaugh,  > <mailto:stambau...@gmail.com>> wrote:
> >
> > On 8/3/2017 3:54 AM, Simon Richter wrote:
> > > Hi,
> > >
> > > On 03.08.2017 07:09, Arun Kumar wrote:
> > >
> > >> Could you please let me know the wiring logic used in kicad. Like
> how
> > >> the wire is drawn uisng mouse movement and clicks.
> > >
> > > The first click starts a wire, which already has two segments, one
> > > horizontal, one vertical, with the first segment being the longer
> one
> > > initially.
> > >
> > > Moving the mouse then adjusts the length of both at once. If the
> first
> > > segment disappears, they switch places (so if you start horizontal
> and
> > > pass through the point over the beginning, the vertical segment
> > becomes
> > > first).
> > >
> > > Clicking fixes the point between the two segments currently being
> > > edited, and adds another segment at the end, which then has to be
> at a
> > > 90 degree angle.
> > >
> > > Clicking on a connection point (end of another wire or end of a
> > > component pin) ends the wire. If you want to end the current wire
> > > without connecting anywhere, double-click.
> > >
> > >> Also the wiring is rerouted when the components are move around.
> > Could
> > >> you please explain the under lying logic and algorithm. If
> possible
> > >> please guide me to the relevant code of kicad.
> >
> > The wire drawing code is in eeschema/bus-wire-junction.cpp and the
> > move/drag code is in eeschema/block.cpp.
> >
> > >
> > > When you move a component ('m' key), nothing else moves. When you
> > grab a
> > > component ('g' key), all wires that are already connected remain
> > > connected, and the last segment that connects to the component is
> > adjusted.
> > >
> > >Simon
> > >
> > >
> > >
> > > ___
> > > Mailing list: https://launchpad.net/~kicad-developers
> > > Post to : kicad-developers@lists.launchpad.net
> > <mailto:kicad-developers@lists.launchpad.net>
> > > Unsubscribe : https://launchpad.net/~kicad-developers
> > > More help   : https://help.launchpad.net/ListHelp
> > >
> >
> > ___
> > Mailing list: https://launchpad.net/~kicad-developers
> > Post to : kicad-developers@lists.launchpad.net
> > <mailto:kicad-developers@lists.launchpad.net>
> > Unsubscribe : https://launchpad.net/~kicad-developers
> > More help   : https://help.launchpad.net/ListHelp
> >
>
___
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


Re: [Kicad-developers] Wiring logic/algorithm

2017-08-03 Thread Arun Kumar
I'm not familiar with C++. May be a pseudo code would be of great help.

On Thu 3 Aug, 2017, 5:15 PM Wayne Stambaugh,  wrote:

> On 8/3/2017 3:54 AM, Simon Richter wrote:
> > Hi,
> >
> > On 03.08.2017 07:09, Arun Kumar wrote:
> >
> >> Could you please let me know the wiring logic used in kicad. Like how
> >> the wire is drawn uisng mouse movement and clicks.
> >
> > The first click starts a wire, which already has two segments, one
> > horizontal, one vertical, with the first segment being the longer one
> > initially.
> >
> > Moving the mouse then adjusts the length of both at once. If the first
> > segment disappears, they switch places (so if you start horizontal and
> > pass through the point over the beginning, the vertical segment becomes
> > first).
> >
> > Clicking fixes the point between the two segments currently being
> > edited, and adds another segment at the end, which then has to be at a
> > 90 degree angle.
> >
> > Clicking on a connection point (end of another wire or end of a
> > component pin) ends the wire. If you want to end the current wire
> > without connecting anywhere, double-click.
> >
> >> Also the wiring is rerouted when the components are move around. Could
> >> you please explain the under lying logic and algorithm. If possible
> >> please guide me to the relevant code of kicad.
>
> The wire drawing code is in eeschema/bus-wire-junction.cpp and the
> move/drag code is in eeschema/block.cpp.
>
> >
> > When you move a component ('m' key), nothing else moves. When you grab a
> > component ('g' key), all wires that are already connected remain
> > connected, and the last segment that connects to the component is
> adjusted.
> >
> >Simon
> >
> >
> >
> > ___
> > 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
> >
>
> ___
> 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
>
___
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


[Kicad-developers] Wiring logic/algorithm

2017-08-03 Thread Arun Kumar
Hi Team,

Could you please let me know the wiring logic used in kicad. Like how the
wire is drawn uisng mouse movement and clicks.

Also the wiring is rerouted when the components are move around. Could you
please explain the under lying logic and algorithm. If possible please
guide me to the relevant code of kicad.

Thanks
Arun
___
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


[Kicad-developers] Wiring logic/algorithm

2017-08-02 Thread Arun Kumar
Hi Team,

Could you please let me know the wiring logic used in kicad. Like how the
wire is drawn uisng mouse movement and clicks.

Also the wiring is rerouted when the components are move around. Could you
please explain the under lying logic and algorithm. If possible please
guide me to the relevant code of kicad.

Thanks
Arun
___
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