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: transparency -- conceptual recommendations


Hi All --

Here is my analysis of the transparency functionality in WebCGM.  I have 
summarized the possible sources, given recommendations, and proposed 
preliminary *conceptual* changes to the spec.  After we agree on those, 
I'll actually draft the changes.

Sorry if it is lengthy.  But we need it to be complete.  High-level 
summary:  the 2.0 spec is in pretty good shape, though lacking clarity on a 
couple of items.  I propose some small changes that will fill those 
holes.  (Recognizing that these specs go beyond what most will 
implement.)  And I propose ignoring or labelling some silly combinations.

Please comment...

SOURCES:
=====

Foreground Sources:
f1.) "a" (alpha) of color models RGBa, sRGBa.
f2.) Esc.45 in picture body.
f3.) Auxiliary Color & Transparency elements (CGM:1999)
f4.) Transparent cell color (CGM:1999 & Esc.22).

Background Sources:
b1.) RGB background color specification in PD:
b2.) RGBa background color specification in PD:
b3.) Esc.45 in the picture descriptor:
b4.) <object> elt's 'background' <param>: enable | disable

ANALYSIS & RECOMMENDATIONS:
=====

A.) The basics of #f1 and #f2 are handled by Sec.2.2.2 [1].

B.) #f3 is V1 functionality.  Effect is not explicitly defined in WebCGM 
combinations with the other transparency effects.  Recommended 
meaning:  when Transparency is 'on' (default), then for the inter-dash 
spaces (etc) the (Pr, Pg, Pb, Pa) in the equations of [1] is set to 
(0,0,0,0) -- transparent black.  When transparency is 'off', then for 
inter-dash spaces (etc) the (Pr, Pg, Pb, Pa) is set to (r,g,b,a) of the 
Transparent Color.  (If the color model of the metafile is simple RGB, then 
(Pr, Pg, Pb, Pa) it is set to (r,g,b,1).)  This is simply a precise 
description of the intended meaning of V1 CGM, I think.

C.) #f4 is V1/V3 functionality.  Effect is not explicitly defined in WebCGM 
combinations with the other transparency effects.  Recommended 
meaning:  for any cell whose color matches the specified TCC, the (Pr, Pg, 
Pb, Pa)  for that cell in the equations of [1] is set to (0,0,0,0) -- 
transparent black.  This is simply a precise description of the intended 
meaning of V1/V3 CGM, I think.

D.) #b1:  Ca in the equations of [1] should be initialized to 0 
(opaque);  Cr, Cg, Cb are initialized to the (r,g,b) of the specified 
background color.

E.) #b2:  (Cr, Cg, Cb, Ca) in the equations of [1] should be initialized to 
the (r,g,b,a) of the specified background color.

F.) #b3:  If the color model is RGB, then (Cr, Cg, Cb, Ca) in the equations 
of [1] should be initialized to the (r,g,b,a), where (r,g,b) is the 
specified background color and "a" is the Esc.45 alpha value.  If the color 
model is RGBa, then ... silly combination ... why would you have an RGBa 
specified background color in the PD and then throw in an Esc.45 element to 
(re)do what is already done by the "a" of RGBa?  DON'T DO THIS.

G.) #b4:  After initializing (Cr, Cg, Cb, Ca) according to the contents of 
the metafile (#D-F), then:  if 'enable', we're done;  if 'disable', then 
replace Ca with 0.0.

PROPOSED CHANGES TO SPEC -- CONCEPTUAL:
=====

Sec.2.2.2 [1] is well-written and provides a foundation for all of this, 
without much change.

-- clarify #B by a "Note" in T.18.3 and in T.18.4 [6] that describes as in 
#B and points back to Sec.2.2.2 [1].

-- clarify #C by a "Note" in T.18.16 [5] that describes as in #C and points 
back to Sec.2.2.2 [1].

-- clarify #D-F by:  *brief* elaboration in Sec.2.2.3 [2] about how #b1-b3 
define the effective background color, which initializes (Cr,Cg,Cb,Ca) of 
Sec.2.2.2.  This is basically what is already there, except being a little 
more precise and complete.  Ignore the "silly" case.  (Or alternatively, 
identify it as a silly thing to do and warn?)

REFERENCES:
=====

[1] Sec. 2.2.2:
http://docs.oasis-open.org/webcgm/v2.0/OS/WebCGM20-Concepts.html#webcgm_2_2_2
[2] Sec. 2.2.3:
http://docs.oasis-open.org/webcgm/v2.0/OS/WebCGM20-Concepts.html#webcgm_2_2_3
[3] Esc.45:
http://jitc.fhu.disa.mil/nitf/graph_reg/diagrams/esc045.html
[4] Sec. 3.4:
http://docs.oasis-open.org/webcgm/v2.0/OS/WebCGM20-IC.html#webcgm_3_4
[5] TCC in T.18.16:
http://docs.oasis-open.org/webcgm/v2.0/OS/WebCGM20-Profile.html#webcgm_4_7
[6] AuxClr & Trnsp in T.18.3 & T.18.4:
http://docs.oasis-open.org/webcgm/v2.0/OS/WebCGM20-Profile.html#webcgm_4_7

Regards,
-Lofton.




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