CGM仕様の実装状況

CGMの読み込み機能は、ISO/IEC 8632:1999のCGM, W3CのWebCGM 2.1の仕様に基づいて作成されています。

以下に、CGMの各要素の実装状況を示します。

ISO8632欄とWebCGM欄は、各要素の準拠状況を示します。

Class-ID 要素 実装状況 備考 / 対応属性 ISO8632 WebCGM
0-0 NOP ○

v1 ○ ○
0-1 BEGIN METAFILE ○

複数の BEGIN METAFILE が含まれていても、最初のものだけが有効です。

v1 ◎ ◎
0-2 END METAFILE ○

END METAFILE 以降に要素が存在しても、無視されます。

v1 ◎ ◎
0-3 BEGIN PICTURE ○

WebCGM のとき、BEGIN PICTURE ~ END PICTURE はメタファイル中にひとつしか含められません。

v1 ○ ◎
0-4 BEGIN PICTURE BODY ○

v1 ○ ◎
0-5 END PICTURE ○

v1 ○ ◎
0-6 BEGIN SEGMENT ×

v2 ○ ×
0-7 END SEGMENT ×

v2 ○ ×
0-8 BEGIN FIGURE ○

v2 ○ ○
0-9 END FIGURE ○

v2 ○ ○
0-13 BEGIN PROTECTION REGION ○

v3 ○ ○
0-14 END PROTECTION REGION ○

v3 ○ ○
0-15 BEGIN COMPOUND LINE ○

v3 ○ ○
0-16 END COMPOUND LINE ○

v3 ○ ○
0-17 BEGIN COMPOUND TEXT PATH ×

v3 ○ ○
0-18 END COMPOUND TEXT PATH ×

v3 ○ ○
0-19 BEGIN TILE ARRAY △

cell path direction, line progression direction は無視されます。

v3 ○ ○
0-20 END TILE ARRAY ○

v3 ○ ○
0-21 BEGIN APPLICATION STRUCTURE △

WebCGM では、次のタイプが定義されています。これらに対して構造上の違反があるとき、あるいはこれら以外のタイプに対しては警告を出力します。

  • layer
  • grobject
  • para
  • subpara
  • grnode

タイプの意味解釈はしません。内容がそのまま評価されて表示されます。 inheritance flag は無視され、statelist とみなされます。

v4 ○ ○
0-22 BEGIN APPLICATION STRUCTURE BODY ○

v4 ○ ○
0-23 END APPLICATION STRUCTURE ○

v4 ○ ○
1-1 METAFILE VERSION ○

バージョン情報は利用されません。

v1 ◎ ◎
1-2 METAFILE DESCRIPTION ○ v1 ◎ ◎
1-3 VDC TYPE ○

v1 ○ ○
1-4 INTEGER PRECISION ○

v1 ○ ○
1-5 REAL PRECISION ○

v1 ○ ○
1-6 INDEX PRECISION ○

v1 ○ ○
1-7 COLOUR PRECISION ○

v1 ○ ○
1-8 COLOUR INDEX PRECISION ○

v1 ○ ○
1-9 MAXIMUM COLOUR INDEX ○

v1 ○ ○
1-10 COLOUR VALUE EXTENT ○

v1 ○ ○
1-11 METAFILE ELEMENT LIST △

無視されます。

v1 ○ ○
1-12 METAFILE DEFAULTS REPLACEMENT ○

v1 ○ ○
1-13 FONT LIST ○

v1 ○ ○
1-14 CHARACTER SET LIST △

無視されます。

v1 ○ ○
1-15 CHARACTER CODING ANNOUNCER △

無視されます。

v1 ○ ◎
1-16 NAME PRECISION ○

v2 ○ ×
1-17 MAXIMUM VDC EXTENT △

無視されます。

v2 ○ ○
1-18 SEGMENT PRIORITY EXTENT ×

v2 ○ ×
1-19 COLOUR MODEL △

RGB にのみ対応しています。

v3 ○ ○
1-20 COLOUR CALIBRATION ×

v3 ○ ×
1-21 FONT PROPERTIES △

以下の属性のみ評価されます。

  1. font index
  2. font family
  3. posture
  4. weight
  5. proportionate width
v3 ○ ○
1-22 GLYPH MAPPING ×

v3 ○ ×
1-23 SYMBOL LIBRARY LIST ×

v3 × ×
1-24 PICTURE DIRECTORY ×

v4 ○ ×
2-1 SCALING MODE ○

v1 ○ ◎
2-2 COLOUR SELECTION MODE ○

v1 ○ ○
2-3 LINE WIDTH SPECIFICATION MODE ○

v1 ○ ○
2-4 MARKER SIZE SPECIFICATION MODE ○

v1 ○ ○
2-5 EDGE WIDTH SPECIFICATION MODE ○

v1 ○ ○
2-6 VDC EXTENT ○

v1 ○ ○
2-7 BACKGROUND COLOUR ○

v1 ○ ○
2-8 DEVICE VIEWPORT ×

v2 × ×
2-9 DEVICE VIEWPORT SPECIFICATION MODE ×

