# [Bf-committers] poll: uv/col mirror might not work for bmesh ngons

Wael EL ORAIBY wael.eloraiby at gmail.com
Sun Sep 6 19:08:03 CEST 2009

```joe, campbell, can you check on patch 19287, it adds reverse uv and
removes uv mirror. Hope it's what you want campbell :)

Wael

On Sat, Sep 5, 2009 at 2:18 AM, joe<joeedh at gmail.com> wrote:
> I don't think it matters that one uv is the same.  I think the idea is
> you reverse, then rotate to what you want.
>
> Joe
>
> On Fri, Sep 4, 2009 at 3:25 PM, Wael EL ORAIBY<wael.eloraiby at gmail.com> wrote:
>> hmm, assume you have a polygon with n vertices v[0] to v[n-1], the
>> symmetric vertex of v[i] is v[n-i], of course to do this operation,
>> you need to have n = 2 * k (an even number) otherwise, the uv of one
>> vertex will remain the same. In the case where n is odd, the choice of
>> the vertex in the current way of dong things is unexpected, and this
>> is why rotation is needed (which does not makes things as easy as you
>> expect). I ll do it in the general case, but regardless, I must note,
>> that imho, the odd sided polygon is unexpected, and better done in the
>> uv windows :)
>>
>> Wael
>>
>> On Fri, Sep 4, 2009 at 7:33 PM, joe<joeedh at gmail.com> wrote:
>>> Wait, why does a reverse UV command require even-sided polygons?  It's
>>> not a big deal if the user has to use the rotate uv tool afterwards.
>>>
>>> Joe
>>>
>>> On Fri, Sep 4, 2009 at 7:43 AM, Wael EL ORAIBY<wael.eloraiby at gmail.com> wrote:
>>>> nop, the inverse only requires that the polygons have even vertex
>>>> count. For uv rotation, the code is already working, in CW and CCW
>>>> direction :)
>>>>
>>>> So, for now I ll do the inverse for even sides n-gons (otherwise you
>>>> need to select a vertex somehow and a face: something that is not
>>>> usual in blender although doable if we remove the BM_flush). I believe
>>>> a more powerful tool should be written to handle all those later,
>>>> maybe in the UV window. detach, then choose a vertex->rotate, etc...
>>>> or maybe a python script. For now we have to settle with the reverse
>>>> on even sided ngons.
>>>>
>>>> However, the use of such tools is still singular (only Campbell showed
>>>> interest), and maybe it's better to rewrite them as python scripts =).
>>>>
>>>> Wael
>>>>
>>>> On Fri, Sep 4, 2009 at 2:59 AM, joe<joeedh at gmail.com> wrote:
>>>>> A reverse UVs tool shouldn't be too hard, I imagine.
>>>>>
>>>>> Joe
>>>>>
>>>>> On Thu, Sep 3, 2009 at 12:12 PM, Campbell Barton<ideasman42 at gmail.com> wrote:
>>>>>> At the time I didn't care which axis, if it was wrong Id just rotate
>>>>>> the UV's until it was how I wanted.
>>>>>> This is pretty crap, but before this it was terrible because Id have
>>>>>> to manually flip the UVs in the UV window...
>>>>>> - change the mode not to select connected UVs
>>>>>> - select the corner of my quad (often a number of clicks each time,
>>>>>> translate to test I had the right one)
>>>>>> - move the uvs about...
>>>>>> - connect them back with a limited stitch or not. then wonder later
>>>>>> why the uvs werent connected.
>>>>>>
>>>>>> Sometimes I also detached the face, mirrored manually then flipped
>>>>>> that. also yuck :)
>>>>>>
>>>>>> Why not replace mirror UV with a reverse UV command? - reverse the
>>>>>> direction of the UVs in the face, this way it makes sense for ngons
>>>>>> too. some uv rotation would be needed after in most cases too.
>>>>>> Unless we have some way to define the point to flip along, or use the
>>>>>> active edge/vert, but this isnt so important at the moment IMHO.
>>>>>>
>>>>>> On Thu, Sep 3, 2009 at 10:56 AM, Wael EL ORAIBY<wael.eloraiby at gmail.com> wrote:
>>>>>>> Indeed, the problem with the current code is that it only switch the
>>>>>>> uvs of parallel edges in a quad, so this is what they call axis, of
>>>>>>> course, this is possible for an ngon with even vertex count, but still
>>>>>>> require to select a base edge for the operation. In the case of odd
>>>>>>> vertex count we need to select a vertex. Too much work for little use
>>>>>>> imho (more work on UI than on the code itself).
>>>>>>>
>>>>>>> I wonder if this is not a very old zombie code from the early versions
>>>>>>> of blenders
>>>>>>>
>>>>>>> Wael
>>>>>>>
>>>>>>> On Thu, Sep 3, 2009 at 7:21 PM, joe<joeedh at gmail.com> wrote:
>>>>>>>> That sounds good.  In this case it's probably better to wait for
>>>>>>>> people to complain (since they can explain how it's supposed to work
>>>>>>>> in the first place) rather then try and figure it out ourselves.  I
>>>>>>>> suspect you're right though, that no one uses those tools (they sound
>>>>>>>> too iffy to me to be reliable).
>>>>>>>>
>>>>>>>> Joe
>>>>>>>>
>>>>>>>> On Thu, Sep 3, 2009 at 11:14 AM, Wael EL ORAIBY<wael.eloraiby at gmail.com> wrote:
>>>>>>>>> It seems that this feature lacks interest, no one seems to use it, for
>>>>>>>>> now I think it is better to have it removed. The axis orientation was
>>>>>>>>> not right even, once you do an orientation it goes to the next. I
>>>>>>>>> believe we should have it removed. (this goes also for color). The
>>>>>>>>> reverse have the same issue for ngons with odd vertex count. maybe a
>>>>>>>>> new UI method should be developed for that, till then better move to
>>>>>>>>> something of more interest.
>>>>>>>>>
>>>>>>>>> To Joe: I will comment both (mirror uv and colors), and proceed on
>>>>>>>>> with color rotation.
>>>>>>>>>
>>>>>>>>> Wael
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Thu, Sep 3, 2009 at 10:05 AM, Campbell Barton<ideasman42 at gmail.com> wrote:
>>>>>>>>>> for now I think its fine only to mirror quads.
>>>>>>>>>> with ngons it would make more sense to an option to reverse the UV's,
>>>>>>>>>> but no need for this short term.
>>>>>>>>>>
>>>>>>>>>> On Thu, Sep 3, 2009 at 12:59 AM, Wael EL ORAIBY<wael.eloraiby at gmail.com> wrote:
>>>>>>>>>>> Hi,
>>>>>>>>>>>
>>>>>>>>>>> I have been working on porting some of the old mesh code to bmesh with
>>>>>>>>>>> the help of joe, so far things were been well ported. However, some
>>>>>>>>>>> features like uv/col face mirror in 3D view (NOT UV/Image editor)
>>>>>>>>>>> while in edit mode won't work for bmesh (while in 3D view - edit mode
>>>>>>>>>>> - select a face and press Ctrl-F). The reason is simple, the old code
>>>>>>>>>>> relied on polygon to be  a quad or a triangle, (although for triangle,
>>>>>>>>>>> the mirror was a bit awkward). This feature won't work for n-gons
>>>>>>>>>>> where n > 4, simply because there are many axis to choose from. So the
>>>>>>>>>>> question is:
>>>>>>>>>>> 1. do we ignore this feature? how many ppl actually use it (last night
>>>>>>>>>>> at the irc channel no one responded) ?
>>>>>>>>>>> 2. do we only take care of the triangle and quad for the moment ?
>>>>>>>>>>> 3. do we make a user interface for choosing the axis relative to
>>>>>>>>>>> mirroring - in this case, I have an idea, but is a bit complicated for
>>>>>>>>>>> a feature that very few actually use. This time could be spent porting
>>>>>>>>>>> other part of the code or adding new features.
>>>>>>>>>>>
>>>>>>>>>>> Tell me what you think.
>>>>>>>>>>>
>>>>>>>>>>> Wael
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> --
>>>>>>>>>>> Wael El Oraiby
>>>>>>>>>>> Laboratoire MIA
>>>>>>>>>>> Université de Haute Alsace
>>>>>>>>>>> _______________________________________________
>>>>>>>>>>> Bf-committers mailing list
>>>>>>>>>>> Bf-committers at blender.org
>>>>>>>>>>> http://lists.blender.org/mailman/listinfo/bf-committers
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>> - Campbell
>>>>>>>>>> _______________________________________________
>>>>>>>>>> Bf-committers mailing list
>>>>>>>>>> Bf-committers at blender.org
>>>>>>>>>> http://lists.blender.org/mailman/listinfo/bf-committers
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> Wael El Oraiby
>>>>>>>>> Laboratoire MIA
>>>>>>>>> Université de Haute Alsace
>>>>>>>>> _______________________________________________
>>>>>>>>> Bf-committers mailing list
>>>>>>>>> Bf-committers at blender.org
>>>>>>>>> http://lists.blender.org/mailman/listinfo/bf-committers
>>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> Bf-committers mailing list
>>>>>>>> Bf-committers at blender.org
>>>>>>>> http://lists.blender.org/mailman/listinfo/bf-committers
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Wael El Oraiby
>>>>>>> Laboratoire MIA
>>>>>>> Université de Haute Alsace
>>>>>>> _______________________________________________
>>>>>>> Bf-committers mailing list
>>>>>>> Bf-committers at blender.org
>>>>>>> http://lists.blender.org/mailman/listinfo/bf-committers
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> - Campbell
>>>>>> _______________________________________________
>>>>>> Bf-committers mailing list
>>>>>> Bf-committers at blender.org
>>>>>> http://lists.blender.org/mailman/listinfo/bf-committers
>>>>>>
>>>>> _______________________________________________
>>>>> Bf-committers mailing list
>>>>> Bf-committers at blender.org
>>>>> http://lists.blender.org/mailman/listinfo/bf-committers
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Wael El Oraiby
>>>> Laboratoire MIA
>>>> Université de Haute Alsace
>>>> _______________________________________________
>>>> Bf-committers mailing list
>>>> Bf-committers at blender.org
>>>> http://lists.blender.org/mailman/listinfo/bf-committers
>>>>
>>> _______________________________________________
>>> Bf-committers mailing list
>>> Bf-committers at blender.org
>>> http://lists.blender.org/mailman/listinfo/bf-committers
>>>
>>
>>
>>
>> --
>> Wael El Oraiby
>> Laboratoire MIA
>> Université de Haute Alsace
>> _______________________________________________
>> Bf-committers mailing list
>> Bf-committers at blender.org
>> http://lists.blender.org/mailman/listinfo/bf-committers
>>
> _______________________________________________
> Bf-committers mailing list
> Bf-committers at blender.org
> http://lists.blender.org/mailman/listinfo/bf-committers
>

--
Wael El Oraiby
Laboratoire MIA
Université de Haute Alsace
```