← Back to team overview

kicad-developers team mailing list archive

Re: [PATCH] CPolyLine -> SHAPE_POLY_SET refactor

 

Hi JP,

Yes I can confrim that it seems to work now, but since you mentioned
that it was not fixed properly yet, I thought it was worth
highlighting in this thread. Are unittests missing here for the
geometry library or is this on a higher level?

Nick

2017-04-10 8:21 GMT+02:00 jp charras <jp.charras@xxxxxxxxxx>:
> Le 09/04/2017 à 22:18, Nick Østergaard a écrit :
>> Hi Alejandro,
>>
>> It seems like there is a use case you may not have considered. The zone cutout.
>
> I am thinking I recently fixed this issue.
>
> However I am not thrilled by commit f68ce306bdca0a2f5a1a234497ede6550ca79a0b for geometry/seg.h
> Instead of storing coordinates, SEG stores after this commit references to VECTOR2I of an other entity.
> It means when you (for some reason) modify a coordinate value in a SEG instance, you can modify also
> the other entity, that is not expected.
> (I saw that when I fixed the zone cutout issues).
> It was one (but not the only one) reason cutouts did not work.
>
> However I am really not satisfied by the way polygon zones are created or edited in GAL:
> they can easily be self intersecting (when created or when a corner is moved or deleted) or overlapping.
>
> In Kicad, polygons *cannot be* self intersecting (not accepted in Gerber files).
>
> In Legacy mode, they are tested and modified (break into 2 or more polygons, and/or merged with
> similar zones) after each change.
> This is mandatory to avoid broken zones.
>
>>
>> See https://bugs.launchpad.net/kicad/+bug/1679795
>>
>>
>> 2017-03-24 11:01 GMT+01:00 Maciej Sumiński <maciej.suminski@xxxxxxx>:
>>> TL;DR: Everything seems fine, I am going to merge the branch today.
>>>
>>> For the record: I got the board that was showing the differences. I
>>> refilled zones using the master branch, then once again with the polygon
>>> refactor patch applied. Diff of zone polygons shows no difference.
>>>
>>> There were differences between the zones in the original file and the
>>> just refilled, so there could be a change in the filling algorithm in
>>> the meantime.
>>>
>>> I am going to merge the branch soon. Thank you Alejandro, I know it was
>>> a rough road, but we are really grateful for your work. Well done!
>>>
>>> Regards,
>>> Orson
>>>
>>> On 03/23/2017 09:19 AM, Maciej Sumiński wrote:
>>>> Finally I had some time to test the branch and I could not find any
>>>> problems, hence I would like to merge it. Let me know if there are any
>>>> objections.
>>>>
>>>> @Nick:
>>>> Could you give more details? I placed keepout zones and refilled zones
>>>> for all demo boards, and every time I get exactly the same zones (diffed
>>>> two .kicad_pcb files).
>>>>
>>>> Regards,
>>>> Orson
>>>>
>>>> On 02/18/2017 08:13 PM, Nick Østergaard wrote:
>>>>> I have noticed that Alejandro's branch does not have a clearance
>>>>> distance to a keepout zone, which the old filling algorithm has.
>>>>>
>>>>> I am not sure what is really desired, but this could potentially break
>>>>> old designs, although I like the new way where the zone goes to the
>>>>> keepout edge.
>>>>>
>>>>> 2017-02-17 20:24 GMT+01:00 jp charras <jp.charras@xxxxxxxxxx>:
>>>>>> Le 17/02/2017 à 19:41, Alejandro Garcia Montoro a écrit :
>>>>>>> Hi!
>>>>>>>
>>>>>>> The errors were caused by some asserts that contained functions that needed to be called... My bad.
>>>>>>> Now the asserts are gone and the errors are handled via out_of_range exceptions (they were related
>>>>>>> with possible illegal memory access),
>>>>>>>
>>>>>>> JP, I finally saw the zone filling error in the release build!
>>>>>>>
>>>>>>> Nick and JP, if you can pull and test the branch again and see if the errors you saw are fixed, that
>>>>>>> would be great. Thank you.
>>>>>>>
>>>>>>> Best,
>>>>>>> Alejandro
>>>>>>
>>>>>>
>>>>>> At first glance, the issues I previously saw are gone.
>>>>>> Thanks.
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Jean-Pierre CHARRAS
>
>
> --
> Jean-Pierre CHARRAS
>
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers
> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help   : https://help.launchpad.net/ListHelp


Follow ups

References