v2 × ×
2-10 DEVICE VIEWPORT MAPPING ×

v2 × ×
2-11 LINE REPRESENTATION ○

v2 ○ ×
2-12 MARKER REPRESENTATION ○

v2 ○ ×
2-13 TEXT REPRESENTATION ○

v2 ○ ×
2-14 FILL REPRESENTATION ○

v2 ○ ×
2-15 EDGE REPRESENTATION ○

v2 ○ ×
2-16 INTERIOR STYLE SPECIFICATION MODE ○

v3 ○ ○
2-17 LINE AND EDGE TYPE DEFINITION ○

v3 ○ ○
2-18 HATCH STYLE DEFINITION ○

v3 ○ ○
2-19 GEOMETRIC PATTERN DEFINITION ×

v3 ○ ×
2-20 APPLICATION STRUCTURE DIRECTORY ×

v4 ○ ×
3-1 VDC INTEGER PRECISION ○

v1 ○ ○
3-2 VDC REAL PRECISION ○

v1 ○ ○
3-3 AUXILIARY COLOUR ○

v1 ○ ○
3-4 TRANSPARENCY △

hatch と 非solid line に反映されます。

v1 ○ ○
3-5 CLIP RECTANGLE ○

v1 ○ ○
3-6 CLIP INDICATOR ○

v1 ○ ○
3-7 LINE CLIPPING MODE △

shape にのみ対応しています。

v2 ○ ×
3-8 MARKER CLIPPING MODE △

shape にのみ対応しています。

v2 ○ ×
3-9 EDGE CLIPPING MODE △

shape にのみ対応しています。

v2 ○ ×
3-10 NEW REGION ○

v2 ○ ○
3-11 SAVE PRIMITIVE CONTEXT ×

v2 ○ ×
3-12 RESTORE PRIMITIVE CONTEXT ×

v2 ○ ×
3-17 PROTECTION REGION INDICATOR ○

複数のREGIONを有効にしたとき、それらのREGIONの和領域をREGIONとして採用せずに、新しく有効になったREGIONを採用します。

v2 ○ ○
3-18 GENERALIZED TEXT PATH MODE ×

v3 ○ ○
3-19 MITRE LIMIT ○

v3 ○ ○
3-20 TRANSPARENT CELL COLOUR △

以下の圧縮形式のときに反映されます。

0.null background
1.null foreground
2.T6
3.T4 1-dimensional
4.T4 2-dimensional
5.bitmap
6.run length
v3 ○ ○
4-1 POLYLINE ○

v1 ○ ○
4-2 DISJOINT POLYLINE ○

v1 ○ ○
4-3 POLYMARKER ○

v1 ○ ○
4-4 TEXT ○

v1 ○ ×
4-5 RESTRICTED TEXT ○

v1 ○ ○
4-6 APPEND TEXT ○

v1 ○ ○
4-7 POLYGON ○

v1 ○ ○
4-8 POLYGON SET ○

v1 ○ ○
4-9 CELL ARRAY ○

v1 ○ ○
4-10 GENERALIZED DRAWING PRIMITIVE ×

v1 × ×
4-11 RECTANGLE ○

v1 ○ ○
4-12 CIRCLE ○

v1 ○ ○
4-13 CIRCULAR ARC 3 POINT ○

v1 ○ ○
4-14 CIRCULAR ARC 3 POINT CLOSE ○

v1 ○ ○
4-15 CIRCULAR ARC CENTRE ○

v1 ○ ○
4-16 CIRCULAR ARC CENTRE CLOSE ○

v1 ○ ○
4-17 ELLIPSE ○

v1 ○ ○
4-18 ELLIPTICAL ARC ○

v1 ○ ○
4-19 ELLIPTICAL ARC CLOSE ○

v1 ○ ○
4-20 CIRCULAR ARC CENTRE REVERSED ○

v2 ○ ○
4-21 CONNECTING EDGE ○

v2 ○ ○
4-22 HYPERBOLIC ARC ○

近似曲線を描画します。

v3 ○ ×
4-23 PARABOLIC ARC ○

v3 ○ ×
4-24 NON-UNIFORM B-SPLINE ○

非有理3次ベジェ曲線に変換して描画します。

v3 ○ ○
4-25 NON-UNIFORM RATIONAL B-SPLINE ○

非有理3次ベジェ曲線に変換して描画します。

v3 ○ ○
4-26 POLYBEZIER ○

v3 ○ ○
4-27 POLYSYMBOL ×

v3 × ×
4-28 BITONAL TILE △

以下の圧縮形式に対応しています。

0.null background
1.null foreground
2.T6
3.T4 1-dimensional
4.T4 2-dimensional
5.bitmap
6.run length
7.baseline jpeg
9.png
v3 ○ ○
4-29 TILE △ v3 ○ ○
5-1 LINE BUNDLE INDEX ○

v1 ○ ×
5-2 LINE TYPE ○

