Object frame progress
 1-16  …  37-56  57-76  77-96  97-113

Previous
Next
 From:  Michael Gibson
1571.77 In reply to 1571.74 
Hi Will, I just took a look at Fireworks...

When in selection mode in Fireworks, there does not appear to be any kind of edit frame shown around the objects at all. It seems that you have to go to a special transform tool/mode (either click on the toolbar, or Ctrl+T).

That's quite a bit different than what I'm trying to accomplish - I'm trying to set up an editing frame that comes up automatically when you are in selection mode, it won't be required to click a toolbar button or shortcut key to enter a special editing mode to get it (unless you have decided to hide them which will be a choice).

Also even in the transform mode in Fireworks, I can see that there is a pivot point that can be placed that changes the center of rotation, but it does not seem to have any effect at all on scaling. Scaling seems to happen around the opposite corner, or the center point if Alt is down, not about that pivot point that can be placed at any location.

Also when you do a scale it appears to reset the pivot to the center of the object.

So as far as I can tell, this is another example of a program that does bounding box editing allowing an arbitrary relocation of the rotation pivot, but not of the scaling origin.

So far I have not come across a single application that allows arbitrary placement of the scaling origin with an "immediate" bounding frame editor (instead of a dedicated scaling mode), it is just not a very good fit with a bounding frame.

- Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  WillBellJr
1571.78 In reply to 1571.77 
Hi Michael, yes, it's the object transform command <ctrl>-T in Fireworks.

I didn't think it mattered how the object transform mode was invoked - in MOI you wanted it to be automatic, I don't really see a difference?

It's the function that we're after whether automatically or manually invoked!

Yes, for scaling and stretching, in FW, it's always as if the "opposite corner" is locked or used as the origin UNLESS you hold down the ALT key, then the operation is from the center.

The pivot also immediately snaps back to the center when you start scaling or stretching as well.

The way its implemented here - arbitrary pivot for rotations, opposite corner or center (alt) when stretching and scaling seems like it would be nice within MOI.

Again, unless I'm missing something, I don't see any reason it would be necessary to invoke a mode for this? I just think that's standard fare for these illustration apps - having that automatically take place upon a selection, would be a refreshing save of a keystroke in my opinion! :-)

-Will

PS - I think typically when there's other things you can or want to do with a selection (drag move?), the transform is made to be a special mode so it doesn't "interfere" with the "normal" operation for a selection?

Frankly I don't know why transform is always used as a special mode and is not automatic within these illustration apps? Just probaby years of companies simply copying form and fashion of others or not being interested in the absolute conservation of GUI as you are with MOI??
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
1571.79 In reply to 1571.78 
Hi Will,

> I didn't think it mattered how the object transform mode was
> invoked - in MOI you wanted it to be automatic, I don't really
> see a difference?

The problem is when it is automatic it means that it is on the screen all the time, which means it can potentially be getting in the way more often.

So an automatic thing needs to be more "low profile" and have less widgets and just less stuff on the screen than what a dedicated mode can have....


I think I have figured out a good way to have all the standard stuff covered though.


For scaling, I'll have it go around the center by default, but if you click and release (instead of holding down and dragging) on a corner handle, I will flip the scale origin between the center and the corner, there will be a little point that will show up to indicate the current origin. I'll show some screenshots of this once I have this working.


For rotation if you click (instead of drag) on the rotation widget it will go into a kind of special rotation mode and that will give you a center grip that you can move to place the rotation pivot at any spot. It will maybe be a couple of days before I get to this rotation part.


Then last night I had a really cool idea on how to incorporate basic mirroring into the whole thing as well, more on that later today...

- Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  WillBellJr
1571.80 In reply to 1571.79 
Sounds like you're having fun!

I don't really see a difference from what you're planning and say the Fireworks Widget - styled the way you've been talking of course.

