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

Wael EL ORAIBY wael.eloraiby at gmail.com
Fri Sep 4 23:25:31 CEST 2009

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