LINE TYPE=1~14 に対応しています。 LINE TYPE=6, 7, 8, 14 は、POLY LINE にのみ適用されます。 LINE TYPE=6, 8 のとき、矢じりの長さが線分の長さに満たないときまたは矢じりの幅が線の幅に満たないときは矢じりは描かれません。 LINE TYPE=7 のとき、円の直径が線分の長さまたは線の幅に満たないときは円は描かれません。

v1 ○ ○
5-3 LINE WIDTH ○

v1 ○ ○
5-4 LINE COLOUR ○

v1 ○ ○
5-5 MARKER BUNDLE INDEX ○

v1 ○ ×
5-6 MARKER TYPE ○

v1 ○ ○
5-7 MARKER SIZE ○

v1 ○ ○
5-8 MARKER COLOUR ○

v1 ○ ○
5-9 TEXT BUNDLE INDEX ○

v1 ○ ×
5-10 TEXT FONT INDEX ○

v1 ○ ○
5-11 TEXT PRECISION △

無視されます。

v1 ○ ○
5-12 CHARACTER EXPANSION FACTOR ○

v1 ○ ○
5-13 CHARACTER SPACING ○

v1 ○ ○
5-14 TEXT COLOUR ○

v1 ○ ○
5-15 CHARACTER HEIGHT ○

v1 ○ ○
5-16 CHARACTER ORIENTATION ○

v1 ○ ○
5-17 TEXT PATH ○

v1 ○ ○
5-18 TEXT ALIGNMENT ○

v1 ○ ○
5-19 CHARACTER SET INDEX △

無視されます。

v1 ○ ○
5-20 ALTERNATE CHARACTER SET INDEX △

無視されます。

v1 ○ ○
5-21 FILL BUNDLE INDEX ○

v1 ○ ×
5-22 INTERIOR STYLE △

geometric pattern には対応していません。

v1 ○ ○
5-23 FILL COLOUR ○

v1 ○ ○
5-24 HATCH INDEX ○

v1 ○ ○
5-25 PATTERN INDEX ○

v1 ○ ○
5-26 EDGE BUNDLE INDEX ○

v1 ○ ×
5-27 EDGE TYPE ○

v1 ○ ○
5-28 EDGE WIDTH ○

v1 ○ ○
5-29 EDGE COLOUR ○

v1 ○ ○
5-30 EDGE VISIBILITY ○

v1 ○ ○
5-31 FILL REFERENCE POINT ○

v1 ○ ○
5-32 PATTERN TABLE ○

v1 ○ ○
5-33 PATTERN SIZE ○

v1 ○ ○
5-34 COLOUR TABLE ○

v1 ○ ○
5-35 ASPECT SOURCE FLAGS ○

v1 ○ ×
5-36 PICK IDENTIFIER ×

v2 ○ ×
5-37 LINE CAP △

triangle には対応していません。

v3 ○ ○
5-38 LINE JOIN ○

v3 ○ ○
5-39 LINE TYPE CONTINUATION △

無視されます。

v3 ○ ○
5-40 LINE TYPE INITIAL OFFSET ○

v3 ○ ○
5-41 TEXT SCORE TYPE ×

v3 ○ ○
5-42 RESTRICTED TEXT TYPE ○

v3 ○ ○
5-43 INTERPOLATED INTERIOR △

triangular には対応していません。

v3 ○ ○
5-44 EDGE CAP △

triangle には対応していません。

v3 ○ ○
5-45 EDGE JOIN ○

v3 ○ ○
5-46 EDGE TYPE CONTINUATION △

無視されます。

v3 ○ ○
5-47 EDGE TYPE INITIAL OFFSET ○

v3 ○ ○
5-48 SYMBOL LIBRARY INDEX ×

v3 × ×
5-49 SYMBOL COLOUR ×

v3 × ×
5-50 SYMBOL SIZE ×

v3 × ×
5-51 SYMBOL ORIENTATION ×

v3 × ×
6-1 ESCAPE △

以下に対応しています。他の ESCAPE は無視されます。

  1. Transparent Cell Colour
  2. Alpha Transparency
v1 ○ ○
7-1 MESSAGE ○

エラーレベル1のメッセージが出力されます。

v1 ○ ×
7-2 APPLICATION DATA ×

v1 ○ ×
8-1 COPY SEGMENT ×

v2 ○ ×
8-2 INHERITANCE FILTER ×

v2 ○ ×
8-3 CLIP INHERITANCE ×

v2 ○ ×
8-4 SEGMENT TRANSFORMATION ×

v2 ○ ×
8-5 SEGMENT HIGHLIGHTING ×

v2 ○ ×
8-6 SEGMENT DISPLAY PRIORITY ×

v2 ○ ×
8-7 SEGMENT PICK PRIORITY ×

v2 ○ ×
9-1 APPLICATION STRUCTURE ATTRIBUTE △

WebCGM では、次の属性が定義されています。

  • region
  • viewcontext
  • linkuri
  • layername
  • layerdesc
  • screentip
  • name
  • content
  • visibility
  • interactivity

これらの指定は評価されますが、必ずしも利用されません。 visibility が off のとき、その APPLICATION STRUCTURE は表示されません。

v4 ○ ○