OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

cgmo-webcgm message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: RE: [cgmo-webcgm] getAppStructureExtent() was getObjectExtent()


At 03:11 PM 3/6/2008 -0500, Bezaire, Benoit wrote:
>In the sections you point out: 2.3.1, 2.3.2 and 3.2.1.5; I agree with
>you that 'grnode' cannot be used for interactivity.

I'm not sure of the scope you intend with the word "interactivity".  Do you 
mean more than the interactivity associated with the 'interactive' APS 
Attribute?

(The references make it clear that it is much more than that -- one cannot 
attach *any* APS Attrs to a 'grnode', nor any Style Attributes, nor 
associate it with events, nor ...)

>However, in the DOM
>section of the specification, we only have a single line which refers to
>'grnode'.
>
>I think we need more wording and more tests.

I agree with that.  Would you like to propose more wording?

More wording should clarify whether or not 'grnode' is *completely* 
DOM-invisible.  (I.e., do firstChild, parentNode, etc skip over it as if it 
weren't there?).

Opinion.  Thinking back on the *heated* arguments that finally led to the 
compromise to include grnode (for the convenience of the graphical editors 
and illustration tools) -- I think the intention was to make it as 
invisible as possible without wrecking the viability and integrity of the DOM.

-Lofton.

>-----Original Message-----
>From: Lofton Henderson [mailto:lofton@rockynet.com]
>Sent: Thursday, March 06, 2008 1:21 PM
>To: cgmo-webcgm@lists.oasis-open.org
>Subject: RE: [cgmo-webcgm] getAppStructureExtent() was getObjectExtent()
>
>Benoit, all --
>
>(All -- see questions at end, derived from Benoit's comments.)
>
>At 09:34 AM 3/6/2008 -0500, Bezaire, Benoit wrote:
> >That's better. I think the only thing missing is the fact that
> >transforms do affect the extent.
>
>At first, I thought so also.  Then I noticed the sentence with NVDC.
>
>(I might have been more inclined to say "CTM applies to node's
>primitives before computation of rectangle", rather than "get the
>rectangle then transform it by CTM".  But they are equivalent, right?)
>
>
> >Some suggestions, rename the API from getAppStructureExtent() to
> >getExtent(). It's already on the AppStructure interface, so we don't
> >need the interface name in the API (imo).
>
>That's okay with me.  The group should decide at next telecon.
>
>NOTE:   Yesterday I made some other wording changes and integrated into
>the
>working draft.  I'm going to post the working draft at the end of today.
>You can look there and comment on it, for next telecon.
>
>
> >About applicability on 'grnode'... I was going to say "it should be
>like
> >everything else", then I started to investigate what "everything else"
> >is, and it's unclear.
> >
> >In section 5.3 we say: 'grnode' elements are not accessible via DOM
> >calls. But it seems like that's it. getAppStructureById doesn't say
> >anything (and 'grnode's have an Id).
>
>It is syntactically impossible in CGM for them to NOT have an Id.  (As
>pointed out in the below references, 3.1.2.5.)
>
> >What about normal tree traversal:
> >nextSibling, childNode etc... does it access 'grnode'. It seems like we
> >should more clear about it (or maybe I'm looking in the wrong section).
>
>Good questions.  More references to 'grnode'.  A quick read of all of
>them
>is helpful...
>
>2.3.1, 2nd pgph:
>http://docs.oasis-open.org/webcgm/v2.0/OS/WebCGM20-Concepts.html#webcgm_
>2_3_1
>
>2.3.2, 2nd bullet list:
>http://docs.oasis-open.org/webcgm/v2.0/OS/WebCGM20-Concepts.html#webcgm_
>2_3_2
>
>3.2.1.5, entire section:
>http://docs.oasis-open.org/webcgm/v2.0/OS/WebCGM20-IC.html#webcgm_grnode
>
>What emerges is ... you definitely cannot do any intelligence related
>stuff
>to grnode -- no APS attributes, no properties (2.3.2), no events, etc.
>
>The intent of "...not accessible via DOM calls..." seems pretty
>unambiguous, on top of the other references:  it seems that we intended
>that grnode is "DOM-invisible".  Even regarding detection of structure
>and
>navigation (childNode, etc).
>
>That's just my interpretation, not necessarily a position.  I don't have
>a
>strong position on it now.  Except to agree with Benoit that it should
>be
>clarified, if people think it is too unclear.
>
>I'd like others to say how they have interpreted it and implemented
>it.  Don?  Forrest?  Ulrich?  (Rob?)
>
>If it is totally DOM-invisible, then that would apply to getExtent() as
>well, I would think.
>
>Regards,
>-Lofton.
>
>
> >-----Original Message-----
> >From: Galt, Stuart A [mailto:stuart.a.galt@boeing.com]
> >Sent: Wednesday, March 05, 2008 3:04 PM
> >To: cgmo-webcgm@lists.oasis-open.org
> >Subject: RE: [cgmo-webcgm] getAppStructureExtent() was
>getObjectExtent()
> >
> >Hello,
> >
> >Based on what I thought that I heard on the telecon today here is
> >another cut that hopefully addresses the issue of what is and isn't
> >included in the
> >calculation:
> >
> >Markups for getAppStructureExtent ()
> >
> >Chapter 1 - no changes
> >Chapter 2 - no changes
> >Chapter 3 - no changes
> >Chapter 4 - no changes
> >
> >In 5.7.6 add to the IDL list
> >
> >WebCGMString             getAppStructureExtent();
> >
> >Add to the method descriptions:
> >
> >getAppStructureExtent()
> >                 Retrieves the bounding box rectangle of the graphic
> >elements within an APS.  The bounding box calculation is based on the
> >geometry of the conceptual primitive and is not affected by APS style
> >attributes or CGM attribute or control elements.  The rectangle is
> >defined the two opposite corner points expressed in NVDC after the
> >application of the current transformation matrix.
> >                 Parameters
> >                 None
> >                 Return Value
> >WebCGMString; the bounding rectangle min and max pairs stored in a
> >string, or the empty string
> ><http://www.w3.org/TR/webcgm20/WebCGM20-DOM.html>  if the APS contains
> >no graphical elements.
> >Exceptions
> >None
> >
> >Chapter 6 - no changes
> >Chapter 7 - no changes
> >Chapter 8
> >
> >Add to WebCGMAppStructure object methods:
> >
> >getAppStructureExtent()
> >                 This method has no parameters.
> >                 This method returns a String
> >
> >
> >
> >--
> >Stuart Galt
> >SGML Resource Group
> >stuart.a.galt@boeing.com
> >(206) 544-3656
> >
> >
> >
> > > _____________________________________________
> > > From:         Galt, Stuart A
> > > Sent: Tuesday, March 04, 2008 4:09 PM
> > > To:   cgmo-webcgm@lists.oasis-open.org
> > > Subject:      RE: [cgmo-webcgm] getAppStructureExtent()  was
> > > getObjectExtent()
> > >
> > > Hello all,
> > >
> > > I have added a reference to the fact that the units are in NVDC and
>at
> >
> > > this time I don't think that the overhead of creating a rectangle
> > > object is justified.
> > >
> > > Markups for getAppStructureExtent ()
> > >
> > > Chapter 1 - no changes
> > > Chapter 2 - no changes
> > > Chapter 3 - no changes
> > > Chapter 4 - no changes
> > >
> > > In 5.7.6 add to the IDL list
> > >
> > > WebCGMString             getAppStructureExtent();
> > >
> > > Add to the method descriptions:
> > >
> > > getAppStructureExtent()
> > >               Retrieves the bounding box rectangle of the graphic
> >elements within
> > > an APS.  The rectangle is defined the two corner points expressed in
> > > NVDC.
> > >               Parameters
> > >               None
> > >               Return Value
> > > WebCGMString; the bounding rectangle min and max pairs stored in a
> > > string, or the empty string
> > > <http://www.w3.org/TR/webcgm20/WebCGM20-DOM.html>  if the APS
>contains
> >
> > > no graphical elements.
> > >               Exceptions
> > >               None
> > >
> > > Chapter 6 - no changes
> > > Chapter 7 - no changes
> > > Chapter 8
> > >
> > > Add to WebCGMAppStructure object methods:
> > >
> > > getAppStructureExtent()
> > >               This method has no parameters.
> > >               This method returns a String
> > >
> > >
> > >
> > > --
> > > Stuart Galt
> > > SGML Resource Group
> > > stuart.a.galt@boeing.com
> > > (206) 544-3656
> > >
> > >
> > >
> > > > -----Original Message-----
> > > > From: Bezaire, Benoit [mailto:bbezaire@ptc.com]
> > > > Sent: Tuesday, February 26, 2008 5:30 AM
> > > > To: cgmo-webcgm@lists.oasis-open.org
> > > > Subject: RE: [cgmo-webcgm] getAppStructureExtent() was
> > > > getObjectExtent()
> > > >
> > > > If the main use case is to be able to align objects, then it would
> > > > seem like getAppStructureExtent() needs to take into account the
> > > > current transform. Would you agree?
> > > >
> > > > I think the same would be true for the zoom example; although we
> > > > haven't seen any zoom API proposal from the group so far.
> > > >
> > > > The fact that it is two corners troubles me... it makes the script
> > > > writer's job more difficult. But CGM's can be Y up and Y down,
> > > > right? So x, y, width and height wouldn't be better I think :-(
> > > >
> > > > Ben
> > > >
> > > > -----Original Message-----
> > > > From: Galt, Stuart A [mailto:stuart.a.galt@boeing.com]
> > > > Sent: Monday, February 25, 2008 7:36 PM
> > > > To: Lofton Henderson; cgmo-webcgm@lists.oasis-open.org
> > > > Subject: RE: [cgmo-webcgm] getAppStructureExtent() was
> > > > getObjectExtent()
> > > >
> > > > Hello,
> > > >
> > > > To answer Lofton's question:
> > > > I think that we should use the same points as viewcontext (like
>you
> > > > suggested)  I just used the min/max points because that is what it
> > > > said in the AI list - poor excuse but it is the one I am going to
> > > > use.
> > > >
> > > > I think that the original use case was to be able align or move an
> > > > APS relative to another one.  (Being able to put a table_leg at
>the
> > > > edge of the table_top object)?
> > > >
> > > > Another use that I thought of might be to be able to zoom into an
> > > > APS but instead of making it full screen I want it to be only 90%
>of
> >
> > > > the available viewport.
> > > >
> > > > I don't think that it was intended to take line width or regions
> > > > into account.
> > > >
> > > >
> > > > --
> > > > Stuart Galt
> > > > SGML Resource Group
> > > > stuart.a.galt@boeing.com
> > > > (206) 544-3656
> > > >
> > > >
> > > >
> > > > > -----Original Message-----
> > > > > From: Lofton Henderson [mailto:lofton@rockynet.com]
> > > > > Sent: Monday, February 25, 2008 11:12 AM
> > > > > To: Galt, Stuart A; cgmo-webcgm@lists.oasis-open.org
> > > > > Subject: Re: [cgmo-webcgm] getAppStructureExtent() was
> > > > > getObjectExtent()
> > > > >
> > > > > Stuart, All --
> > > > >
> > > > > A question comes up.  Which bounding box?  Do you mean:
> > > > >
> > > > > 1.) the BB of the coordinates of the APS's graphical primitive
> > > > > elements, as written in the metafile itself?
> > > > > 2.) or, the effective BB, which would reflect a non-trival CTM
> > > > > (current transformation matrix)?
> > > > > 3.) or, something else (e.g., 'region' factored in)?
> > > > > 4.) or, should it be parameter selectable (#1 or #2 or ...)?
> > > > >
> > > > > Related question:  are things like line-width accounted for
> > > > in the BB,
> > > >
> > > > > or not?
> > > > >
> > > > > (Does anyone recall our original use case(s)?  That might help
>to
> > > > > answer the questions.)
> > > > >
> > > > > -Lofton.
> > > > >
> > > > > At 10:45 AM 2/23/2008 -0700, Lofton Henderson wrote:
> > > > > >Stuart --
> > > > > >
> > > > > >Good job, especially the completeness by looking at every
> > > > > section for
> > > > > >needed changes.
> > > > > >
> > > > > >One small nit...
> > > > > >
> > > > > >At 04:09 PM 2/22/2008 -0800, Galt, Stuart A wrote:
> > > > > >>Markups for getAppStructureExtent()
> > > > > >>
> > > > > >>Chapter 1 - no changes
> > > > > >>Chapter 2 - no changes
> > > > > >>Chapter 3 - no changes
> > > > > >>Chapter 4 - no changes
> > > > > >>
> > > > > >>In 5.7.6 add to the IDL list
> > > > > >>
> > > > > >>WebCGMString             getAppStructureExtent();
> > > > > >>
> > > > > >>Add to the method descriptions:
> > > > > >>
> > > > > >>getAppStructureExtent()
> > > > > >>         Retrieves the bounding box rectangle of the
> > > > > graphic elements
> > > > > >>within an APS.  The rectangle is defined the two corner
>points.
> > > > > >>Parameters
> > > > > >>         None
> > > > > >>Return Value
> > > > > >>         WebCGMString; the bounding rectangle min and max
> > > > > pairs stored
> > > > > >>in a string, or the empty string if the APS contains no
> > > > > graphical elements.
> > > > > >
> > > > > >I seem to recall that we decided, about rectangles, that we
>would
> > >
> > > > > >always parameterize as two diagonally-opposite corner points.
>So
> > >
> > > > > >instead of
> > > > > >
> > > > > >xmin,xmax,ymin,ymax
> > > > > >or
> > > > > >xmin,ymin,xmax,ymax
> > > > > >
> > > > > >it would be:
> > > > > >x1,y1,x2,y2 (the coordinates of P1,P2, which are two
> > > > > >diagonally-opposite corner points).
> > > > > >
> > > > > >This looks similar to xmin,ymin,xmax,ymax, but it allows
> > > > the use of
> > > > > >either pair of diagonally-opposite corner points, whereas
> > > > > the min-max
> > > > > >only allows for the one pair.
> > > > > >
> > > > > >It is a small point.  But it is at variance with present
> > > > > (2.0) practice
> > > > > >in
> > > > > >Ch.3 and Ch.5, and I seem to recall some earlier
> > > > resolution to stick
> > > > > >with the way of CGM:1999 and WebCGM 2.0.
> > > > > >
> > > > > >Does anyone want to argue for min/max pairs?
> > > > > >
> > > > > >-Lofton.
> > > > > >
> > > > > >>Exceptions
> > > > > >>         None
> > > > > >>
> > > > > >>Chapter 6 - no changes
> > > > > >>Chapter 7 - no changes
> > > > > >>Chapter 8
> > > > > >>
> > > > > >>Add to WebCGMAppStructure object methods:
> > > > > >>
> > > > > >>getAppStructureExtent()
> > > > > >>         This method has no parameters.
> > > > > >>         This method returns a String
> > > > > >>
> > > > > >>
> > > > > >>
> > > > > >>--
> > > > > >>Stuart Galt
> > > > > >>SGML Resource Group
> > > > > >>stuart.a.galt@boeing.com
> > > > > >>(206) 544-3656
> > > > > >>
> > > > > >>
> > > > > >>------------------------------------------------------------
> > > > > ---------
> > > > > >>To unsubscribe from this mail list, you must leave the
> > > > > OASIS TC that
> > > > > >>generates this mail.  You may a link to this group and all
> > > > > your TCs in
> > > > > >>OASIS
> > > > > >>at:
> > > > > >>https://www.oasis-open.org/apps/org/workgroup/portal/my_work
> > > > groups.php
> > > > > >
> > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >---------------------------------------------------------------------
> > > > > >To unsubscribe from this mail list, you must leave the
> > > > OASIS TC that
> > > > > >generates this mail.  You may a link to this group and all
> > > > > your TCs in
> > > > > >OASIS
> > > > > >at:
> > > > > >https://www.oasis-open.org/apps/org/workgroup/portal/my_workg
> > > > roups.php
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > > >
> > > >
> > > >
> > >
>---------------------------------------------------------------------
> > > > To unsubscribe from this mail list, you must leave the OASIS TC
>that
> >
> > > > generates this mail.  You may a link to this group and all your
>TCs
> > > > in OASIS
> > > > at:
> > > > https://www.oasis-open.org/apps/org/workgroup/portal/my_workgr
> > > oups.php
> > > >
> > > >
> > > >
> > >
>---------------------------------------------------------------------
> > > > To unsubscribe from this mail list, you must leave the OASIS TC
>that
> >
> > > > generates this mail.  You may a link to this group and all your
>TCs
> > > > in OASIS
> > > > at:
> > > > https://www.oasis-open.org/apps/org/workgroup/portal/my_workgr
> > > oups.php
> > > >
> > > >
> >
> >---------------------------------------------------------------------
> >To unsubscribe from this mail list, you must leave the OASIS TC that
> >generates this mail.  You may a link to this group and all your TCs in
> >OASIS
> >at:
> >https://www.oasis-open.org/apps/org/workgroup/portal/my_workgroups.php
> >
> >
> >---------------------------------------------------------------------
> >To unsubscribe from this mail list, you must leave the OASIS TC that
> >generates this mail.  You may a link to this group and all your TCs in
>OASIS
> >at:
> >https://www.oasis-open.org/apps/org/workgroup/portal/my_workgroups.php
>
>
>
>---------------------------------------------------------------------
>To unsubscribe from this mail list, you must leave the OASIS TC that
>generates this mail.  You may a link to this group and all your TCs in
>OASIS
>at:
>https://www.oasis-open.org/apps/org/workgroup/portal/my_workgroups.php
>
>
>---------------------------------------------------------------------
>To unsubscribe from this mail list, you must leave the OASIS TC that
>generates this mail.  You may a link to this group and all your TCs in OASIS
>at:
>https://www.oasis-open.org/apps/org/workgroup/portal/my_workgroups.php




[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]