I'm not sure what you mean by "click and not drag"? Since these widgets are typically used by dragging on them I'm not sure what this "click" is buying you here? (That "click" is sorta sounding like that "ctrl-T" since you're doing something directly after selecting something - an extra step??)

Are you saying where you click will be the set point for the pivot?

With fireworks, whatever corner you start to drag, >the opposite corner< is considered the pivot or better, anchor for scale (corners) and stretch (sides) operations - can it get any simpler than this??

Only when the ALT key is down during the drag, is the center of the BBox used as the anchor for the scale/stretch...


Once the object is in "transform mode" (after being selected in your case) you're just dragging to perform the operation (the only precursor being first positioning the pivot for a non-BBox centered rotation after selection)...

I would say the pivot is not even needed for the scale/stretch since as in FW, it's immediately moved back to the center anyway.

I guess however the widget doesn't know initially if you're going to scale/stretch or rotate until you start your drag so the pivot has to be shown for initial placement (in the ultimate case of a rotation being performed...)


I'm sure however what you come up with will be cool - I guess once you get some pics up, that'll explain better what you're implementing. :-)

-Will
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
1571.81 In reply to 1571.80 
Hi Will,

> I'm not sure what you mean by "click and not drag"?

I mean just clicking on the corner grip instead of dragging it. That will flip the "scale origin mode" between using the center versus using the opposite corner. I think this will make more sense when you get a chance to use it.


> I'm not sure what this "click" is buying you here?

It'll do a similar job as pressing Alt in Fireworks, to switch between "scale from center" versus "scale from opposite corner".

It's just another one of those things where it lets you do something without having to touch the keyboard so you can eat BBQ ribs at the same time you are modeling. :)


> (That "click" is sorta sounding like that "ctrl-T" since you're doing
> something directly after selecting something - an extra step??)

It's kind of a setting that will stick after you set it once. So like if you want to do a bunch of corner-anchored scales, you just do one click to set it, and then every time that you drag on the corner widget after that it will scale from the opposite corner.


> I guess however the widget doesn't know initially if you're going to
> scale/stretch or rotate until you start your drag so the pivot has to be
> shown for initial placement (in the ultimate case of a rotation being
> performed...)

Actually, it does know if you're going to do a scale versus rotate, because there is a whole separate grip for doing the rotation, it's located in the middle of the top edge of the bounding frame.

But yeah, I don't really want to show the rotation pivot on the screen all the time, so I think it will be something that gets turned on if you click that rotation grip.

- Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
1571.82 In reply to 1571.80 
> Sounds like you're having fun!

I am! Unfortunately I couldn't stop thinking about the mirroring idea and didn't get much sleep... :)

More on that later today, but I think with that in place there is going to be quite a lot of great functionality built into this streamlined editing frame.

- Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  WillBellJr
1571.83 In reply to 1571.82 
I know how it is, I was up to 3a last nite working on some code myself ;-)

Sounds like it's going to be a really nice addition to MOI - I can't wait to give the new widget a try when its ready!

-Will
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
1571.84 In reply to 1571.83 
Ok, I've got the switching between scale-from-center or scale-from-corner working.

The way it works is like this - when you move over a corner grip, an origin point will then pop up showing you where the scale will be centered around if you drag:



If you click the corner handle instead of dragging it, it will flip the scaling origin from the center to the opposite corner:



Each click (instead of drag) on a corner handle will flip it between those 2 scaling styles.

- Michael

  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  tyglik
1571.85 In reply to 1571.84 
Hi Michael, pretty nice features there, except I think that the pivot shouldn't look like regular point object. -Petr
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
1571.86 In reply to 1571.85 
Hi Petr,

> Hi Michael, pretty nice features there, except I think that
> the pivot shouldn't look like regular point object. -Petr

Any suggestions on what it should look like instead?

- Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  tyglik
1571.87 In reply to 1571.86 
Something like circle with cross mark inside it or two concentric circles? Or a red glow around point?

EDITED: 24 Apr 2008 by TYGLIK

  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
1571.88 
Ok, here's the idea on the mirroring.

So Petr, I was not really sure about even doing the freeform mirroring because it just does not seem all that useful to get something that is both mirrored and squished by some kind of arbitrary amount. I mean it seems useful to be able to do some arbitrary squishing by itself, and some exact mirroring by itself, but mirrored + arbitrary squished together? Not exactly a high use thing.

But it was pretty easy to add so I put that in there, and messing with it got me thinking, what about an option to do some exact mirroring instead of squished mirroring... That would be really cool because that is another one of the frequently used transformations.

So what I was thinking was I could put a snap point on the opposite side of the corner that you dragged on, at an equal distance of the width of the bounding frame. Like this:



So the idea is that if you grab a frame corner and drag it all the way over to the other side where that red dot on the left is, that will snap on to that point and perform a precise mirror just like doing the mirror command with the y axis there as the mirror line (including making a copy of the object).

That would mean that after you drew a symmetrical profile about a world axis, you could create a mirrored copy by using the editing frame without having to fire up the mirror command for that - the frame would then handle basic rotation, scaling, and axis-aligned mirroring all together.

I'll be messing around with this tomorrow to see how it feels. The other idea is maybe to have no squished mirroring at all, and just do this exact mirror if you move any distance over to that side instead of just getting near that snap point...

- Michael
Attachments:

  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  tyglik
1571.89 In reply to 1571.88 
Hi Michael,

>>but mirrored + arbitrary squished together?

Aha... I didn't realize that contrary to background image the object is getting squished as you move a cursor towards the opposite frame corner.


>>So what I was thinking was I could put a snap point on the opposite side of
>>the corner that you dragged on, at an equal distance of the width of the bounding frame.

I think I am not completely clear about this part.
Do you mean the width of the bounding box of frame (distance between grips) or object's bounding box or distance between grip and world Y axis?

Will a position of the pivot point (both scale and rotate pivot) impact on mirroring itself?

Will we be able to identify/change the location of a mirror axis? Your illustration includes some point, does the mirror axis (parallel to y axis) pass through that point at the end of a curve or is there just hard-coded Y-world mirror axis?



