I guys,
This is the first time I need to rotate a comp by 90 degrees.
Can we do that?
Thanks
I guys,
This is the first time I need to rotate a comp by 90 degrees.
Can we do that?
Thanks
look up the Transform TOP and Flip TOP
Thanks FaustoB for your reply. but I was looking a way to keep all my UI in a container and rotate it because of my interactive screen which is flipped.
I think this can’t be done?
I see, sorry, my bad, I misread your post (and title).
I thought you were talking about rotating a comp, intended as composite TOP.
I am not sure if rotating a container with UI is possible or not.
You may have some luck with the geoPanel component in the Palette Techniques section.
It allows you to re-draw UI as interactive textured geometry.
Thank you Rob for this solution!
I will try it this weekend
Thought this was an interesting problem so I took a stab at it.
Here’s a comp that lets you rotate 90 left or right and even flip 180. Just point the ‘Target’ parameter toward the comp you need to flip.
Seems like it’s working pretty well but I haven’t really tested it much. Let me know if you see any problems and check out the .toe file for a working example.
flipaDeeDooDah.tox (1.2 KB)
flipaDeeDooDah.toe (5.35 KB)
Hey, nice one Matthew! thank you for this!
This is a nice trick to use an opviewer and the panel CHOP for this!
Thanks again!
hi,
no solution here, just following
could be nice to add this to the wish list…
Nice solution with the opview, but how does it handle the mouse position for mouse clic ?
@Gallow
It uses a Panel Execute DAT that executes every time one of these panel values change:
insideu
insidev
lselect
mselect
rselect
The Panel Execute DAT remaps the u and v coordinates and simulates the interaction on the target COMP using its interactMouse() method. Here’s what’s in the onValueChange() callback:
def onValueChange(panelValue):
p = parent().panel
if parent().par.Rotate == 'right':
u = 1-p.insidev
v = p.insideu
elif parent().par.Rotate == 'left':
u = p.insidev
v = 1-p.insideu
else:
u = 1-p.insideu
v = 1-p.insidev
left_click = p.lselect
middle_click = p.mselect
right_click = p.rselect
op(parent().par.Target).interactMouse(
u,
v,
leftClick=left_click,
middleClick=middle_click,
rightClick=right_click,
#left=False,
#middle=False,
#right=False,
#wheel=0,
#pixels=False,
#Screen=False,
#quiet=True
)
return
So there are some things that wouldn’t pass through like mouse-wheel and drag/drop but if you’re just trying to click on buttons and sliders it should work just fine.
Looks like I left a panel chop in there on accident so I updated the TOX file above with a new version.
Nice solution to flip a panel 90 degrees MatthewW !