【手続補正書】
【提出日】平成20年4月18日(2008.4.18)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】  表現ツリーを生成する方法であって、前記表現ツリーは、１つ以上のバイナリノードと複数のリーフノードを有する複数のノードを有し、ここで、それぞれの前記バイナリノードはそれにぶらさがる左ブランチと右ブランチとを有して該２つのぶらさがるノードへの２進演算を表し、それぞれの前記ノードは、１個以上の図形オブジェクトが重なった図形オブジェクトを表し、前記図形オブジェクトの重なりの各々が、左ノード領域、共通領域、および右ノード領域を含み、前記方法が、
１つ以上の画素位置のグループを決定し、
それぞれの前記グループについて、前記１つ以上のバイナリノードの左右のブランチがアクティブであるか非アクティブであるかを判断し、
それぞれの前記グループについて、前記表現ツリーをなぞり、ここで、なぞられたバイナリノードの左右ブランチがアクティブである場合、或いは、前記左ノード領域が前記なぞられたバイナリノードの２進演算に必要であり、前記なぞられたバイナリノードの左ブランチがアクティブで右ブランチが非アクティブである場合に、前記なぞられたバイナリノードの左ブランチにぶらさがるノードへなぞられ、また、前記なぞられたバイナリノードの左右ブランチがアクティブである場合、或いは、前記右ノード領域が前記なぞられたバイナリノードの２進演算に必要であり、前記なぞられたバイナリノードの右ブランチがアクティブであり、左ブランチが非アクティブである場合に、前記なぞられたバイナリノードの右ブランチにぶらさがるノードへなぞられ、
それぞれの前記グループのために、前記アクティブな左右ブランチを有する前記なぞられたバイナリノードのための演算子命令、およびなぞられたリーフノードのためのリーフ値命令を生成することを特徴とする方法。
【請求項２】  前記なぞるステップは表現ツリーをなぞり、前記なぞられたバイナリノードの左右ブランチがアクティブであり、前記なぞられたバイナリノードの右ブランチの下方ノードを表すグラフィックオブジェクトが、前記なぞられたバイナリノードの下方ノードの共通領域において、前記なぞられたバイナリノードの前記左ブランチの下方ノードを表すグラフィックオブジェクトを隠さない場合、前記なぞられたバイナリノードの左ブランチの下方ノードへとなぞられ、また、なぞられたバイナリノードの左右ブランチがアクティブであり、前記なぞられたバイナリノードの前記左ブランチの下方ノードを表すグラフィックオブジェクトが、前記なぞられたバイナリノードの下方ノードを表すグラフィックオブジェクトの共通領域において、前記なぞられたバイナリノードの右ブランチの下方ノードを表すオブジェクトを隠さない場合、前記なぞられたあらゆるバイナリノードの右ブランチの下方ノードへなぞられることを特徴とする請求項１に記載の方法。
【請求項３】  表現ツリーから、複数の走査線と各走査線に複数の画素位置を有するラスタ画素イメージを描画する方法であって、前記表現ツリーは１つ以上のバイナリノードと複数のリーフノードとを備える複数のノードを有し、ここで前記バイナリノードの各々は下方ノードを有する左ブランチと下方ノードを有する右ブランチを有するとともに２つの前記下方ノードに対する２進演算を表わし、また前記リーフノードの各々は１つ以上のグラフィックオブジェクトが重なったグラフィックオブジェクトを表し、重なっているグラフィックオブジェクトの各々は左ノード領域、共通領域、および右ノード領域を含み、
前記表現ツリーを表すテーブルを生成し、ここで前記テーブルは関連するバイナリノードとリーフノードに対応する複数のレコードを含み、そして、前述の関連バイナリのノードのそれぞれの前記レコードは、前記左ノード領域が前記バイナリノードに関連する演算子の動作に必要であるかどうかを示す第１フィールドと、右ノード領域が前記バイナリノードに関連する演算子の動作に必要であるかどうかを示す第２フィールドと、前記関連するバイナリノードの左ブランチがアクティブであるかどうかを示す第３フィールドと、前記関連するバイナリノードの右ブランチがアクティブかどうかを示す第４フィールドとを備え、
１つ以上の画素位置のグループを決定し、
前記グループの各々に関して、前記１つ以上のバイナリノードの左右のブランチがアクティブであるか非アクティブであるかを判断し、
前記グループの各々に関して、前記判断されたアクティブ及び非アクティブのブランチのために、前記テーブルの前記第３及び第４フィールドを更新し、
それぞれの前記グループに関して、前記更新されたテーブルに従って、前記表現ツリーをなぞり、ここで、なぞられたバイナリノードの左右ブランチがアクティブであるか、または、前記左ノード領域がなぞられたバイナリノードの２進演算に必要であり、該なぞられたバイナリノードの左ブランチがアクティブであり、かつ右ブランチが非アクティブである場合に、前記なぞられたバイナリノードの左ブランチがその下方ノードへとなぞられ、また、前記なぞられたバイナリノードの左右ブランチがアクティブであるか、または前記右ノード領域がなぞられたバイナリノードの２進演算に必要であり、該なぞられたバイナリノードの右ブランチがアクティブであり、左ブランチが非アクティブである場合に、なぞられたバイナリノードの右ブランチがその下方ノードへとなぞられ、
前記グループの各々に関して、前記右及び左ブランチがアクティブであるなぞられたバイナリノードに対して演算命令を生成し、なぞられたリーフノードに対してリーフ値命令を生成し、
前記グループの各々に関して、前記イメージを描画するために、前記生成された対応する命令を実行することを特徴とする方法。
【請求項４】  前記テーブルは、前記関連バイナリノードのそれぞれの前記レコードに関して、前記関連バイナリノードの右ブランチの下方ノードを表すグラフィックオブジェクトが、前記関連バイナリノードの下方ノードを表すグラフィックオブジェクトの共通領域において、前記関連バイナリノードの左ブランチの下方ノードを表すグラフィックオブジェクトを隠すかどうかを表す第５フィールドと、前記関連バイナリノードの左ブランチの下方ノードを表すグラフィックオブジェクトが、前記関連バイナリノードの下方ノードを表すグラフィックオブジェクトの共通領域において、前記関連バイナリノードの右ブランチの下方ノードを表すグラフィックオブジェクトを隠すかどうかを表す第６フィールドとを更に備え、前記なぞるステップは、前記更新されたテーブルに従って、前記表現ツリーをなぞり、ここでなぞられたバイナリノードの左右ブランチがアクティブであり、前記なぞられたバイナリノードの右ブランチの下方ノードを表すグラフィックオブジェクトが、前記なぞられたバイナリオブジェクトの下方ノードを表すグラフィックオブジェクトの共通領域において、前記なぞられたバイナリノードの左ブランチの下方ノードを表すグラフィックオブジェクトを隠さない場合は、なぞられたバイナリノードの左ブランチの下方ノードへ向かってなぞられ、なぞられたバイナリノードの左右ブランチがアクティブであり、前記なぞられたバイナリノードの左ブランチの下方ノードを表すグラフィックオブジェクトが、前記なぞられたバイナリオブジェクトの下方ノードを表すグラフィックオブジェクトの共通領域において、前記なぞられたバイナリノードの右ブランチの下方ノードを表すグラフィックオブジェクトを隠さない場合は、なぞられたバイナリノードの右ブランチの下方ノードへ向かってなぞられることを特徴とする請求項３に記載の方法。
【請求項５】  前記第５フィールド及び第６フィールドは、CLIP INもしくはCLIP OUT動作を実行するのに使用されることを特徴とする請求項４に記載の方法。
【請求項６】  表現ツリーを生成する装置であって、前記表現ツリーは、１つ以上のバイナリノードと複数のリーフノードを有する複数のノードを有し、ここで、それぞれの前記バイナリノードはそれにぶらさがる左ブランチと右ブランチとを有して該２つのぶらさがるノードへの２進演算を表し、それぞれの前記ノードは、１個以上の図形オブジェクトが重なった図形オブジェクトを表し、前記図形オブジェクトの重なりの各々が、左ノード領域、共通領域、および右ノード領域を含み、前記装置が、
１つ以上の画素位置のグループを決定する手段と、
それぞれの前記グループについて、前記１つ以上のバイナリノードの左右のブランチがアクティブであるか非アクティブであるかを判断する手段と、
それぞれの前記グループについて、前記表現ツリーをなぞる手段と、ここで、なぞられたバイナリノードの左右ブランチがアクティブである場合、或いは、前記左ノード領域が前記なぞられたバイナリノードの２進演算に必要であり、前記なぞられたバイナリノードの左ブランチがアクティブで右ブランチが非アクティブである場合に、前記なぞられたバイナリノードの左ブランチにぶらさがるノードへなぞられ、また、前記なぞられたバイナリノードの左右ブランチがアクティブである場合、或いは、前記右ノード領域が前記なぞられたバイナリノードの２進演算に必要であり、前記なぞられたバイナリノードの右ブランチがアクティブであり、左ブランチが非アクティブである場合に、前記なぞられたバイナリノードの右ブランチにぶらさがるノードへなぞられ、
それぞれの前記グループのために、前記アクティブな左右ブランチを有する前記なぞられたバイナリノードのための演算子命令、およびなぞられたリーフノードのためのリーフ値命令を生成する手段とを備えることを特徴とする装置。
【請求項７】  前記なぞる手段は表現ツリーをなぞり、前記なぞられたバイナリノードの左右ブランチがアクティブであり、前記なぞられたバイナリノードの右ブランチの下方ノードを表すグラフィックオブジェクトが、前記なぞられたバイナリノードの下方ノードの共通領域において、前記なぞられたバイナリノードの前記左ブランチの下方ノードを表すグラフィックオブジェクトを隠さない場合、前記なぞられたバイナリノードの左ブランチの下方ノードへとなぞられ、また、なぞられたバイナリノードの左右ブランチがアクティブであり、前記なぞられたバイナリノードの前記左ブランチの下方ノードを表すグラフィックオブジェクトが、前記なぞられたバイナリノードの下方ノードを表すグラフィックオブジェクトの共通領域において、前記なぞられたバイナリノードの右ブランチの下方ノードを表すオブジェクトを隠さない場合、前記なぞられたバイナリノードの右ブランチの下方ノードへなぞられることを特徴とする請求項６に記載の装置。
【請求項８】  表現ツリーから、複数の走査線と各走査線に複数の画素位置を有するラスタ画素イメージを描画する装置であって、前記表現ツリーは１つ以上のバイナリノードと複数のリーフノードとを備える複数のノードを有し、ここで前記バイナリノードの各々は下方ノードを有する左ブランチと下方ノードを有する右ブランチを有するとともに２つの前記下方ノードに対する２進演算を表わし、また前記リーフノードの各々は１つ以上のグラフィックオブジェクトが重なったグラフィックオブジェクトを表し、重なっているグラフィックオブジェクトの各々は左ノード領域、共通領域、および右ノード領域を含み、
前記表現ツリーを表すテーブルを生成する手段と、ここで前記テーブルは関連するバイナリノードとリーフノードに対応する複数のレコードを含み、そして、前述の関連バイナリのノードのそれぞれの前記レコードは、前記左ノード領域が前記バイナリノードに関連する演算子の動作に必要であるかどうかを示す第１フィールドと、右ノード領域が前記バイナリノードに関連する演算子の動作に必要であるかどうかを示す第２フィールドと、前記関連するバイナリノードの左ブランチがアクティブであるかどうかを示す第３フィールドと、前記関連するバイナリノードの右ブランチがアクティブかどうかを示す第４フィールドとを備え、
１つ以上の画素位置のグループを決定する手段と、
前記グループの各々に関して、前記１つ以上のバイナリノードの左右のブランチがアクティブであるか非アクティブであるかを判断する手段と、
前記グループの各々に関して、前記判断されたアクティブ及び非アクティブのブランチのために、前記テーブルの前記第３及び第４フィールドを更新する手段と、
それぞれの前記グループに関して、前記更新されたテーブルに従って、前記表現ツリーをなぞる手段と、ここで、なぞられたバイナリノードの左右ブランチがアクティブであるか、または、前記左ノード領域がなぞられたバイナリノードの２進演算に必要であり、該なぞられたバイナリノードの左ブランチがアクティブであり、かつ右ブランチが非アクティブである場合に、前記なぞられたバイナリノードの左ブランチがその下方ノードへとなぞられ、また、前記なぞられたバイナリノードの左右ブランチがアクティブであるか、または前記右ノード領域がなぞられたバイナリノードの２進演算に必要であり、該なぞられたバイナリノードの右ブランチがアクティブであり、左ブランチが非アクティブである場合に、なぞられたバイナリノードの右ブランチがその下方ノードへとなぞられ、
前記グループの各々に関して、前記右及び左ブランチがアクティブであるなぞられたバイナリノードに対して演算命令を生成し、なぞられたリーフノードに対してリーフ値命令を生成する手段と、
前記グループの各々に関して、前記イメージを描画するために、前記生成された対応する命令を実行する手段とを備えることを特徴とする装置。
【請求項９】  前記テーブルは、前記関連バイナリノードのそれぞれの前記レコードに関して、前記関連バイナリノードの右ブランチの下方ノードを表すグラフィックオブジェクトが、前記関連バイナリノードの下方ノードを表すグラフィックオブジェクトの共通領域において、前記関連バイナリノードの左ブランチの下方ノードを表すグラフィックオブジェクトを隠すかどうかを表す第５フィールドと、前記関連バイナリノードの左ブランチの下方ノードを表すグラフィックオブジェクトが、前記関連バイナリノードの下方ノードを表すグラフィックオブジェクトの共通領域において、前記関連バイナリノードの右ブランチの下方ノードを表すグラフィックオブジェクトを隠すかどうかを表す第６フィールドとを更に備え、前記なぞる手段は、前記更新されたテーブルに従って、前記表現ツリーをなぞり、ここでなぞられたバイナリノードの左右ブランチがアクティブであり、前記なぞられたバイナリノードの右ブランチの下方ノードを表すグラフィックオブジェクトが、前記なぞられたバイナリオブジェクトの下方ノードを表すグラフィックオブジェクトの共通領域において、前記なぞられたバイナリノードの左ブランチの下方ノードを表すグラフィックオブジェクトを隠さない場合は、なぞられたバイナリノードの左ブランチの下方ノードへ向かってなぞられ、なぞられたバイナリノードの左右ブランチがアクティブであり、前記なぞられたバイナリノードの左ブランチの下方ノードを表すグラフィックオブジェクトが、前記なぞられたバイナリオブジェクトの下方ノードを表すグラフィックオブジェクトの共通領域において、前記なぞられたバイナリノードの右ブランチの下方ノードを表すグラフィックオブジェクトを隠さない場合は、なぞられたバイナリノードの右ブランチの下方ノードへ向かってなぞられることを特徴とする請求項８に記載の装置。
【請求項１０】  前記第５フィールド及び第６フィールドは、CLIP INもしくはCLIP OUT動作を実行するのに使用されることを特徴とする請求項９に記載の装置。
【請求項１１】  コンピュータに表現ツリーを生成させるためのコンピュータプログラムを格納したコンピュータ可読媒体であって、前記表現ツリーは、１つ以上のバイナリノードと複数のリーフノードを有する複数のノードを有し、ここで、それぞれの前記バイナリノードはそれにぶらさがる左ブランチと右ブランチとを有して該２つのぶらさがるノードへの２進演算を表し、それぞれの前記ノードは、１個以上の図形オブジェクトが重なった図形オブジェクトを表し、前記図形オブジェクトの重なりの各々が、左ノード領域、共通領域、および右ノード領域を含み、コンピュータに、
１つ以上の画素位置のグループを決定する工程と、
それぞれの前記グループについて、前記１つ以上のバイナリノードの左右のブランチがアクティブであるか非アクティブであるかを判断する工程と、
それぞれの前記グループについて、前記表現ツリーをなぞる工程と、ここで、前記なぞられたバイナリノードの左右ブランチがアクティブである場合、或いは、前記左ノード領域が前記なぞられたバイナリノードの２進演算に必要であり、前記なぞられたバイナリノードの左ブランチがアクティブで右ブランチが非アクティブである場合に、前記なぞられたバイナリノードの左ブランチにぶらさがるノードへなぞられ、また、前記なぞられたバイナリノードの左右ブランチがアクティブである場合、或いは、前記右ノード領域が前記なぞられたバイナリノードの２進演算に必要であり、前記なぞられたバイナリノードの右ブランチがアクティブであり、左ブランチが非アクティブである場合に、前記なぞられたバイナリノードの右ブランチにぶらさがるノードへなぞられ、
それぞれの前記グループのために、前記アクティブな左右ブランチを有する前記なぞられたバイナリノードのための演算子命令、およびなぞられたリーフノードのためのリーフ値命令を生成する工程を実行させるコンピュータプログラムが格納されたこと特徴とするコンピュータ可読媒体。
【請求項１２】  前記なぞる工程では、表現ツリーをなぞり、前記なぞられたバイナリノードの左右ブランチがアクティブであり、前記なぞられたバイナリノードの右ブランチの下方ノードを表すグラフィックオブジェクトが、前記なぞられたバイナリノードの下方ノードの共通領域において、前記なぞられたバイナリノードの前記左ブランチの下方ノードを表すグラフィックオブジェクトを隠さない場合、前記なぞられたバイナリノードの左ブランチの下方ノードへとなぞられ、また、なぞられたバイナリノードの左右ブランチがアクティブであり、前記なぞられたバイナリノードの前記左ブランチの下方ノードを表すグラフィックオブジェクトが、前記なぞられたバイナリノードの下方ノードを表すグラフィックオブジェクトの共通領域において、前記なぞられたバイナリノードの右ブランチの下方ノードを表すオブジェクトを隠さない場合、前記なぞられたあらゆるバイナリノードの右ブランチの下方ノードへなぞられることを特徴とする請求項１１に記載のコンピュータ可読媒体。
【請求項１３】  コンピュータに、表現ツリーから、複数の走査線と各走査線に複数の画素位置を有するラスタ画素イメージを描画させるコンピュータプログラムを格納したコンピュータ可読媒体であって、前記表現ツリーは１つ以上のバイナリノードと複数のリーフノードとを備える複数のノードを有し、ここで前記バイナリノードの各々は下方ノードを有する左ブランチと下方ノードを有する右ブランチを有するとともに２つの前記下方ノードに対する２進演算を表わし、また前記リーフノードの各々は１つ以上のグラフィックオブジェクトが重なったグラフィックオブジェクトを表し、重なっているグラフィックオブジェクトの各々は左ノード領域、共通領域、および右ノード領域を含み、コンピュータに、
前記表現ツリーを表すテーブルを生成する工程と、ここで前記テーブルは関連するバイナリノードとリーフノードに対応する複数のレコードを含み、そして、前述の関連バイナリのノードのそれぞれの前記レコードは、前記左ノード領域が前記バイナリノードに関連する演算子の動作に必要であるかどうかを示す第１フィールドと、右ノード領域が前記バイナリノードに関連する演算子の動作に必要であるかどうかを示す第２フィールドと、前記関連するバイナリノードの左ブランチがアクティブであるかどうかを示す第３フィールドと、前記関連するバイナリノードの右ブランチがアクティブかどうかを示す第４フィールドとを備え、
１つ以上の画素位置のグループを決定する工程と、
前記グループの各々に関して、前記１つ以上のバイナリノードの左右のブランチがアクティブであるか非アクティブであるかを判断する工程と、
前記グループの各々に関して、前記判断されたアクティブ及び非アクティブのブランチのために、前記テーブルの前記第３及び第４フィールドを更新する工程と、
それぞれの前記グループに関して、前記更新されたテーブルに従って、前記表現ツリーをなぞる工程と、ここで、なぞられたバイナリノードの左右ブランチがアクティブであるか、または、前記左ノード領域がなぞられたバイナリノードの２進演算に必要であり、該なぞられたバイナリノードの左ブランチがアクティブであり、かつ右ブランチが非アクティブである場合に、前記なぞられたバイナリノードの左ブランチがその下方ノードへとなぞられ、また、前記なぞられたバイナリノードの左右ブランチがアクティブであるか、または前記右ノード領域がなぞられたバイナリノードの２進演算に必要であり、該なぞられたバイナリノードの右ブランチがアクティブであり、左ブランチが非アクティブである場合に、なぞられたバイナリノードの右ブランチがその下方ノードへとなぞられ、
前記グループの各々に関して、前記右及び左ブランチがアクティブであるなぞられたバイナリノードに対して演算命令を生成し、なぞられたリーフノードに対してリーフ値命令を生成する工程と、
前記グループの各々に関して、前記イメージを描画するために、前記生成された対応する命令を実行する工程とを実行させるコンピュータプログラムを格納したことを特徴とするコンピュータ可読媒体。
【請求項１４】  前記テーブルは、前記関連バイナリノードのそれぞれの前記レコードに関して、前記関連バイナリノードの右ブランチの下方ノードを表すグラフィックオブジェクトが、前記関連バイナリノードの下方ノードを表すグラフィックオブジェクトの共通領域において、前記関連バイナリノードの左ブランチの下方ノードを表すグラフィックオブジェクトを隠すかどうかを表す第５フィールドと、前記関連バイナリノードの左ブランチの下方ノードを表すグラフィックオブジェクトが、前記関連バイナリノードの下方ノードを表すグラフィックオブジェクトの共通領域において、前記関連バイナリノードの右ブランチの下方ノードを表すグラフィックオブジェクトを隠すかどうかを表す第６フィールドとを更に備え、前記なぞる工程では、前記更新されたテーブルに従って、前記表現ツリーをなぞり、ここでなぞられたバイナリノードの左右ブランチがアクティブであり、前記なぞられたバイナリノードの右ブランチの下方ノードを表すグラフィックオブジェクトが、前記なぞられたバイナリオブジェクトの下方ノードを表すグラフィックオブジェクトの共通領域において、前記なぞられたバイナリノードの左ブランチの下方ノードを表すグラフィックオブジェクトを隠さない場合は、なぞられたバイナリノードの左ブランチの下方ノードへ向かってなぞられ、なぞられたバイナリノードの左右ブランチがアクティブであり、前記なぞられたバイナリノードの左ブランチの下方ノードを表すグラフィックオブジェクトが、前記なぞられたバイナリオブジェクトの下方ノードを表すグラフィックオブジェクトの共通領域において、前記なぞられたバイナリノードの右ブランチの下方ノードを表すグラフィックオブジェクトを隠さない場合は、なぞられたバイナリノードの右ブランチの下方ノードへ向かってなぞられることを特徴とする請求項１３に記載のコンピュータ可読媒体。
【請求項１５】  前記第５フィールド及び第６フィールドは、CLIP INもしくはCLIP OUT動作を実行するのに使用されることを特徴とする請求項１４に記載のコンピュータ可読媒体。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００１１
【補正方法】削除
【補正の内容】
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００１２
【補正方法】変更
【補正の内容】
【００１２】
発明の要約
また、本発明の第１の態様によれば次の方法が提供される。すなわち、表現ツリーを生成する方法であって、前記表現ツリーは、１つ以上のバイナリノードと複数のリーフノードを有する複数のノードを有し、ここで、それぞれの前記バイナリノードはそれにぶらさがる左ブランチと右ブランチとを有して該２つのぶらさがるノードへの２進演算を表し、それぞれの前記ノードは、１個以上の図形オブジェクトが重なった図形オブジェクトを表し、前記図形オブジェクトの重なりの各々が、左ノード領域、共通領域、および右ノード領域を含み、前記方法が、
１つ以上の画素位置のグループを決定し、
それぞれの前記グループについて、前記１つ以上のバイナリノードの左右のブランチがアクティブであるか非アクティブであるかを判断し、
それぞれの前記グループについて、前記表現ツリーをなぞり、ここで、なぞられたバイナリノードの左右ブランチがアクティブである場合、或いは、前記左ノード領域が前記なぞられたバイナリノードの２進演算に必要であり、前記なぞられたバイナリノードの左ブランチがアクティブで右ブランチが非アクティブである場合に、前記なぞられたバイナリノードの左ブランチにぶらさがるノードへなぞられ、また、前記なぞられたバイナリノードの左右ブランチがアクティブである場合、或いは、前記右ノード領域が前記なぞられたバイナリノードの２進演算に必要であり、前記なぞられたバイナリノードの右ブランチがアクティブであり、左ブランチが非アクティブである場合に、前記なぞられたバイナリノードの右ブランチにぶらさがるノードへなぞられ、
それぞれの前記グループのために、前記アクティブな左右ブランチを有する前記なぞられたバイナリノードのための演算子命令、およびなぞられたリーフノードのためのリーフ値命令を生成する。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００１３
【補正方法】変更
【補正の内容】
【００１３】
また、本発明の第２の態様によれば次の方法が提供される。すなわち、表現ツリーから、複数の走査線と各走査線に複数の画素位置を有するラスタ画素イメージを描画する方法であって、前記表現ツリーは１つ以上のバイナリノードと複数のリーフノードとを備える複数のノードを有し、ここで前記バイナリノードの各々は下方ノードを有する左ブランチと下方ノードを有する右ブランチを有するとともに２つの前記下方ノードに対する２進演算を表わし、また前記リーフノードの各々は１つ以上の前記グラフィックオブジェクトが重なったグラフィックオブジェクトを表し、重なっているグラフィックオブジェクトの各々は左ノード領域、共通領域、および右ノード領域を含み、
前記表現ツリーを表すテーブルを生成し、ここで前記テーブルは関連するバイナリノードとリーフノードに対応する複数のレコードを含み、そして、前述の関連バイナリのノードのそれぞれの前記レコードは、前記左ノード領域が前記バイナリノードに関連する演算子の動作に必要であるかどうかを示す第１フィールドと、右ノード領域が前記バイナリノードに関連する演算子の動作に必要であるかどうかを示す第２フィールドと、前記関連するバイナリノードの左ブランチがアクティブであるかどうかを示す第３フィールドと、前記関連するバイナリノードの右ブランチがアクティブかどうかを示す第４フィールドとを備え、
１つ以上の画素位置のグループを決定し、
前記グループの各々に関して、前記１つ以上のバイナリノードの左右のブランチがアクティブであるか非アクティブであるかを判断し、
前記グループの各々に関して、前記判断されたアクティブ及び非アクティブのブランチのために、前記テーブルの前記第３及び第４フィールドを更新し、
それぞれの前記グループに関して、前記更新されたテーブルに従って、前記表現ツリーをなぞり、ここで、なぞられたバイナリノードの左右ブランチがアクティブであるか、または、前記左ノード領域がなぞられたバイナリノードの２進演算に必要であり、該なぞられたバイナリノードの左ブランチがアクティブであり、かつ右ブランチが非アクティブである場合に、前記なぞられたバイナリノードの左ブランチがその下方ノードへとなぞられ、また、前記なぞられたバイナリノードの左右ブランチがアクティブであるか、または前記右ノード領域がなぞられたバイナリノードの２進演算に必要であり、該なぞられたバイナリノードの右ブランチがアクティブであり、左ブランチが非アクティブである場合に、なぞられたバイナリノードの右ブランチがその下方ノードへとなぞられ、
前記グループの各々に関して、前記右及び左ブランチがアクティブであるなぞられたバイナリノードに対して演算命令を生成し、なぞられたリーフノードに対してリーフ値命令を生成し、
前記グループの各々に関して、前記イメージを描画するために、前記生成された対応する命令を実行する。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００１４
【補正方法】削除
【補正の内容】
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００１５
【補正方法】変更
【補正の内容】
【００１５】
また本発明の第３の態様によれば、次の装置が提供される。すなわち、表現ツリーを生成する装置であって、前記表現ツリーは、１つ以上のバイナリノードと複数のリーフノードを有する複数のノードを有し、ここで、それぞれの前記バイナリノードはそれにぶらさがる左ブランチと右ブランチとを有して該２つのぶらさがるノードへの２進演算を表し、それぞれの前記ノードは、１個以上の図形オブジェクトが重なった図形オブジェクトを表し、前記図形オブジェクトの重なりの各々が、左ノード領域、共通領域、および右ノード領域を含み、前記装置が、
１つ以上の画素位置のグループを決定する手段と、
それぞれの前記グループについて、前記１つ以上のバイナリノードの左右のブランチがアクティブであるか非アクティブであるかを判断する手段と、
それぞれの前記グループについて、前記表現ツリーをなぞる手段と、ここで、なぞられたバイナリノードの左右ブランチがアクティブである場合、或いは、前記左ノード領域が前記なぞられたバイナリノードの２進演算に必要であり、前記なぞられたバイナリノードの左ブランチがアクティブで右ブランチが非アクティブである場合に、前記なぞられたバイナリノードの左ブランチにぶらさがるノードへなぞられ、また、前記なぞられたバイナリノードの左右ブランチがアクティブである場合、或いは、前記右ノード領域が前記なぞられたバイナリノードの２進演算に必要であり、前記なぞられたバイナリノードの右ブランチがアクティブであり、左ブランチが非アクティブである場合に、前記なぞられたバイナリノードの右ブランチにぶらさがるノードへなぞられ、
それぞれの前記グループのために、前記アクティブな左右ブランチを有する前記なぞられたバイナリノードのための演算子命令、およびなぞられたリーフノードのためのリーフ値命令を生成する手段とを備える。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００１６
【補正方法】変更
【補正の内容】
【００１６】
また本発明の第４の態様によれば、次の装置が提供される。すなわち、表現ツリーから、複数の走査線と各走査線に複数の画素位置を有するラスタ画素イメージを描画する装置であって、前記表現ツリーは１つ以上のバイナリノードと複数のリーフノードとを備える複数のノードを有し、ここで前記バイナリノードの各々は下方ノードを有する左ブランチと下方ノードを有する右ブランチを有するとともに２つの前記下方ノードに対する２進演算を表わし、また前記リーフノードの各々は１つ以上の前記グラフィックオブジェクトが重なったグラフィックオブジェクトを表し、重なっているグラフィックオブジェクトの各々は左ノード領域、共通領域、および右ノード領域を含み、
前記表現ツリーを表すテーブルを生成する手段と、ここで前記テーブルは関連するバイナリノードとリーフノードに対応する複数のレコードを含み、そして、前述の関連バイナリのノードのそれぞれの前記レコードは、前記左ノード領域が前記バイナリノードに関連する演算子の動作に必要であるかどうかを示す第１フィールドと、右ノード領域が前記バイナリノードに関連する演算子の動作に必要であるかどうかを示す第２フィールドと、前記関連するバイナリノードの左ブランチがアクティブであるかどうかを示す第３フィールドと、前記関連するバイナリノードの右ブランチがアクティブかどうかを示す第４フィールドとを備え、
１つ以上の画素位置のグループを決定する手段と、
前記グループの各々に関して、前記１つ以上のバイナリノードの左右のブランチがアクティブであるか非アクティブであるかを判断する手段と、
前記グループの各々に関して、前記判断されたアクティブ及び非アクティブのブランチのために、前記テーブルの前記第３及び第４フィールドを更新する手段と、
それぞれの前記グループに関して、前記更新されたテーブルに従って、前記表現ツリーをなぞる手段と、ここで、なぞられたバイナリノードの左右ブランチがアクティブであるか、または、前記左ノード領域がなぞられたバイナリノードの２進演算に必要であり、該なぞられたバイナリノードの左ブランチがアクティブであり、かつ右ブランチが非アクティブである場合に、前記なぞられたバイナリノードの左ブランチがその下方ノードへとなぞられ、また、前記なぞられたバイナリノードの左右ブランチがアクティブであるか、または前記右ノード領域がなぞられたバイナリノードの２進演算に必要であり、該なぞられたバイナリノードの右ブランチがアクティブであり、左ブランチが非アクティブである場合に、なぞられたバイナリノードの右ブランチがその下方ノードへとなぞられ、
前記グループの各々に関して、前記右及び左ブランチがアクティブであるなぞられたバイナリノードに対して演算命令を生成し、なぞられたリーフノードに対してリーフ値命令を生成する手段と、
前記グループの各々に関して、前記イメージを描画するために、前記生成された対応する命令を実行する手段とを備える。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００１７
【補正方法】削除
【補正の内容】
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】００１８
【補正方法】変更
【補正の内容】
【００１８】
また本発明の第５の態様によれば、次のコンピュータ可読媒体が提供される。すなわち、コンピュータに表現ツリーを生成させるためのコンピュータプログラムを格納したコンピュータ可読媒体であって、前記表現ツリーは、１つ以上のバイナリノードと複数のリーフノードを有する複数のノードを有し、ここで、それぞれの前記バイナリノードはそれにぶらさがる左ブランチと右ブランチとを有して該２つのぶらさがるノードへの２進演算を表し、それぞれの前記ノードは、１個以上の図形オブジェクトが重なった図形オブジェクトを表し、前記図形オブジェクトの重なりの各々が、左ノード領域、共通領域、および右ノード領域を含み、コンピュータに、
１つ以上の画素位置のグループを決定する工程と、
それぞれの前記グループについて、前記１つ以上のバイナリノードの左右のブランチがアクティブであるか非アクティブであるかを判断する工程と、
それぞれの前記グループについて、前記表現ツリーをなぞる工程と、ここで、前記なぞられたバイナリノードの左右ブランチがアクティブである場合、或いは、前記左ノード領域が前記なぞられたバイナリノードの２進演算に必要であり、前記なぞられたバイナリノードの左ブランチがアクティブで右ブランチが非アクティブである場合に、前記なぞられたバイナリノードの左ブランチにぶらさがるノードへなぞられ、また、前記なぞられたバイナリノードの左右ブランチがアクティブである場合、或いは、前記右ノード領域が前記なぞられたバイナリノードの２進演算に必要であり、前記なぞられたバイナリノードの右ブランチがアクティブであり、左ブランチが非アクティブである場合に、前記なぞられたバイナリノードの右ブランチにぶらさがるノードへなぞられ、
それぞれの前記グループのために、前記アクティブな左右ブランチを有する前記なぞられたバイナリノードのための演算子命令、およびなぞられたリーフノードのためのリーフ値命令を生成する工程を実行させるコンピュータプログラムが格納されたコンピュータ可読媒体が提供される。
【手続補正１０】
【補正対象書類名】明細書
【補正対象項目名】００１９
【補正方法】変更
【補正の内容】
【００１９】
また本発明の第６の態様によれば、次のコンピュータ可読媒体が提供される。すなわち、コンピュータに、表現ツリーから、複数の走査線と各走査線に複数の画素位置を有するラスタ画素イメージを描画させるコンピュータプログラムを格納したコンピュータ可読媒体であって、前記表現ツリーは１つ以上のバイナリノードと複数のリーフノードとを備える複数のノードを有し、ここで前記バイナリノードの各々は下方ノードを有する左ブランチと下方ノードを有する右ブランチを有するとともに２つの前記下方ノードに対する２進演算を表わし、また前記リーフノードの各々は１つ以上の前記グラフィックオブジェクトが重なったグラフィックオブジェクトを表し、重なっているグラフィックオブジェクトの各々は左ノード領域、共通領域、および右ノード領域を含み、コンピュータに、
前記表現ツリーを表すテーブルを生成する工程と、ここで前記テーブルは関連するバイナリノードとリーフノードに対応する複数のレコードを含み、そして、前述の関連バイナリのノードのそれぞれの前記レコードは、前記左ノード領域が前記バイナリノードに関連する演算子の動作に必要であるかどうかを示す第１フィールドと、右ノード領域が前記バイナリノードに関連する演算子の動作に必要であるかどうかを示す第２フィールドと、前記関連するバイナリノードの左ブランチがアクティブであるかどうかを示す第３フィールドと、前記関連するバイナリノードの右ブランチがアクティブかどうかを示す第４フィールドとを備え、
１つ以上の画素位置のグループを決定する工程と、
前記グループの各々に関して、前記１つ以上のバイナリノードの左右のブランチがアクティブであるか非アクティブであるかを判断する工程と、
前記グループの各々に関して、前記判断されたアクティブ及び非アクティブのブランチのために、前記テーブルの前記第３及び第４フィールドを更新する工程と、
それぞれの前記グループに関して、前記更新されたテーブルに従って、前記表現ツリーをなぞる工程と、ここで、なぞられたバイナリノードの左右ブランチがアクティブであるか、または、前記左ノード領域がなぞられたバイナリノードの２進演算に必要であり、該なぞられたバイナリノードの左ブランチがアクティブであり、かつ右ブランチが非アクティブである場合に、前記なぞられたバイナリノードの左ブランチがその下方ノードへとなぞられ、また、前記なぞられたバイナリノードの左右ブランチがアクティブであるか、または前記右ノード領域がなぞられたバイナリノードの２進演算に必要であり、該なぞられたバイナリノードの右ブランチがアクティブであり、左ブランチが非アクティブである場合に、なぞられたバイナリノードの右ブランチがその下方ノードへとなぞられ、
前記グループの各々に関して、前記右及び左ブランチがアクティブであるなぞられたバイナリノードに対して演算命令を生成し、なぞられたリーフノードに対してリーフ値命令を生成する工程と、
前記グループの各々に関して、前記イメージを描画するために、前記生成された対応する命令を実行する工程とを実行させるコンピュータプログラムを格納したコンピュータ可読媒体が提供される。