Another question. Is a rotate icon always on the top side of the frame?
In other words, when I rotate the object using the editing frame, deselect it and re-select the same object, does the original frame or new one with the rotate icon on the top appear?

Petr
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
1571.90 In reply to 1571.89 
Hi Petr,

> Aha... I didn't realize that contrary to background image the
> object is getting squished as you move a cursor towards the
> opposite frame corner.

Well, it is different than the background image if you track along a horizontal line while going over, that will do the 1D non-proportional scale in this case which images don't do.

But really I meant any kind of scaling at all. It would be kind of frustrating if you could get a mirrored and arbitrarily scaled object by dragging over there, but not get a mirrored object of the same size, actually though that seems to be the standard behavior in 2D illustration programs that do allow dragging to the opposite side.


> I think I am not completely clear about this part.
> Do you mean the width of the bounding box of frame (distance
> between grips) or object's bounding box or distance between
> grip and world Y axis?

I mean width of the object's bounding box. In the example I showed the edge of the bounding box happened to be on the world Y axis, so that's all I meant by referring to the Y axis specifically there.


> Will a position of the pivot point (both scale and rotate pivot)
> impact on mirroring itself?

Not for the one that I showed in that previous picture. I would plan to have that available in the same spot and behavior regardless of pivot mode/placement.

However, if you have scale-from-center turned on, I was thinking about having other snap points in the other frame corners so that you could do an exact "in place" mirror (around the center point) by targeting those points.


> Will we be able to identify/change the location of a mirror axis?

Well, it will always be the 2 bounding box edges opposite of the corner that you choose. So the choice of which corner you drag will let you pick between those edges, but there won't be any way to set it to some arbitrary line elsewhere, for that you'll still need to use the regular Mirror command.


> Your illustration includes some point, does the mirror axis (parallel
> to y axis) pass through that point at the end of a curve or is there
> just hard-coded Y-world mirror axis?

The mirror axis will always be the edge of the bounding box, but of course when you have an endpoint of a curve sticking out to one side, then that end will be on the bounding box edge.


> Another question. Is a rotate icon always on the top side of the frame?
> In other words, when I rotate the object using the editing frame, deselect
> it and re-select the same object, does the original frame or new one with
> the rotate icon on the top appear?

If you grab it and rotate it, it will then spin around to some other location, but if you unselect and then reselect, then the whole frame will get reset on the new selection and the rotate grip will be back at the top of the axis aligned frame again.

In order to keep the rotation between selections, I would have to maintain some additional persistent state associated with objects... It could be possible to do that, but it brings up a bunch of issues.

It seems to be pretty common for 2D illustration programs to reset the frame like this, like for example Xara does it after every rotation even if you don't change the selection. Adobe Illustrator seems to try to maintain the frame orientation if you have things like a bunch of rectangles all at the same angle selected, but it too will reset it to world-aligned after every rotation if you have like 2 rectangles at different angles selected at once.

- Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
1571.91 In reply to 1571.87 
Hi Petr,

> Something like circle with cross mark inside it or two concentric
> circles? Or a red glow around point?

How about this:



- Michael

  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  tyglik
1571.92 In reply to 1571.91 
Hmmmm....It should go together with a look of grips and rotate icon and reflect that this mark is a center point of rotation as well as a base point for the scale. My original suggestion doesn't seems to fit for representing the base point of scaling.
And what about a small square with cross inside like window manager's close button?

Petr
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Dee3 (DMATHO)
1571.93 
Hi Michael,
a while back I came across this, on the topic of a "3D Gizmo", and noticing the current thread I thought you'd enjoy knowing about it, and possibly comparing it to what's ahead in v2's plans.

The first link is there simply as general FYI; please, take special note on the second, at the bottom portion of the page under the heading "Publications", there's a reference to the Kite Geometry Manipulator:

http://www.ds.arch.tue.nl/Research/Projects/E3DAD/
http://www.win.tue.nl/~spranovi/research.htm

Cheers,

- Diego -
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Brian (BWTR)
1571.94 In reply to 1571.93 
The Kite looks half way to being like the Carrara/Hexagon maipulator!
(I had to say that!)
Brian
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
1571.95 In reply to 1571.92 
> Hmmmm....It should go together with a look of grips and rotate
> icon and reflect that this mark is a center point of rotation as
> well as a base point for the scale.

Yeah, that is a good idea that it should match the other grips, especially since you'll be able to grab it in one case for moving the rotation center.

How about this:


  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  tyglik
1571.96 In reply to 1571.95 
Hi Michael,

Yes, it looks fine. Perhaps, the pivot icon size could be decreased slightly...

I have also noticed that the base point for scaling is a corner of object's bounding box (or center point). Does it mean that when you drag a grip and want to use a "snap to grid" feature, then the snap action actually occurs under an imaginary point (corner of bounding box adjacent to the dragged grip) and not under the grip?

Petr
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged
 

Reply to All Reply to All

 

 
Show messages:  1-16  17-36  37-56  57-76  77-96  97-113