Hi Matthew,
Thanks for your interest. The assertions comes from the comments I added to some (pseudo) code I wrote. And as this is still in the user story stage I blew one. "more than one morph may share a location." Would have made more sense (to an outsider**) if I had said: "more than one submorph may share a location." The hierarchy tree would be a morph layer then a location layer then the submorph layer etc. each morph and location (I am beginning to prefer the word place) can appear only once in the hierarchy and there can be no loops. Morphs themselves would not have intrinsic location just extent. Morphs wouldn't be anywhere until you put them some place. The other part of your question is answered by saying that locations are local. The owner of a location is a morph. The location is given in coords appropriate to its owners coordinate system. The location is a place that can contain other morphs (each with their own coord systems) There is a decoupling between morphs and the location a morph is at. This would allow you to do interesting things. Which I am still working out in my head. What I was describing (probably poorly) was an aha moment. This may or may not pan out. Or it may pan out but not be worth the effort to implement. It certainly isn't meant to stand up to much scrutiny right at the moment. Indeed it isn't even at the level of a user story. (Which would describe what is desired) The user story is: I wish squeak didn't have all these bugs due to transformation morphs. And I wish squeak had polygon morphs and rectangle morphs that worked the same way when tilted or stretched. Particularly with respect to their embeded submorphs. There is a notion (in my head) that Morphic skipped a step by using rectanges as a basis for morphs without having a simple place morph based on a point. Based on work I've done on polygons and my (somewhat poor) understanding of what Juan is trying to accomplish I've come to an idea I think will prove important. Now comes the interesting part to see if I can make it work and find a way to make code and a morphic of it. Or to satisfy my curiosity and decide its not worth more effort. *** >[Morphic] Do morphs have locations or do locations have morphs? > >Matthew Fulmer tapplek at gmail.com >Fri Jun 22 01:50:15 UTC 2007 > > > >On Thu, Jun 21, 2007 at 01:36:09PM -0700, Jerome Peace wrote: >> assertions >> >> " each location in at most one morph" > >This assertion appears to conflict with > >> "a location is a sublocation of its owner" > >and > >> "more than one morph may share a location." > >if one is using world-relative locations. Is this not Nope see above. >What is a location? Parent morph + relative 2d location? Hmm. The way I want to do it morphs don't have a location. They are at a location (that belongs to the next morph up the line.) The locations that a morph contains are relative to the morphs reference location. So you could move the location inside its refence morph and everything at that place would move with it. Or you could "beam" a morph from a location to another location (maybe at a different level) and that would also move everything belonging to the morph. Righ now we do something like that by flexing a morph. And then we unflex them when we are done. This hairs up the works. Thats because morphs are coupled to their location by ivars. If you break that coupling you gain something. The question is will it be enough to overcome the overhead of adding extra layers to the tree. This might come out either way. My instinct tells me I will at least learn something interesting by persuing this idea. There is a potential "big win" in terms of simplicity. Smalltalk afterall started as genius on the half page. It deserves to have "simplicity with great power attached to it" reflected throughout its design. > >Also, what is in a Parent morph? location + rotation + >shear + scale? I'm not sure yet. This is one of those things that won't settle down (and behave like a good idea) until I play with it some more. The important thing at the beginning is to be wrong in interesting ways; try a lot; and learn things. >or is there some more general transform system that >could handle funky stuff like jiggly morphs, Ha, what's a jiggly morph? or allow morphs to be 2.5d? That would be nice. Morphs are already 2.5d sort of kind of maybe? My original project was to implement a kissakae system in squeak. Morphic was close to there but not quite. Yours in curiosity and service, --Jerome Peace **I knew perfectly well what I meant to say, even if I didn't say it. ;-) ____________________________________________________________________________________ Shape Yahoo! in your own image. Join our Network Research Panel today! http://surveylink.yahoo.com/gmrs/yahoo_panel_invite.asp?a=7 _______________________________________________ Morphic mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/morphic |
Hi Jerome,
It seems we came to the same ideas independently! I also had an "aha" moment when I realized that extent and coordinate system were intrinsic to the morph, but location was in fact external to it. Currently, in Morphic 3, location is an ivar in a Morph. But I didn't like it when I added it. Maybe it is best to do as you say, to relate morphs and locations in the tree. I am really convinced these ideas deserve a lot of experimenting and more thought. Don't discard them. The effort is worth! Matthew, could you elaborate a bit on "jiggly morphs" and 2.5 D? Aren't we in 2.5D? Cheers, Juan Vuletich Jerome Peace escribió: > Hi Matthew, > > Thanks for your interest. > > The assertions comes from the comments I added to some > (pseudo) code I wrote. And as this is still in the > user story stage I blew one. > > "more than one morph may share a location." > Would have made more sense (to an outsider**) if I had > said: > "more than one submorph may share a location." > > The hierarchy tree would be a morph layer then a > location layer then the submorph layer etc. > each morph and location (I am beginning to prefer the > word place) can appear only once in the hierarchy and > there can be no loops. > > Morphs themselves would not have intrinsic location > just extent. Morphs wouldn't be anywhere until you put > them some place. > > The other part of your question is answered by saying > that locations are local. > The owner of a location is a morph. The location is > given in coords appropriate to its owners coordinate > system. > The location is a place that can contain other morphs > (each with their own coord systems) > There is a decoupling between morphs and the location > a morph is at. > > This would allow you to do interesting things. Which I > am still working out in my head. > > What I was describing (probably poorly) was an aha > moment. This may or may not pan out. > Or it may pan out but not be worth the effort to > implement. > > It certainly isn't meant to stand up to much scrutiny > right at the moment. > Indeed it isn't even at the level of a user story. > (Which would describe what is desired) > > The user story is: > I wish squeak didn't have all these bugs due to > transformation morphs. And > I wish squeak had polygon morphs and rectangle morphs > that worked the same way when tilted or stretched. > Particularly with respect to their embeded submorphs. > > There is a notion (in my head) that Morphic skipped a > step by using rectanges as a basis for morphs without > having a simple place morph based on a point. > > Based on work I've done on polygons and my (somewhat > poor) understanding of what Juan is trying to > accomplish I've come to an idea I think will prove > important. Now comes the interesting part to see if I > can make it work and find a way to make code and a > morphic of it. > Or to satisfy my curiosity and decide its not worth > more effort. > > > > > > > *** > >> [Morphic] Do morphs have locations or do locations >> > have morphs? > >> Matthew Fulmer tapplek at gmail.com >> Fri Jun 22 01:50:15 UTC 2007 >> >> >> >> On Thu, Jun 21, 2007 at 01:36:09PM -0700, Jerome >> > Peace wrote: > >>> assertions >>> >>> " each location in at most one morph" >>> >> This assertion appears to conflict with >> >> >>> "a location is a sublocation of its owner" >>> >> and >> >> >>> "more than one morph may share a location." >>> >> if one is using world-relative locations. Is this not >> > the case? > > Nope see above. > > >> What is a location? Parent morph + relative 2d >> > location? > > Hmm. The way I want to do it morphs don't have a > location. They are at a location (that belongs to the > next morph up the line.) The locations that a morph > contains are relative to the morphs reference > location. > > So you could move the location inside its refence > morph and everything at that place would move with it. > Or you could "beam" a morph from a location to > another location (maybe at a different level) and that > would also move everything belonging to the morph. > > Righ† now we do something like that by flexing a > morph. > And then we unflex them when we are done. This hairs > up the works. Thats because morphs are coupled to > their location by ivars. If you break that coupling > you gain something. The question is will it be enough > to overcome the overhead of adding extra layers to the > tree. This might come out either way. > > My instinct tells me I will at least learn something > interesting by persuing this idea. There is a > potential "big win" in terms of simplicity. > > Smalltalk afterall started as genius on the half page. > It deserves to have "simplicity with great power > attached to it" reflected throughout its design. > > > > > > >> Also, what is in a Parent morph? location + rotation >> > + >shear + scale? > > I'm not sure yet. This is one of those things that > won't settle down (and behave like a good idea) until > I play with it some more. The important thing at the > beginning is to be wrong in interesting ways; try a > lot; and learn things. > > > >> or is there some more general transform system that >> could handle funky stuff like jiggly morphs, >> > > Ha, what's a jiggly morph? > > or allow morphs to be 2.5d? That would be nice. > > Morphs are already 2.5d sort of kind of maybe? > > My original project was to implement a kissakae system > in squeak. > Morphic was close to there but not quite. > > Yours in curiosity and service, --Jerome Peace > > **I knew perfectly well what I meant to say, even if I > didn't say it. ;-) > > > > > > ____________________________________________________________________________________ > Shape Yahoo! in your own image. Join our Network Research Panel today! http://surveylink.yahoo.com/gmrs/yahoo_panel_invite.asp?a=7 > > > _______________________________________________ > Morphic mailing list > [hidden email] > http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/morphic > > _______________________________________________ Morphic mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/morphic |
On Sat, Jun 23, 2007 at 09:29:38AM -0300, Juan Vuletich wrote:
> Matthew, could you elaborate a bit on "jiggly morphs" and 2.5 D? Aren't > we in 2.5D? For "jiggly morphs", I am thinking of the quite visially appealing non-linear transformations used in Beryl: http://en.wikipedia.org/wiki/Beryl_%28window_manager%29 Of the videos on the subject, this one demonstrates the effect the most succintly: (warning! sound!) http://www.youtube.com/watch?v=1FeXVUz5nD4&NR=1 Most of that would be possible with a modied coordinate system, but some of it would require a warped GL surface. For 2.5d, I am thinking of something like Merlin, where Morphs are 2-d entities, but exist as camera-facing sprites in a 3-d world (dormant project; no good screenshots) http://www.lsi.usp.br/~jecel/gui.html or, croquet, where 2-d entities have location and orientation in a 3-d island: http://www.opencroquet.org/index.php/Screenshots -- Matthew Fulmer -- http://mtfulmer.wordpress.com/ Help improve Squeak Documentation: http://wiki.squeak.org/squeak/808 _______________________________________________ Morphic mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/morphic |
Hi Matthew,
Matthew Fulmer escribió: > On Sat, Jun 23, 2007 at 09:29:38AM -0300, Juan Vuletich wrote: > >> Matthew, could you elaborate a bit on "jiggly morphs" and 2.5 D? Aren't >> we in 2.5D? >> > > For "jiggly morphs", I am thinking of the quite visially > appealing non-linear transformations used in Beryl: > http://en.wikipedia.org/wiki/Beryl_%28window_manager%29 > Of the videos on the subject, this one demonstrates the effect > the most succintly: (warning! sound!) > http://www.youtube.com/watch?v=1FeXVUz5nD4&NR=1 > Most of that would be possible with a modied coordinate system, > but some of it would require a warped GL surface. > > good until we go to OpenGL or such. > For 2.5d, I am thinking of something like Merlin, where Morphs > are 2-d entities, but exist as camera-facing sprites in a 3-d > world (dormant project; no good screenshots) > http://www.lsi.usp.br/~jecel/gui.html > This is cool. But Morphic 3 is just 2d with zOrder. (This is usually called 2.5d). So, It won't be possible. > or, croquet, where 2-d entities have location and orientation in > a 3-d island: > http://www.opencroquet.org/index.php/Screenshots > > Yes, but for a full 3d environment, we have croquet, don't we? Cheers, Juan Vuletich _______________________________________________ Morphic mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/morphic |
Free forum by Nabble | Edit this page |