(57)【特許請求の範囲】
【請求項１】
フロアプランデータ格納部に格納されているフロアプランデータに含まれる、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を、ＣＰＵが直角多角形領域分割プログラム格納部に格納されている直角多角形領域分割プログラムに従って複数の矩形領域に分割する直角多角形領域分割方法であって、
前記直角多角形領域の最左端又は最右端の垂直辺を、抽出すべき矩形領域の左辺又は右辺として認識し、前記抽出すべき矩形領域の左辺又は右辺と一致する線分を仮想する工程と、
前記線分を含む上下方向を観察しながら、前記線分の一部又は全体が前記直角多角形領域の外部に食み出さない限り、前記線分を右方向又は左方向に走査し、前記線分の上下方向に横Ｔ字形を構成する垂直辺を検出した時は、その時の前記線分の位置に前記抽出すべき矩形領域の右辺又は左辺があるものとして前記抽出すべき矩形領域を抽出する工程とを含んでいることを特徴とする直角多角形領域分割方法。
【請求項２】
フロアプランデータ格納部に格納されているフロアプランデータに含まれる、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を、ＣＰＵが直角多角形領域分割プログラム格納部に格納されている直角多角形領域分割プログラムに従って複数の矩形領域に分割する直角多角形領域分割方法であって、
前記直角多角形領域の最左端又は最右端の垂直辺を、抽出すべき矩形領域の左辺又は右辺として認識し、前記抽出すべき矩形領域の左辺又は右辺と一致する線分を仮想する工程と、
前記線分を含む上下方向を観察しながら、前記線分の上下方向に横Ｔ字形を構成する垂直辺を検出しない限り、前記線分を右方向又は左方向に走査し、前記線分の一部又は全体が前記直角多角形領域の外部に食み出した場合には、食み出す前の前記線分の位置に前記抽出すべき矩形領域の右辺又は左辺があるものとして前記抽出すべき矩形領域を抽出する工程とを含んでいることを特徴とする直角多角形領域分割方法。
【請求項３】
フロアプランデータ格納部に格納されているフロアプランデータに含まれる、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を、ＣＰＵが直角多角形領域分割プログラム格納部に格納されている直角多角形領域分割プログラムに従って複数の矩形領域に分割する直角多角形領域分割方法であって、
前記直角多角形領域の最左端又は最右端の垂直辺を、抽出すべき矩形領域の左辺又は右辺として認識し、前記抽出すべき矩形領域の左辺又は右辺と一致する線分を仮想する工程と、
前記線分を含む上下方向を観察しながら、前記線分の一部又は全体が前記直角多角形領域の外部に食み出さない限り、前記線分を右方向又は左方向に走査し、前記線分の上下方向に横Ｔ字形を構成する垂直辺を検出した時は、その時の前記線分の位置に前記抽出すべき矩形領域の右辺又は左辺があるものとして前記抽出すべき矩形領域を抽出する工程と、
前記線分を含む上下方向を観察しながら、前記線分の上下方向に横Ｔ字形を構成する垂直辺を検出しない限り、前記線分を右方向又は左方向に走査し、前記線分の一部又は全体が前記直角多角形領域の外部に食み出した場合には、食み出す前の前記線分の位置に前記抽出すべき矩形領域の右辺又は左辺があるものとして前記抽出すべき矩形領域を抽出する工程とを含んでいることを特徴とする直角多角形領域分割方法。
【請求項４】
フロアプランデータ格納部に格納されているフロアプランデータに含まれる、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を、ＣＰＵが直角多角形領域分割プログラム格納部に格納されている直角多角形領域分割プログラムに従って複数の矩形領域に分割する直角多角形領域分割方法であって、
前記直角多角形領域内の二次元配列の値を第１論理値、前記直角多角形領域外の二次元配列の値を第２論理値とし、前記直角多角形領域を二次元配列で表現する工程と、
前記直角多角形領域の最左端又は最右端の垂直辺を、抽出すべき矩形領域の左辺又は右辺とし、前記抽出すべき矩形領域の最小Ｙ座標値及び最大Ｙ座標値を認識する工程と、
前記抽出すべき矩形領域の最小Ｙ座標値と最大Ｙ座標値との間のＹ軸方向に並ぶ二次元配列の何れか又は全部の値が前記第２論理値とならない限り、前記抽出すべき矩形領域の最小Ｙ座標値の二次元配列の下方及び最大Ｙ座標値の上方にＴ字形を構成する垂直辺をなす二次元配列が存在するか否かのチェックを前記抽出すべき矩形領域の最小Ｘ座標値又は最大Ｘ座標値のＹ軸方向から順にＸ座標方向に行い、横Ｔ字形を構成する垂直辺をなす二次元配列を検出した時は、チェックしているＹ軸方向のＸ座標値の位置に前記抽出すべき矩形領域の右辺又は左辺があるものとして前記抽出すべき矩形領域を抽出する工程とを含んでいることを特徴とする直角多角形領域分割方法。
【請求項５】
フロアプランデータ格納部に格納されているフロアプランデータに含まれる、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を、ＣＰＵが直角多角形領域分割プログラム格納部に格納されている直角多角形領域分割プログラムに従って複数の矩形領域に分割する直角多角形領域分割方法であって、
前記直角多角形領域内の二次元配列の値を第１論理値、前記直角多角形領域外の二次元配列の値を第２論理値とし、前記直角多角形領域を二次元配列で表現する工程と、
前記直角多角形領域の最左端又は最右端の垂直辺を、抽出すべき矩形領域の左辺又は右辺とし、前記抽出すべき矩形領域の最小Ｙ座標値及び最大Ｙ座標値を認識する工程と、
前記抽出すべき矩形領域の最小Ｙ座標値の二次元配列の下方及び最大Ｙ座標値の上方にＴ字形を構成する垂直辺をなす二次元配列を検出しない限り、前記抽出すべき矩形領域の最小Ｙ座標値と最大Ｙ座標値との間のＹ軸方向に並ぶ二次元配列の値のチェックを前記抽出すべき矩形領域の最小Ｘ座標値又は最大Ｘ座標値のＹ軸方向から順にＸ座標方向に行い、前記第２論理値の二次元配列を検出した時は、チェックしているＹ軸方向のＸ座標値の一つ前のＹ軸方向のＸ座標値の位置に前記抽出すべき矩形領域の右辺又は左辺があるものとして前記抽出すべき矩形領域を抽出する工程とを含んでいることを特徴とする直角多角形領域分割方法。
【請求項６】
フロアプランデータ格納部に格納されているフロアプランデータに含まれる、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を、ＣＰＵが直角多角形領域分割プログラム格納部に格納されている直角多角形領域分割プログラムに従って複数の矩形領域に分割する直角多角形領域分割方法であって、
前記直角多角形領域内の二次元配列の値を第１論理値、前記直角多角形領域外の二次元配列の値を第２論理値とし、前記直角多角形領域を二次元配列で表現する工程と、
前記直角多角形領域の最左端又は最右端の垂直辺を、抽出すべき矩形領域の左辺又は右辺とし、前記抽出すべき矩形領域の最小Ｙ座標値及び最大Ｙ座標値を認識する工程と、
前記抽出すべき矩形領域の最小Ｙ座標値と最大Ｙ座標値との間のＹ軸方向に並ぶ二次元配列の何れか又は全部の値が前記第２論理値とならない限り、前記抽出すべき矩形領域の最小Ｙ座標値の二次元配列の下方及び最大Ｙ座標値の上方にＴ字形を構成する垂直辺をなす二次元配列が存在するか否かのチェックを前記抽出すべき矩形領域の最小Ｘ座標値又は最大Ｘ座標値のＹ軸方向から順にＸ座標方向に行い、横Ｔ字形を構成する垂直辺をなす二次元配列を検出した時は、チェックしているＹ軸方向のＸ座標値の位置に前記抽出すべき矩形領域の右辺又は左辺があるものとして前記抽出すべき矩形領域を抽出する工程と、
前記抽出すべき矩形領域の最小Ｙ座標値の二次元配列の下方及び最大Ｙ座標値の上方にＴ字形を構成する垂直辺をなす二次元配列を検出しない限り、前記抽出すべき矩形領域の最小Ｙ座標値と最大Ｙ座標値との間のＹ軸方向に並ぶ二次元配列の値のチェックを前記抽出すべき矩形領域の最小Ｘ座標値又は最大Ｘ座標値のＹ軸方向から順にＸ座標方向に行い、前記第２論理値の二次元配列を検出した時は、チェックしているＹ軸方向のＸ座標値の一つ前のＹ軸方向のＸ座標値の位置に前記抽出すべき矩形領域の右辺又は左辺があるものとして前記抽出すべき矩形領域を抽出する工程とを含んでいることを特徴とする直角多角形領域分割方法。
【請求項７】
フロアプランにより集積回路のレイアウト面に発生した直角多角形領域をコンピュータによって複数の矩形領域に分割する直角多角形領域分割プログラムを記録した記録媒体であって、
前記直角多角形領域の最左端又は最右端の垂直辺を、抽出すべき矩形領域の左辺又は右辺として認識し、前記抽出すべき矩形領域の左辺又は右辺と一致する線分を仮想する工程と、
前記線分を含む上下方向を観察しながら、前記線分の一部又は全体が前記直角多角形領域の外部に食み出さない限り、前記線分を右方向又は左方向に走査し、前記線分の上下方向に横Ｔ字形を構成する垂直辺を検出した時は、その時の前記線分の位置に前記抽出すべき矩形領域の右辺又は左辺があるものとして前記抽出すべき矩形領域を抽出する工程とを実行するプログラムを含んでいることを特徴とする直角多角形領域分割プログラムを記録した記録媒体。
【請求項８】
フロアプランにより集積回路のレイアウト面に発生した直角多角形領域をコンピュータによって複数の矩形領域に分割する直角多角形領域分割プログラムを記録した記録媒体であって、
前記直角多角形領域の最左端又は最右端の垂直辺を、抽出すべき矩形領域の左辺又は右辺として認識し、前記抽出すべき矩形領域の左辺又は右辺と一致する線分を仮想する工程と、
前記線分を含む上下方向を観察しながら、前記線分の上下方向に横Ｔ字形を構成する垂直辺を検出しない限り、前記線分を右方向又は左方向に走査し、前記線分の一部又は全体が前記直角多角形領域の外部に食み出した場合には、食み出す前の前記線分の位置に前記抽出すべき矩形領域の右辺又は左辺があるものとして前記抽出すべき矩形領域を抽出する工程とを実行するプログラムを含んでいることを特徴とする直角多角形領域分割プログラムを記録した記録媒体。
【請求項９】
フロアプランにより集積回路のレイアウト面に発生した直角多角形領域をコンピュータによって複数の矩形領域に分割する直角多角形領域分割プログラムを記録した記録媒体であって、
前記直角多角形領域の最左端又は最右端の垂直辺を、抽出すべき矩形領域の左辺又は右辺として認識し、前記抽出すべき矩形領域の左辺又は右辺と一致する線分を仮想する工程と、
前記線分を含む上下方向を観察しながら、前記線分の一部又は全体が前記直角多角形領域の外部に食み出さない限り、前記線分を右方向又は左方向に走査し、前記線分の上下方向に横Ｔ字形を構成する垂直辺を検出した時は、その時の前記線分の位置に前記抽出すべき矩形領域の右辺又は左辺があるものとして前記抽出すべき矩形領域を抽出する工程と、
前記線分を含む上下方向を観察しながら、前記線分の上下方向に横Ｔ字形を構成する垂直辺を検出しない限り、前記線分を右方向又は左方向に走査し、前記線分の一部又は全体が前記直角多角形領域の外部に食み出した場合には、食み出す前の前記線分の位置に前記抽出すべき矩形領域の右辺又は左辺があるものとして前記抽出すべき矩形領域を抽出する工程とを実行するプログラムを含んでいることを特徴とする直角多角形領域分割プログラムを記録した記録媒体。
【請求項１０】
フロアプランにより集積回路のレイアウト面に発生した直角多角形領域をコンピュータによって複数の矩形領域に分割する直角多角形領域分割プログラムを記録した記録媒体であって、
前記直角多角形領域内の二次元配列の値を第１論理値、前記直角多角形領域外の二次元配列の値を第２論理値とし、前記直角多角形領域を二次元配列で表現する工程と、
前記直角多角形領域の最左端又は最右端の垂直辺を、抽出すべき矩形領域の左辺又は右辺とし、前記抽出すべき矩形領域の最小Ｙ座標値及び最大Ｙ座標値を認識する工程と、
前記抽出すべき矩形領域の最小Ｙ座標値と最大Ｙ座標値との間のＹ軸方向に並ぶ二次元配列の何れか又は全部の値が前記第２論理値とならない限り、前記抽出すべき矩形領域の最小Ｙ座標値の二次元配列の下方及び最大Ｙ座標値の上方にＴ字形を構成する垂直辺をなす二次元配列が存在するか否かのチェックを前記抽出すべき矩形領域の最小Ｘ座標値又は最大Ｘ座標値のＹ軸方向から順にＸ座標方向に行い、横Ｔ字形を構成する垂直辺をなす二次元配列を検出した時は、チェックしているＹ軸方向のＸ座標値の位置に前記抽出すべき矩形領域の右辺又は左辺があるものとして前記抽出すべき矩形領域を抽出する工程とを実行するプログラムを含んでいることを特徴とする直角多角形領域分割プログラムを記録した記録媒体。
【請求項１１】
フロアプランにより集積回路のレイアウト面に発生した直角多角形領域をコンピュータによって複数の矩形領域に分割する直角多角形領域分割プログラムを記録した記録媒体であって、
前記直角多角形領域内の二次元配列の値を第１論理値、前記直角多角形領域外の二次元配列の値を第２論理値とし、前記直角多角形領域を二次元配列で表現する工程と、
前記直角多角形領域の最左端又は最右端の垂直辺を、抽出すべき矩形領域の左辺又は右辺とし、前記抽出すべき矩形領域の最小Ｙ座標値及び最大Ｙ座標値を認識する工程と、
前記抽出すべき矩形領域の最小Ｙ座標値の二次元配列の下方及び最大Ｙ座標値の上方にＴ字形を構成する垂直辺をなす二次元配列を検出しない限り、前記抽出すべき矩形領域の最小Ｙ座標値と最大Ｙ座標値との間のＹ軸方向に並ぶ二次元配列の値のチェックを前記抽出すべき矩形領域の最小Ｘ座標値又は最大Ｘ座標値のＹ軸方向から順にＸ座標方向に行い、前記第２論理値の二次元配列を検出した時は、チェックしているＹ軸方向のＸ座標値の一つ前のＹ軸方向のＸ座標値の位置に前記抽出すべき矩形領域の右辺又は左辺があるものとして前記抽出すべき矩形領域を抽出する工程とを実行するプログラムを含んでいることを特徴とする直角多角形領域分割プログラムを記録した記録媒体。
【請求項１２】
フロアプランにより集積回路のレイアウト面に発生した直角多角形領域をコンピュータによって複数の矩形領域に分割する直角多角形領域分割プログラムを記録した記録媒体であって、
前記直角多角形領域内の二次元配列の値を第１論理値、前記直角多角形領域外の二次元配列の値を第２論理値とし、前記直角多角形領域を二次元配列で表現する工程と、
前記直角多角形領域の最左端又は最右端の垂直辺を、抽出すべき矩形領域の左辺又は右辺とし、前記抽出すべき矩形領域の最小Ｙ座標値及び最大Ｙ座標値を認識する工程と、
前記抽出すべき矩形領域の最小Ｙ座標値と最大Ｙ座標値との間のＹ軸方向に並ぶ二次元配列の何れか又は全部の値が前記第２論理値とならない限り、前記抽出すべき矩形領域の最小Ｙ座標値の二次元配列の下方及び最大Ｙ座標値の上方にＴ字形を構成する垂直辺をなす二次元配列が存在するか否かのチェックを前記抽出すべき矩形領域の最小Ｘ座標値又は最大Ｘ座標値のＹ軸方向から順にＸ座標方向に行い、横Ｔ字形を構成する垂直辺をなす二次元配列を検出した時は、チェックしているＹ軸方向のＸ座標値の位置に前記抽出すべき矩形領域の右辺又は左辺があるものとして前記抽出すべき矩形領域を抽出する工程と、
前記抽出すべき矩形領域の最小Ｙ座標値の二次元配列の下方及び最大Ｙ座標値の上方にＴ字形を構成する垂直辺をなす二次元配列を検出しない限り、前記抽出すべき矩形領域の最小Ｙ座標値と最大Ｙ座標値との間のＹ軸方向に並ぶ二次元配列の値のチェックを前記抽出すべき矩形領域の最小Ｘ座標値又は最大Ｘ座標値のＹ軸方向から順にＸ座標方向に行い、前記第２論理値の二次元配列を検出した時は、チェックしているＹ軸方向のＸ座標値の一つ前のＹ軸方向のＸ座標値の位置に前記抽出すべき矩形領域の右辺又は左辺があるものとして前記抽出すべき矩形領域を抽出する工程とを実行するプログラムを含んでいることを特徴とする直角多角形領域分割プログラムを記録した記録媒体。
【請求項１３】
フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を複数の矩形領域に分割する直角多角形領域分割装置であって、
前記直角多角形領域の最左端又は最右端の垂直辺を、抽出すべき矩形領域の左辺又は右辺として認識し、前記抽出すべき矩形領域の左辺又は右辺と一致する線分を仮想する工程と、
前記線分を含む上下方向を観察しながら、前記線分の一部又は全体が前記直角多角形領域の外部に食み出さない限り、前記線分を右方向又は左方向に走査し、前記線分の上下方向に横Ｔ字形を構成する垂直辺を検出した時は、その時の前記線分の位置に前記抽出すべき矩形領域の右辺又は左辺があるものとして前記抽出すべき矩形領域を抽出する工程とを実行する手段を有していることを特徴とする直角多角形領域分割装置。
【請求項１４】
フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を複数の矩形領域に分割する直角多角形領域分割装置であって、
前記直角多角形領域の最左端又は最右端の垂直辺を、抽出すべき矩形領域の左辺又は右辺として認識し、前記抽出すべき矩形領域の左辺又は右辺と一致する線分を仮想する工程と、
前記線分を含む上下方向を観察しながら、前記線分の上下方向に横Ｔ字形を構成する垂直辺を検出しない限り、前記線分を右方向又は左方向に走査し、前記線分の一部又は全体が前記直角多角形領域の外部に食み出した場合には、食み出す前の前記線分の位置に前記抽出すべき矩形領域の右辺又は左辺があるものとして前記抽出すべき矩形領域を抽出する工程とを実行する手段を有していることを特徴とする直角多角形領域分割装置。
【請求項１５】
フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を複数の矩形領域に分割する直角多角形領域分割装置であって、
前記直角多角形領域の最左端又は最右端の垂直辺を、抽出すべき矩形領域の左辺又は右辺として認識し、前記抽出すべき矩形領域の左辺又は右辺と一致する線分を仮想する工程と、
前記線分を含む上下方向を観察しながら、前記線分の一部又は全体が前記直角多角形領域の外部に食み出さない限り、前記線分を右方向又は左方向に走査し、前記線分の上下方向に横Ｔ字形を構成する垂直辺を検出した時は、その時の前記線分の位置に前記抽出すべき矩形領域の右辺又は左辺があるものとして前記抽出すべき矩形領域を抽出する工程と、
前記線分を含む上下方向を観察しながら、前記線分の上下方向に横Ｔ字形を構成する垂直辺を検出しない限り、前記線分を右方向又は左方向に走査し、前記線分の一部又は全体が前記直角多角形領域の外部に食み出した場合には、食み出す前の前記線分の位置に前記抽出すべき矩形領域の右辺又は左辺があるものとして前記抽出すべき矩形領域を抽出する工程とを実行する手段を有していることを特徴とする直角多角形領域分割装置。
【請求項１６】
フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を複数の矩形領域に分割する直角多角形領域分割装置であって、
前記直角多角形領域内の二次元配列の値を第１論理値、前記直角多角形領域外の二次元配列の値を第２論理値とし、前記直角多角形領域を二次元配列で表現する工程と、
前記直角多角形領域の最左端又は最右端の垂直辺を、抽出すべき矩形領域の左辺又は右辺とし、前記抽出すべき矩形領域の最小Ｙ座標値及び最大Ｙ座標値を認識する工程と、
前記抽出すべき矩形領域の最小Ｙ座標値と最大Ｙ座標値との間のＹ軸方向に並ぶ二次元配列の何れか又は全部の値が前記第２論理値とならない限り、前記抽出すべき矩形領域の最小Ｙ座標値の二次元配列の下方及び最大Ｙ座標値の上方にＴ字形を構成する垂直辺をなす二次元配列が存在するか否かのチェックを前記抽出すべき矩形領域の最小Ｘ座標値又は最大Ｘ座標値のＹ軸方向から順にＸ座標方向に行い、横Ｔ字形を構成する垂直辺をなす二次元配列を検出した時は、チェックしているＹ軸方向のＸ座標値の位置に前記抽出すべき矩形領域の右辺又は左辺があるものとして前記抽出すべき矩形領域を抽出する工程とを実行する手段を有していることを特徴とする直角多角形領域分割装置。
【請求項１７】
フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を複数の矩形領域に分割する直角多角形領域分割装置であって、
前記直角多角形領域内の二次元配列の値を第１論理値、前記直角多角形領域外の二次元配列の値を第２論理値とし、前記直角多角形領域を二次元配列で表現する工程と、
前記直角多角形領域の最左端又は最右端の垂直辺を、抽出すべき矩形領域の左辺又は右辺とし、前記抽出すべき矩形領域の最小Ｙ座標値及び最大Ｙ座標値を認識する工程と、
前記抽出すべき矩形領域の最小Ｙ座標値の二次元配列の下方及び最大Ｙ座標値の上方にＴ字形を構成する垂直辺をなす二次元配列を検出しない限り、前記抽出すべき矩形領域の最小Ｙ座標値と最大Ｙ座標値との間のＹ軸方向に並ぶ二次元配列の値のチェックを前記抽出すべき矩形領域の最小Ｘ座標値又は最大Ｘ座標値のＹ軸方向から順にＸ座標方向に行い、前記第２論理値の二次元配列を検出した時は、チェックしているＹ軸方向のＸ座標値の一つ前のＹ軸方向のＸ座標値の位置に前記抽出すべき矩形領域の右辺又は左辺があるものとして前記抽出すべき矩形領域を抽出する工程とを実行する手段を有していることを特徴とする直角多角形領域分割装置。
【請求項１８】
フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を複数の矩形領域に分割する直角多角形領域分割装置であって、
前記直角多角形領域内の二次元配列の値を第１論理値、前記直角多角形領域外の二次元配列の値を第２論理値とし、前記直角多角形領域を二次元配列で表現する工程と、
前記直角多角形領域の最左端又は最右端の垂直辺を、抽出すべき矩形領域の左辺又は右辺とし、前記抽出すべき矩形領域の最小Ｙ座標値及び最大Ｙ座標値を認識する工程と、
前記抽出すべき矩形領域の最小Ｙ座標値と最大Ｙ座標値との間のＹ軸方向に並ぶ二次元配列の何れか又は全部の値が前記第２論理値とならない限り、前記抽出すべき矩形領域の最小Ｙ座標値の二次元配列の下方及び最大Ｙ座標値の上方にＴ字形を構成する垂直辺をなす二次元配列が存在するか否かのチェックを前記抽出すべき矩形領域の最小Ｘ座標値又は最大Ｘ座標値のＹ軸方向から順にＸ座標方向に行い、横Ｔ字形を構成する垂直辺をなす二次元配列を検出した時は、チェックしているＹ軸方向のＸ座標値の位置に前記抽出すべき矩形領域の右辺又は左辺があるものとして前記抽出すべき矩形領域を抽出する工程と、
前記抽出すべき矩形領域の最小Ｙ座標値の二次元配列の下方及び最大Ｙ座標値の上方にＴ字形を構成する垂直辺をなす二次元配列を検出しない限り、前記抽出すべき矩形領域の最小Ｙ座標値と最大Ｙ座標値との間のＹ軸方向に並ぶ二次元配列の値のチェックを前記抽出すべき矩形領域の最小Ｘ座標値又は最大Ｘ座標値のＹ軸方向から順にＸ座標方向に行い、前記第２論理値の二次元配列を検出した時は、チェックしているＹ軸方向のＸ座標値の一つ前のＹ軸方向のＸ座標値の位置に前記抽出すべき矩形領域の右辺又は左辺があるものとして前記抽出すべき矩形領域を抽出する工程とを実行する手段を有していることを特徴とする直角多角形領域分割装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、フロアプランナで作成した集積回路のフロアプランデータを、フロアプランナと論理合成ツールやタイミング解析ツール等との間のインタフェースであるＰＤＥＦ（Ｐhysical Ｄesign Ｅxchange Ｆormat）に出力する場合等に使用する直角多角形領域分割方法及び直角多角形領域分割プログラムを記録した記録媒体並びに直角多角形領域分割装置に関する。
【０００２】
フロアプランナで作成した集積回路のフロアプランデータをＰＤＥＦに出力する場合には、直角多角形領域（９０°及び２７０°の内角を有する多角形領域）を複数の矩形領域に分割する必要がある。この場合、ＰＤＥＦデータ量を少なくし、ＰＤＥＦデータを入力する他のプログラムの処理スピードを速くし、集積回路の設計期間の短縮化を図るためには、直角多角形領域を出来る限り少ない数の矩形領域に分割することが望ましい。
【０００３】
【従来の技術】
従来、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を複数の矩形領域に分割する直角多角形領域分割方法として、一律に縦方向に分割する方法又は一律に横方向に分割する方法が使用されていた。
【０００４】
たとえば、図５８（Ａ）に示す直角多角形領域１を複数の矩形領域に分割する場合、一律に縦方向に分割する方法では、図５８（Ｂ）に示すように、直角多角形領域１は、８個の矩形領域２−１〜２−８に分割され、一律に横方向に分割する方法では、図５８（Ｃ）に示すように、直角多角形領域１は、７個の矩形領域３−１〜３−７に分割される。
【０００５】
この例では、一律に横方向に分割する場合の方が一律に縦方向に分割する場合よりも抽出する矩形領域の数を少なくすることができるが、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を複数の矩形領域に分割する場合には、設計者の経験などにより、一律に縦方向に分割する方法又は一律に横方向に分割する方法が選択的に使用されていた。
【０００６】
【発明が解決しようとする課題】
しかし、図５８（Ａ）に示す直角多角形領域１を最少数の矩形領域に分割しようとすると、図５９に示すように、６個の矩形領域４−１〜４−６に分割することができる。
【０００７】
この分割方法は、図６０（Ａ）に示すような横Ｔ字形の直角多角形領域については、図６０（Ｂ）に示すように横方向に分割すべきではなく、図６０（Ｃ）に示すように縦方向に分割する場合に最少数の矩形領域に分割でき、図６０（Ｄ）に示すようなＴ字形の直角多角形領域及び図６０（Ｇ）に示すような逆Ｔ字形の直角多角形領域については、図６０（Ｅ）、（Ｈ）に示すように縦方向に分割すべきではなく、図６０（Ｆ）、（Ｉ）に示すように横方向に分割する場合に最少数の矩形領域に分割することができるということに基づいている。
【０００８】
なお、図６１（Ａ）に示すようなＮ字形の直角多角形領域については、図６１（Ｂ）に示すように横方向に分割すべきではなく、図６１（Ｃ）に示すように縦方向に分割する場合に最少数の矩形領域に分割することができる。
【０００９】
本発明は、かかる点に鑑み、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を従来例の場合よりも少ない数又は最少数の矩形領域に分割することができるようにし、これを、たとえば、フロアプランデータをＰＤＥＦに出力する際に使用する場合には、ＰＤＥＦデータ量を従来例の場合よりも少なく又は最少とし、ＰＤＥＦデータを入力する他のプログラムの処理スピードを速くし、集積回路の設計期間の短縮化を図ることができるようにした直角多角形領域分割方法及び直角多角形領域分割プログラムを記録した記録媒体並びに直角多角形領域分割装置を提供することを目的とする。
【００１０】
【課題を解決するための手段】
本発明中、第１の発明は、フロアプランデータ格納部に格納されているフロアプランデータに含まれる、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を、ＣＰＵが直角多角形領域分割プログラム格納部に格納されている直角多角形領域分割プログラムに従って複数の矩形領域に分割する直角多角形領域分割方法であって、直角多角形領域の最左端の垂直辺を、抽出すべき矩形領域の左辺として認識し、抽出すべき矩形領域の左辺と一致する線分を仮想する工程と、前記線分を含む上下方向を観察しながら、前記線分の一部又は全体が直角多角形領域の外部に食み出さない限り、前記線分を右方向に走査し、前記線分の上下方向に横Ｔ字形を構成する垂直辺を検出した時は、その時の前記線分の位置に抽出すべき矩形領域の右辺があるものとして抽出すべき矩形領域を抽出する工程とを含んでいるというものである。
【００１１】
第１の発明によれば、たとえば、図１（Ａ）に示すような横Ｔ字形の直角多角形領域６を複数の矩形領域に分割する場合、図１（Ｂ）に示すように、最少数である２個の矩形領域７−１、７−２に分割することができ、図１（Ｃ）に示すように、３個の矩形領域８−１〜８−３に分割しないようにすることができる。
【００１２】
また、たとえば、図１（Ｄ）に示すような段差のある横Ｔ字形の直角多角形領域９を複数の矩形領域に分割する場合、図１（Ｅ）に示すように、最少数の３個の矩形領域１０−１〜１０−３に分割することができ、図１（Ｆ）に示すように、４個の矩形領域１１−１〜１１−４に分割しないようにすることができる。
【００１３】
したがって、第１の発明によれば、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を従来例の場合よりも少ない数又は最少数の矩形領域に分割することができ、これを、たとえば、フロアプランデータをＰＤＥＦに出力する際に使用する場合には、ＰＤＥＦデータ量を従来例の場合よりも少なく又は最少とすることができる。
【００１４】
本発明中、第２の発明は、フロアプランデータ格納部に格納されているフロアプランデータに含まれる、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を、ＣＰＵが直角多角形領域分割プログラム格納部に格納されている直角多角形領域分割プログラムに従って複数の矩形領域に分割する直角多角形領域分割方法であって、直角多角形領域の最左端の垂直辺を、抽出すべき矩形領域の左辺として認識し、抽出すべき矩形領域の左辺と一致する線分を仮想する工程と、前記線分を含む上下方向を観察しながら、前記線分の上下方向に横Ｔ字形を構成する垂直辺を検出しない限り、前記線分を右方向に走査し、前記線分の一部又は全体が直角多角形領域の外部に食み出した場合には、食み出す前の前記線分の位置に抽出すべき矩形領域の右辺があるものとして抽出すべき矩形領域を抽出する工程とを含んでいるというものである。
【００１５】
第２の発明によれば、たとえば、図２（Ａ）に示すようなＮ字形の直角多角形領域１２を複数の矩形領域に分割する場合、図２（Ｂ）に示すように、最少数の２個の矩形領域１３−１、１３−２に分割することができ、図２（Ｃ）に示すように、３個の矩形領域１４−１〜１４−３に分割しないようにすることができる。
【００１６】
また、たとえば、図２（Ｄ）に示すような逆Ｔ字形の直角多角形領域１５を複数の矩形領域に分割する場合、図２（Ｅ）に示すように、最少数の２個の矩形領域１６−１、１６−２に分割することができ、図２（Ｆ）に示すように、３個の矩形領域１７−１〜１７−３に分割しないようにすることができる。Ｔ字形の直角多角形領域を分割する場合も同様である。
【００１７】
したがって、第２の発明によれば、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を従来例の場合よりも少ない数又は最少数の矩形領域に分割することができ、これを、たとえば、フロアプランデータをＰＤＥＦに出力する際に使用する場合には、ＰＤＥＦデータ量を従来例の場合よりも少なく又は最少とすることができる。
【００１８】
本発明中、第３の発明は、フロアプランデータ格納部に格納されているフロアプランデータに含まれる、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を、ＣＰＵが直角多角形領域分割プログラム格納部に格納されている直角多角形領域分割プログラムに従って複数の矩形領域に分割する直角多角形領域分割方法であって、直角多角形領域の最左端の垂直辺を、抽出すべき矩形領域の左辺として認識し、抽出すべき矩形領域の左辺と一致する線分を仮想する工程と、前記線分を含む上下方向を観察しながら、前記線分の一部又は全体が直角多角形領域の外部に食み出さない限り、前記線分を右方向に走査し、前記線分の上下方向に横Ｔ字形を構成する垂直辺を検出した時は、その時の前記線分の位置に抽出すべき矩形領域の右辺があるものとして抽出すべき矩形領域を抽出する工程と、前記線分を含む上下方向を観察しながら、前記線分の上下方向に横Ｔ字形を構成する垂直辺を検出しない限り、前記線分を右方向に走査し、前記線分の一部又は全体が直角多角形領域の外部に食み出した場合には、食み出す前の前記線分の位置に抽出すべき矩形領域の右辺があるものとして抽出すべき矩形領域を抽出する工程とを含んでいるというものである。
【００１９】
第３の発明によれば、第１の発明が含んでいる工程と、第２の発明が含んでいる工程とを含んでいるので、横Ｔ字形、Ｎ字形，逆Ｔ字形及びＴ字形の直角多角形領域を最少数の矩形領域に分解することができる。したがって、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を最少数の矩形領域に分割することができ、これを、たとえば、フロアプランデータをＰＤＥＦに出力する際に使用する場合には、ＰＤＥＦデータ量を最少とすることができる。
【００２０】
本発明中、第４の発明は、フロアプランデータ格納部に格納されているフロアプランデータに含まれる、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を、ＣＰＵが直角多角形領域分割プログラム格納部に格納されている直角多角形領域分割プログラムに従って複数の矩形領域に分割する直角多角形領域分割方法であって、直角多角形領域の最右端の垂直辺を、抽出すべき矩形領域の右辺として認識し、抽出すべき矩形領域の右辺と一致する線分を仮想する工程と、前記線分を含む上下方向を観察しながら、前記線分の一部又は全体が直角多角形領域の外部に食み出さない限り、前記線分を左方向に走査し、前記線分の上下方向に横Ｔ字形を構成する垂直辺を検出した時は、その時の前記線分の位置に抽出すべき矩形領域の左辺があるものとして抽出すべき矩形領域を抽出する工程とを含んでいるというものである。
【００２１】
第４の発明によれば、たとえば、図３（Ａ）に示すような横Ｔ字形の直角多角形領域１９を複数の矩形領域に分割する場合、図３（Ｂ）に示すように、最少数の２個の矩形領域２０−１、２０−２に分割することができ、図３（Ｃ）に示すように、３個の矩形領域２１−１〜２１−３に分割しないようにすることができる。
【００２２】
また、たとえば、図３（Ｄ）に示すような段差がある横Ｔ字形の直角多角形領域２２を複数の矩形領域に分割する場合、図３（Ｅ）に示すように、最少数の３個の矩形領域２３−１〜２３−３に分割することができ、図３（Ｆ）に示すように、４個の矩形領域２４−１〜２４−４に分割しないようにすることができる。
【００２３】
したがって、第４の発明によれば、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を従来例の場合よりも少ない数又は最少数の矩形領域に分割することができ、これを、たとえば、フロアプランデータをＰＤＥＦに出力する際に使用する場合には、ＰＤＥＦデータ量を従来例の場合よりも少なく又は最少とすることができる。
【００２４】
本発明中、第５の発明は、フロアプランデータ格納部に格納されているフロアプランデータに含まれる、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を、ＣＰＵが直角多角形領域分割プログラム格納部に格納されている直角多角形領域分割プログラムに従って複数の矩形領域に分割する直角多角形領域分割方法であって、直角多角形領域の最右端の垂直辺を、抽出すべき矩形領域の右辺として認識し、抽出すべき矩形領域の右辺と一致する線分を仮想する工程と、前記線分を含む上下方向を観察しながら、前記線分の上下方向に横Ｔ字形を構成する垂直辺を検出しない限り、前記線分を左方向に走査し、前記線分の一部又は全体が直角多角形領域の外部に食み出した場合には、食み出す前の前記線分の位置に抽出すべき矩形領域の左辺があるものとして抽出すべき矩形領域を抽出する工程とを含んでいるというものである。
【００２５】
第５の発明によれば、たとえば、図４（Ａ）に示すようなＮ字形の直角多角形領域２５を複数の矩形領域に分割する場合、図４（Ｂ）に示すように、最少数の２個の矩形領域２６−１、２６−２に分割することができ、図４（Ｃ）に示すように、３個の矩形領域２７−１〜２７−３に分割しないようにすることができる。
【００２６】
また、たとえば、図４（Ｄ）に示すような逆Ｔ字形の直角多角形領域２８を複数の矩形領域に分割する場合、図４（Ｅ）に示すように、最少数の２個の矩形領域２９−１、２９−２に分割することができ、図４（Ｆ）に示すように、３個の矩形領域３０−１〜３０−３に分割しないようにすることができる。Ｔ字形の直角多角形領域を分割する場合も同様である。
【００２７】
したがって、第５の発明によれば、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を従来例の場合よりも少ない数又は最少数の矩形領域に分割することができ、これを、たとえば、フロアプランデータをＰＤＥＦに出力する際に使用する場合には、ＰＤＥＦデータ量を従来例の場合よりも少なく又は最少とすることができる。
【００２８】
本発明中、第６の発明は、フロアプランデータ格納部に格納されているフロアプランデータに含まれる、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を、ＣＰＵが直角多角形領域分割プログラム格納部に格納されている直角多角形領域分割プログラムに従って複数の矩形領域に分割する直角多角形領域分割方法であって、直角多角形領域の最右端の垂直辺を、抽出すべき矩形領域の右辺として認識し、抽出すべき矩形領域の右辺と一致する線分を仮想する工程と、前記線分を含む上下方向を観察しながら、前記線分の一部又は全体が直角多角形領域の外部に食み出さない限り、前記線分を左方向に走査し、前記線分の上下方向に横Ｔ字形を構成する垂直辺を検出した時は、その時の前記線分の位置に抽出すべき矩形領域の左辺があるものとして抽出すべき矩形領域を抽出する工程と、前記線分を含む上下方向を観察しながら、前記線分の上下方向に横Ｔ字形を構成する垂直辺を検出しない限り、前記線分を左方向に走査し、前記線分の一部又は全体が直角多角形領域の外部に食み出した場合には、食み出す前の前記線分の位置に抽出すべき矩形領域の左辺があるものとして抽出すべき矩形領域を抽出する工程とを含んでいるというものである。
【００２９】
第６の発明によれば、第４の発明が含んでいる工程と、第５の発明が含んでいる工程とを含んでいるので、横Ｔ字形、Ｎ字形，逆Ｔ字形及びＴ字形の直角多角形領域を最少数の矩形領域に分解することができる。したがって、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を最少量の矩形領域に分割することができ、これを、たとえば、フロアプランデータをＰＤＥＦに出力する際に使用する場合には、ＰＤＥＦデータ量を最少とすることができる。
【００３０】
本発明中、第７の発明は、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域をコンピュータによって複数の矩形領域に分割する直角多角形領域分割プログラムを記録した記録媒体であって、直角多角形領域の最左端の垂直辺を、抽出すべき矩形領域の左辺として認識し、抽出すべき矩形領域の左辺と一致する線分を仮想する工程と、前記線分を含む上下方向を観察しながら、前記線分の一部又は全体が直角多角形領域の外部に食み出さない限り、前記線分を右方向に走査し、前記線分の上下方向に横Ｔ字形を構成する垂直辺を検出した時は、その時の前記線分の位置に抽出すべき矩形領域の右辺があるものとして抽出すべき矩形領域を抽出する工程とを実行するプログラムを含んでいるというものである。
【００３１】
第７の発明によれば、第１の発明を実行し、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を従来例の場合よりも少ない数又は最少数の矩形領域に分割することができ、これを、たとえば、フロアプランデータをＰＤＥＦに出力する際に使用する場合には、ＰＤＥＦデータ量を従来例の場合よりも少なく又は最少とすることができる。
【００３２】
本発明中、第８の発明は、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域をコンピュータによって複数の矩形領域に分割する直角多角形領域分割プログラムを記録した記録媒体であって、直角多角形領域の最左端の垂直辺を、抽出すべき矩形領域の左辺として認識し、抽出すべき矩形領域の左辺と一致する線分を仮想する工程と、前記線分を含む上下方向を観察しながら、前記線分の上下方向に横Ｔ字形を構成する垂直辺を検出しない限り、前記線分を右方向に走査し、前記線分の一部又は全体が直角多角形領域の外部に食み出した場合には、食み出す前の前記線分の位置に抽出すべき矩形領域の右辺があるものとして抽出すべき矩形領域を抽出する工程とを実行するプログラムを含んでいるというものである。
【００３３】
第８の発明によれば、第２の発明を実行し、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を従来例の場合よりも少ない数又は最少数の矩形領域に分割することができ、これを、たとえば、フロアプランデータをＰＤＥＦに出力する際に使用する場合には、ＰＤＥＦデータ量を従来例の場合よりも少なく又は最少とすることができる。
【００３４】
本発明中、第９の発明は、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域をコンピュータによって複数の矩形領域に分割する直角多角形領域分割プログラムを記録した記録媒体であって、直角多角形領域の最左端の垂直辺を、抽出すべき矩形領域の左辺として認識し、抽出すべき矩形領域の左辺と一致する線分を仮想する工程と、前記線分を含む上下方向を観察しながら、前記線分の一部又は全体が直角多角形領域の外部に食み出さない限り、前記線分を右方向に走査し、前記線分の上下方向に横Ｔ字形を構成する垂直辺を検出した時は、その時の前記線分の位置に抽出すべき矩形領域の右辺があるものとして抽出すべき矩形領域を抽出する工程と、前記線分を含む上下方向を観察しながら、前記線分の上下方向に横Ｔ字形を構成する垂直辺を検出しない限り、前記線分を右方向に走査し、前記線分の一部又は全体が直角多角形領域の外部に食み出した場合には、食み出す前の前記線分の位置に抽出すべき矩形領域の右辺があるものとして抽出すべき矩形領域を抽出する工程とを実行するプログラムを含んでいるというものである。
【００３５】
第９の発明によれば、第３の発明を実行し、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を最少量の矩形領域に分割することができ、これを、たとえば、フロアプランデータをＰＤＥＦに出力する際に使用する場合には、ＰＤＥＦデータ量を最少とすることができる。
【００３６】
本発明中、第１０の発明は、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域をコンピュータによって複数の矩形領域に分割する直角多角形領域分割プログラムを記録した記録媒体であって、直角多角形領域の最右端の垂直辺を、抽出すべき矩形領域の右辺として認識し、抽出すべき矩形領域の右辺と一致する線分を仮想する工程と、前記線分を含む上下方向を観察しながら、前記線分の一部又は全体が直角多角形領域の外部に食み出さない限り、前記線分を左方向に走査し、前記線分の上下方向に横Ｔ字形を構成する垂直辺を検出した時は、その時の前記線分の位置に抽出すべき矩形領域の左辺があるものとして抽出すべき矩形領域を抽出する工程とを実行するプログラムを含んでいるというものである。
【００３７】
第１０の発明によれば、第４の発明を実行し、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を従来例の場合よりも少ない数又は最少数の矩形領域に分割することができ、これを、たとえば、フロアプランデータをＰＤＥＦに出力する際に使用する場合には、ＰＤＥＦデータ量を従来例の場合よりも少なく又は最少とすることができる。
【００３８】
本発明中、第１１の発明は、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域をコンピュータによって複数の矩形領域に分割する直角多角形領域分割プログラムを記録した記録媒体であって、直角多角形領域の最右端の垂直辺を、抽出すべき矩形領域の右辺として認識し、抽出すべき矩形領域の右辺と一致する線分を仮想する工程と、前記線分を含む上下方向を観察しながら、前記線分の上下方向に横Ｔ字形を構成する垂直辺を検出しない限り、前記線分を左方向に走査し、前記線分の一部又は全体が直角多角形領域の外部に食み出した場合には、食み出す前の前記線分の位置に抽出すべき矩形領域の左辺があるものとして抽出すべき矩形領域を抽出する工程とを実行するプログラムを含んでいるというものである。
【００３９】
第１１の発明によれば、第５の発明を実行し、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を従来例の場合よりも少ない数又は最少数の矩形領域に分割することができ、これを、たとえば、フロアプランデータをＰＤＥＦに出力する際に使用する場合には、ＰＤＥＦデータ量を従来例の場合よりも少なく又は最少とすることができる。
【００４０】
本発明中、第１２の発明は、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域をコンピュータによって複数の矩形領域に分割する直角多角形領域分割プログラムを記録した記録媒体であって、直角多角形領域の最右端の垂直辺を、抽出すべき矩形領域の右辺として認識し、抽出すべき矩形領域の右辺と一致する線分を仮想する工程と、前記線分を含む上下方向を観察しながら、前記線分の一部又は全体が直角多角形領域の外部に食み出さない限り、前記線分を左方向に走査し、前記線分の上下方向に横Ｔ字形を構成する垂直辺を検出した時は、その時の前記線分の位置に抽出すべき矩形領域の左辺があるものとして抽出すべき矩形領域を抽出する工程と、前記線分を含む上下方向を観察しながら、前記線分の上下方向に横Ｔ字形を構成する垂直辺を検出しない限り、前記線分を左方向に走査し、前記線分の一部又は全体が直角多角形領域の外部に食み出した場合には、食み出す前の前記線分の位置に抽出すべき矩形領域の左辺があるものとして抽出すべき矩形領域を抽出する工程とを実行するプログラムを含んでいるというものである。
【００４１】
第１２の発明によれば、第６の発明を実行し、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を最少量の矩形領域に分割することができ、これを、たとえば、フロアプランデータをＰＤＥＦに出力する際に使用する場合には、ＰＤＥＦデータ量を最少とすることができる。
【００４２】
本発明中、第１３の発明は、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を複数の矩形領域に分割する直角多角形領域分割装置であって、直角多角形領域の最左端の垂直辺を、抽出すべき矩形領域の左辺として認識し、抽出すべき矩形領域の左辺と一致する線分を仮想する工程と、前記線分を含む上下方向を観察しながら、前記線分の一部又は全体が直角多角形領域の外部に食み出さない限り、前記線分を右方向に走査し、前記線分の上下方向に横Ｔ字形を構成する垂直辺を検出した時は、その時の前記線分の位置に抽出すべき矩形領域の右辺があるものとして抽出すべき矩形領域を抽出する工程とを実行する手段を有しているというものである。
【００４３】
第１３の発明によれば、第１の発明を実行し、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を従来例の場合よりも少ない数又は最少数の矩形領域に分割することができ、これを、たとえば、フロアプランデータをＰＤＥＦに出力する際に使用する場合には、ＰＤＥＦデータ量を従来例の場合よりも少なく又は最少とすることができる。
【００４４】
本発明中、第１４の発明は、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を複数の矩形領域に分割する直角多角形領域分割装置であって、直角多角形領域の最左端の垂直辺を、抽出すべき矩形領域の左辺として認識し、抽出すべき矩形領域の左辺と一致する線分を仮想する工程と、前記線分を含む上下方向を観察しながら、前記線分の上下方向に横Ｔ字形を構成する垂直辺を検出しない限り、前記線分を右方向に走査し、前記線分の一部又は全体が直角多角形領域の外部に食み出した場合には、食み出す前の前記線分の位置に抽出すべき矩形領域の右辺があるものとして抽出すべき矩形領域を抽出する工程とを実行する手段を有しているというものである。
【００４５】
第１４の発明によれば、第２の発明を実行し、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を従来例の場合よりも少ない数又は最少数の矩形領域に分割することができ、これを、たとえば、フロアプランデータをＰＤＥＦに出力する際に使用する場合には、ＰＤＥＦデータ量を従来例の場合よりも少なく又は最少とすることができる。
【００４６】
本発明中、第１５の発明は、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を複数の矩形領域に分割する直角多角形領域分割装置であって、直角多角形領域の最左端の垂直辺を、抽出すべき矩形領域の左辺として認識し、抽出すべき矩形領域の左辺と一致する線分を仮想する工程と、前記線分を含む上下方向を観察しながら、前記線分の一部又は全体が直角多角形領域の外部に食み出さない限り、前記線分を右方向に走査し、前記線分の上下方向に横Ｔ字形を構成する垂直辺を検出した時は、その時の前記線分の位置に抽出すべき矩形領域の右辺があるものとして抽出すべき矩形領域を抽出する工程と、前記線分を含む上下方向を観察しながら、前記線分の上下方向に横Ｔ字形を構成する垂直辺を検出しない限り、前記線分を右方向に走査し、前記線分の一部又は全体が直角多角形領域の外部に食み出した場合には、食み出す前の前記線分の位置に抽出すべき矩形領域の右辺があるものとして抽出すべき矩形領域を抽出する工程とを実行する手段を有しているというものである。
【００４７】
第１５の発明によれば、第３の発明を実行し、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を最少量の矩形領域に分割することができ、これを、たとえば、フロアプランデータをＰＤＥＦに出力する際に使用する場合には、ＰＤＥＦデータ量を最少とすることができる。
【００４８】
本発明中、第１６の発明は、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を複数の矩形領域に分割する直角多角形領域分割装置であって、直角多角形領域の最右端の垂直辺を、抽出すべき矩形領域の右辺として認識し、抽出すべき矩形領域の右辺と一致する線分を仮想する工程と、前記線分を含む上下方向を観察しながら、前記線分の一部又は全体が直角多角形領域の外部に食み出さない限り、前記線分を左方向に走査し、前記線分の上下方向に横Ｔ字形を構成する垂直辺を検出した時は、その時の前記線分の位置に抽出すべき矩形領域の左辺があるものとして抽出すべき矩形領域を抽出する工程とを実行する手段を有しているというものである。
【００４９】
第１６の発明によれば、第４の発明を実行し、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を従来例の場合よりも少ない数又は最少数の矩形領域に分割することができ、これを、たとえば、フロアプランデータをＰＤＥＦに出力する際に使用する場合には、ＰＤＥＦデータ量を従来例の場合よりも少なく又は最少とすることができる。
【００５０】
本発明中、第１７の発明は、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を複数の矩形領域に分割する直角多角形領域分割装置であって、直角多角形領域の最右端の垂直辺を、抽出すべき矩形領域の右辺として認識し、抽出すべき矩形領域の右辺と一致する線分を仮想する工程と、前記線分を含む上下方向を観察しながら、前記線分の上下方向に横Ｔ字形を構成する垂直辺を検出しない限り、前記線分を左方向に走査し、前記線分の一部又は全体が直角多角形領域の外部に食み出した場合には、食み出す前の前記線分の位置に抽出すべき矩形領域の左辺があるものとして抽出すべき矩形領域を抽出する工程とを実行する手段を有しているというものである。
【００５１】
第１７の発明によれば、第５の発明を実行し、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を従来例の場合よりも少ない数又は最少数の矩形領域に分割することができ、これを、たとえば、フロアプランデータをＰＤＥＦに出力する際に使用する場合には、ＰＤＥＦデータ量を従来例の場合よりも少なく又は最少とすることができる。
【００５２】
本発明中、第１８の発明は、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を複数の矩形領域に分割する直角多角形領域分割装置であって、直角多角形領域の最右端の垂直辺を、抽出すべき矩形領域の右辺として認識し、抽出すべき矩形領域の右辺と一致する線分を仮想する工程と、前記線分を含む上下方向を観察しながら、前記線分の一部又は全体が直角多角形領域の外部に食み出さない限り、前記線分を左方向に走査し、前記線分の上下方向に横Ｔ字形を構成する垂直辺を検出した時は、その時の前記線分の位置に抽出すべき矩形領域の左辺があるものとして抽出すべき矩形領域を抽出する工程と、前記線分を含む上下方向を観察しながら、前記線分の上下方向に横Ｔ字形を構成する垂直辺を検出しない限り、前記線分を左方向に走査し、前記線分の一部又は全体が直角多角形領域の外部に食み出した場合には、食み出す前の前記線分の位置に抽出すべき矩形領域の左辺があるものとして抽出すべき矩形領域を抽出する工程とを実行する手段を有しているというものである。
【００５３】
第１８の発明によれば、第６の発明を実行し、フロアプランにより集積回路のレイアウト面に発生した直角多角形領域を最少量の矩形領域に分割することができ、これを、たとえば、フロアプランデータをＰＤＥＦに出力する際に使用する場合には、ＰＤＥＦデータ量を最少とすることができる。
【００５４】
【発明の実施の形態】
図５〜図１６は本発明の直角多角形領域分割方法の一実施形態を説明するための図である。本発明の直角多角形領域分割方法の一実施形態は、矩形領域抽出工程で発生する矩形領域は直角多角形領域として扱うことを前提とし、後述する工程Ａ１→後述する工程Ａ２→抽出した矩形領域の位置データのＰＤＥＦへの出力→抽出した矩形領域の削除、又は、後述する工程Ａ１→後述する工程Ａ３→抽出した矩形領域の位置データのＰＤＥＦへの出力→抽出した矩形領域の削除を繰り返して行うというものである。
【００５５】
工程Ａ１は、分割対象の直角多角形領域の最左端の垂直辺を、抽出すべき矩形領域の左辺として認識し、抽出すべき矩形領域の左辺と一致する線分ＸＹを仮想する工程である。
【００５６】
工程Ａ２は、線分ＸＹを含む上下方向を観察しながら、線分ＸＹの一部又は全体が直角多角形領域の外部に食み出さない限り、線分ＸＹを右方向に走査し、線分ＸＹの上下方向に横Ｔ字形を構成する垂直辺を検出した時は、その時の線分ＸＹの位置に抽出すべき矩形領域の右辺があるものとして抽出すべき矩形領域を抽出する工程である。
【００５７】
工程Ａ３は、線分ＸＹを含む上下方向を観察しながら、線分ＸＹの上下方向に横Ｔ字形を構成する垂直辺を検出しない限り、線分ＸＹを右方向に走査し、線分ＸＹの一部又は全体が直角多角形領域の外部に食み出した場合には、食み出す前の線分ＸＹの位置に抽出すべき矩形領域の右辺があるものとして抽出すべき矩形領域を抽出する工程である。
【００５８】
たとえば、図５（Ａ）に示すような直角多角形領域３２を複数の矩形領域に分割する場合には、まず、図５（Ｂ）に示すように、最左端の垂直辺３３、３４のうち、たとえば、垂直辺３３を抽出すべき矩形領域の左辺として認識し、垂直辺３３に一致する線分ＸＹを仮想する（工程Ａ１）。
【００５９】
そして、線分ＸＹを含む上下方向を観察しながら、線分ＸＹを右方向に走査する。このようにすると、走査中に、線分ＸＹの上下方向に横Ｔ字形を構成する垂直辺を検出することなく、かつ、線分ＸＹは、一部を直角多角形領域３２の外部に食み出すこともなく、図５（Ｃ）に示すように、全体を直角多角形領域３２の外部に食み出すことになる。
【００６０】
したがって、この場合には、図５（Ｄ）に示すように、線分ＸＹの全体が直角多角形領域３２の外部に食み出す前の線分ＸＹの位置に抽出すべき矩形領域の左辺３３に対向する右辺３４があるものとして抽出すべき矩形領域３５を抽出する（工程Ａ３）。
【００６１】
そして、抽出した矩形領域３５の位置データをＰＤＥＦに出力し、図６（Ａ）に示すように、抽出した矩形領域３５を直角多角形領域３２から削除する。このようにすると、直角多角形領域３６及び矩形領域３７が残存することになる。なお、矩形領域３７は、直角多角形領域として扱われることになる。
【００６２】
そこで、次に、図６（Ｂ）に示すように、直角多角形領域３６の最左端の垂直辺３８を抽出すべき矩形領域の左辺として認識し、垂直辺３８に一致する線分ＸＹを仮想する（工程Ａ１）。
【００６３】
そして、線分ＸＹを含む上下方向を観察しながら、線分ＸＹを右方向に走査する。このようにすると、走査中に、線分ＸＹの上下方向に横Ｔ字形を構成する垂直辺を検出することなく、かつ、線分ＸＹは、一部を直角多角形領域３６の外部に食み出すことなく、図６（Ｃ）に示すように、全体を直角多角形領域３６の外部に食み出すことになる。
【００６４】
したがって、この場合には、図６（Ｄ）に示すように、線分ＸＹの全体が直角多角形領域３６の外部に食み出す前の線分ＸＹの位置に抽出すべき矩形領域の左辺３８に対向する右辺３９があるものとして抽出すべき矩形領域４０を抽出する（工程Ａ３）。
【００６５】
そして、抽出した矩形領域４０の位置データをＰＤＥＦに出力し、図７（Ａ）に示すように、抽出した矩形領域４０を直角多角形領域３６から削除する。このようにすると、直角多角形領域３７と、矩形領域４１と、直角多角形領域４２が残存することになる。なお、矩形領域４１は、直角多角形領域として扱われることになる。
【００６６】
そこで、次に、図７（Ｂ）に示すように、直角多角形領域（矩形領域）４１の垂直辺４３を抽出すべき矩形領域の左辺として認識し、垂直辺４３に一致する線分ＸＹを仮想する（工程Ａ１）。
【００６７】
そして、線分ＸＹを含む上下方向を観察しながら、線分ＸＹを右方向に走査する。このようにすると、走査中に、線分ＸＹの上下方向に横Ｔ字形を構成する垂直辺を検出することなく、かつ、線分ＸＹは、一部を直角多角形領域４１の外部に食み出すことなく、図７（Ｃ）に示すように、全体を直角多角形領域４１の外部に食み出すことになる。
【００６８】
したがって、この場合には、図７（Ｄ）に示すように、線分ＸＹの全体が直角多角形領域４１の外部に食み出す前の線分ＸＹの位置に抽出すべき矩形領域の左辺４３に対向する右辺４４があるものとして抽出すべき矩形領域４１を抽出する（工程Ａ３）。
【００６９】
そして、抽出した矩形領域４１の位置データをＰＤＥＦに出力し、図８（Ａ）に示すように、抽出した矩形領域４１を削除する。このようにすると、直角多角形領域３７、４２が残存することになる。
【００７０】
そこで、次に、図８（Ｂ）に示すように、直角多角形領域（矩形領域）３７の垂直辺４５を抽出すべき矩形領域の左辺として認識し、垂直辺４５に一致する線分ＸＹを仮想する（工程Ａ１）。
【００７１】
そして、線分ＸＹを含む上下方向を観察しながら、線分ＸＹを右方向に走査する。このようにすると、走査中に、線分ＸＹの上下方向に横Ｔ字形を構成する垂直辺を検出することなく、かつ、線分ＸＹは、一部を直角多角形領域３７の外部に食み出すことなく、図８（Ｃ）に示すように、全体を直角多角形領域３７の外部に食み出すことになる。
【００７２】
したがって、この場合には、図８（Ｄ）に示すように、線分ＸＹの全体が直角多角形領域３７の外部に食み出す前の線分ＸＹの位置に抽出すべき矩形領域の左辺４５に対向する右辺４６があるものとして抽出すべき矩形領域３７を抽出する（工程Ａ３）。
【００７３】
そして、抽出した矩形領域３７の位置データをＰＤＥＦに出力し、図９（Ａ）に示すように、抽出した矩形領域３７を削除する。このようにすると、直角多角形領域４２が残存することになる。
【００７４】
そこで、次に、図９（Ｂ）に示すように、直角多角形領域４２の垂直辺４７を抽出すべき矩形領域の左辺として認識し、垂直辺４７に一致する線分ＸＹを仮想する（工程Ａ１）。
【００７５】
そして、線分ＸＹを含む上下方向を観察しながら、線分ＸＹを右方向に走査する。このようにすると、線分ＸＹがその一部又は全体を直角多角形領域４２の外部に食み出す前に、図９（Ｃ）に示すように、線分ＸＹの上下方向に横Ｔ字形を構成する垂直辺４８、４９を検出することになる。
【００７６】
したがって、この場合には、図９（Ｄ）に示すように、上下方向に横Ｔ字形を構成する垂直辺４８、４９を検出した時の線分ＸＹの位置に抽出すべき矩形領域の左辺４７に対向する右辺５０があるものとして抽出すべき矩形領域５１を抽出する（工程Ａ２）。
【００７７】
そして、抽出した矩形領域５１の位置データをＰＤＥＦに出力し、図１０（Ａ）に示すように、抽出した矩形領域５１を削除する。このようにすると、矩形領域５２が残存することになる。なお、矩形領域５２は、直角多角形領域として扱われることになる。
【００７８】
そこで、次に、図１０（Ｂ）に示すように、直角多角形領域（矩形領域）５２の垂直辺５３を抽出すべき矩形領域の左辺として認識し、垂直辺５３に一致する線分ＸＹを仮想する（工程Ａ１）。
【００７９】
そして、線分ＸＹを含む上下方向を観察しながら、線分ＸＹを右方向に走査する。このようにすると、走査中に、線分ＸＹの上下方向に横Ｔ字形を構成する垂直辺を検出することなく、かつ、線分ＸＹは、一部を直角多角形領域５２の外部に食み出すことなく、図１０（Ｃ）に示すように、全体を直角多角形領域５２の外部に食み出すことになる。
【００８０】
したがって、この場合には、図１０（Ｄ）に示すように、線分ＸＹの全体が直角多角形領域５２の外部に食み出す前の線分ＸＹの位置に抽出すべき矩形領域の左辺５３に対向する右辺５４があるものとして抽出すべき矩形領域５２を抽出する（工程Ａ３）。
【００８１】
そして、抽出した矩形領域５２の位置データをＰＤＥＦに出力し、抽出した矩形領域５２を削除する。このようにすると、直角多角形領域３２の分割は終了することになる。
【００８２】
このように、図５（Ａ）に示す直角多角形領域３２を分割する際に、本発明の直角多角形領域分割方法の一実施形態を使用すると、図１１に示すように、最少数の６個の矩形領域３５、３７、４０、４１、４７、５２に分割することができる。
【００８３】
また、たとえば、図１２（Ａ）に示すような直角多角形領域５６を複数の矩形領域に分割する場合には、まず、図１２（Ｂ）に示すように、最左端の垂直辺５７を抽出すべき矩形領域の左辺として認識し、垂直辺５７に一致する線分ＸＹを仮想する（工程Ａ１）。
【００８４】
そして、線分ＸＹを含む上下方向を観察しながら、線分ＸＹを右方向に走査する。このようにすると、線分ＸＹがその一部又は全体を直角多角形領域５６の外部に食み出す前に、図１２（Ｃ）に示すように、線分ＸＹの上下方向に横Ｔ字形を構成する垂直辺５８、５９を検出することになる。
【００８５】
したがって、この場合には、図１２（Ｄ）に示すように、上下方向に横Ｔ字形を構成する垂直辺５８、５９を検出した時の線分ＸＹの位置に抽出すべき矩形領域の左辺５７に対向する右辺６０があるものとして抽出すべき矩形領域６１を抽出する（工程Ａ２）。
【００８６】
そして、抽出した矩形領域６１の位置データをＰＤＥＦに出力し、図１３（Ａ）に示すように、抽出した矩形領域６１を削除する。このようにすると、直角多角形領域６２が残存することになる。
【００８７】
そこで、次に、図１３（Ｂ）に示すように、直角多角形領域６２の最左端の垂直辺６３を抽出すべき矩形領域の左辺として認識し、垂直辺６３に一致する線分ＸＹを仮想する（工程Ａ１）。
【００８８】
そして、線分ＸＹを含む上下方向を観察しながら、線分ＸＹを右方向に走査する。このようにすると、線分ＸＹがその一部又は全体を直角多角形領域６２の外部に食み出す前に、図１３（Ｃ）に示すように、線分ＸＹの上下方向に横Ｔ字形を構成する垂直辺６４、６５を検出することになる。
【００８９】
したがって、この場合には、図１３（Ｄ）に示すように、上下方向に横Ｔ字形を構成する垂直辺６４、６５を検出した時の線分ＸＹの位置に抽出すべき矩形領域の左辺６３に対向する右辺６６があるものとして抽出すべき矩形領域６７を抽出する（工程Ａ２）。
【００９０】
そして、抽出した矩形領域６７の位置データをＰＤＥＦに出力し、図１４（Ａ）に示すように、抽出した矩形領域６７を削除する。このようにすると、直角多角形領域６８が残存することになる。
【００９１】
そこで、次に、図１４（Ｂ）に示すように、直角多角形領域６８の最左端の垂直辺６９を抽出すべき矩形領域の左辺として認識し、垂直辺６９に一致する線分ＸＹを仮想する（工程Ａ１）。
【００９２】
そして、線分ＸＹを含む上下方向を観察しながら、線分ＸＹを右方向に走査する。このようにすると、線分ＸＹは、一部又は全体を直角多角形領域６８の外部に食み出すことなく、図１４（Ｃ）線分ＸＹの上下方向に横Ｔ字形を構成する
垂直辺７０、７１を検出することになる。
【００９３】
したがって、この場合には、図１４（Ｄ）に示すように、上下方向に横Ｔ字形を構成する垂直辺７０、７１を検出した時の線分ＸＹの位置に抽出すべき矩形領域の左辺６９に対向する右辺７２があるものとして抽出すべき矩形領域７３を抽出する（工程Ａ２）。
【００９４】
そして、抽出した矩形領域７３の位置データをＰＤＥＦに出力し、図１５（Ａ）に示すように、抽出した矩形領域７３を削除する。このようにすると、矩形領域７４が残存することになる。なお、矩形領域７４は、直角多角形領域として扱われることになる。
【００９５】
そこで、次に、図１５（Ｂ）に示すように、直角多角形領域（矩形領域）７４の垂直辺７５を抽出すべき矩形領域の左辺として認識し、垂直辺７５に一致する線分ＸＹを仮想する（工程Ａ１）。
【００９６】
そして、線分ＸＹを含む上下方向を観察しながら、線分ＸＹを右方向に走査する。このようにすると、走査中に、線分の上下方向に横Ｔ字形を構成する垂直辺を検出することなく、かつ、線分ＸＹは、一部を直角多角形領域７４の外部に食み出すことなく、図１５（Ｃ）に示すように、全体が直角多角形領域７４の外部に食み出すことになる。
【００９７】
したがって、この場合には、図１５（Ｄ）に示すように、線分ＸＹの全体が直角多角形領域７４の外部に食み出す前の線分ＸＹの位置に抽出すべき矩形領域の左辺７４に対向する右辺７６があるものとして抽出すべき矩形領域７４を抽出する（工程Ａ３）。
【００９８】
そして、抽出した矩形領域７４をＰＤＥＦデータとして出力し、抽出した矩形領域７４を削除する。このようにすると、直角多角形領域５６の分割は終了することになる。
【００９９】
このように、図１２（Ａ）に示す直角多角形領域５６を分割する際に、本発明の直角多角形領域分割方法の一実施形態を使用すると、図１６に示すように、最少数の４個の矩形領域６１、６７、７３、７４に分割することができる。
【０１００】
以上のように、本発明の直角多角形領域分割方法の一実施形態によれば、横Ｔ字形は縦方向に分割し、Ｔ字形及び逆Ｔ字形は横方向に分割することができ、更に、図示は省略したが、Ｎ字形は縦方向に分割することができるので、直角多角形領域を最少数の矩形領域に分割することができる。したがって、ＰＤＥＦデータ量を最少とし、ＰＤＥＦデータを入力する他のプログラムの処理スピードを速くし、集積回路の設計期間の短縮化を図ることができる。
【０１０１】
なお、本発明の直角多角形領域分割方法の一実施形態においては、直角多角形領域の最左端の垂直辺を認識し、この垂直辺に一致する線分を仮想し、この線分を右方向に走査するようにした場合について説明したが、この代わりに、直角多角形領域の最右端の垂直辺を認識し、この垂直辺に一致する線分を仮想し、この線分を左方向に走査するようにしても良い。
【０１０２】
【実施例】
図１７〜図２６は本発明の直角多角形領域分割方法の一実施例を示すフローチャート、図２７〜図５６は本発明の直角多角形領域分割方法の一実施例を説明するための図であり、本発明の直角多角形領域分割方法の一実施例においては、図２７に示す直角多角形領域７８及び図４３に示す直角多角形領域７９を分割する場合を例にしながら説明する。
【０１０３】
なお、図２７に示す直角多角形領域７８は、図２８に示す矩形領域８０に図２９に示す矩形領域８１〜８６を重ねることにより発生したものであり、図４３に示す直角多角形領域７９は、図４４に示す矩形領域８７に図４５に示す矩形領域８８〜９１を重ねることにより発生したものである。
【０１０４】
図１７及び図１８は本発明の直角多角形領域分割方法の一実施例におけるメイン処理プログラムを示すフローチャートであり、本発明の直角多角形領域分割方法の一実施例においては、まず、初期処理を行い、二次元配列のＸ座標とＹ座標の最大値（MAX_X, MAX_Y）の設定及び二次元配列上に配置するボックス数（MAX_BOX）の設定を行う（ステップＳ１−１）。
【０１０５】
ここに、図２７に示す直角多角形領域７８を分割対象とする場合には、図３０に示すように、たとえば、MAX_X=14, MAX_Y=12 と設定し、図４３に示す直角多角形領域７９を分割対象とする場合には、図４６に示すように、たとえば、MAX_X=13, MAX_Y=11 と設定する。
【０１０６】
次に、ｉ番目のボックス（BOX[i]）は矩形領域に分割しようとするボックスであることを前提として、i=0 と設定し（ステップＳ１−２）、i<MAX_BOX であるか否かを判断し（ステップＳ１−３）、i<MAX_BOX でなくなるまで、ステップＳ１−３のＹＥＳ以下の処理を繰り返し、i<MAX_BOX でなくなったときは、メイン処理を終了する。
【０１０７】
ステップＳ１−３で i<MAX_BOX と判断した場合には、座標（0,0） から座標（MAX_X,MAX_Y）の範囲の二次元配列 BLACK_BOX[x][y] の全てに後述する二次元配列のチェック処理プログラムに従って「０」をセットし、座標（0,0） から座標（MAX_X,MAX_Y）の範囲の二次元配列 BLACK_BOX[x][y] をクリアする（ステップＳ１−４）。
【０１０８】
即ち、図２７に示す直角多角形領域７８を分割対象としている場合には、図３１に示すように、座標（0,0）から座標（14,12）の範囲の二次元配列 BLACK_BOX[x][y] にすべて「０」をセットし、図４３に示す直角多角形領域７９を分割対象としている場合には、図４７に示すように、座標（0,0）から座標（13,11）の範囲の二次元配列 BLACK_BOX[x][y] にすべて「０」をセットする。
【０１０９】
次に、BOX[i]（現段階では、BOX[0]）の二次元配列に後述する二次元配列のチェック処理プログラムに従って「１」をセットする（ステップＳ１−５）。即ち、図２７に示す直角多角形領域７８を分割対象としている場合には、図３２に示すようにBOX[0]（図２８に示す矩形領域８０）の二次元配列に「１」をセットし、図４３に示す直角多角形領域７９を分割対象としている場合には、図４８に示すようにBOX[0]（図４４に示す矩形領域８７）の二次元配列に「１」をセットする。
【０１１０】
次に、i<MAX_BOX-1 であるか否かを判断し（ステップＳ１−６）、i<MAX_BOX-1 でなくなるまで、即ち、BOX[i] が最後の矩形となるまで、ステップＳ１−６のＹＥＳ以下の処理を行う。
【０１１１】
即ち、ステップＳ１−６で i<MAX_BOX-1 であると判断したときは、ｊ番目のBOX[j]は、BOX[i]（現段階では、BOX[0]）上に重ねるボックスであることを前提として、j=i+1 とする（ステップＳ１−７）。
【０１１２】
次に、j<MAX_BOX（矩形領域の最大数）であるか否かを判断し（ステップＳ１−８）、j<MAX_BOX の場合には、BOX[j] の二次元配列に「０」をセットし（ステップＳ１−９）、続いて、j=j+1 とし（ステップＳ１−１０）、j<MAX_BOX でなくなるまで、ステップＳ１−９、Ｓ１−１０）を繰り返す。
【０１１３】
即ち、図２７に示す直角多角形領域７８を分割対象としている場合には、図３３に示すように、BOX[j=1]（図２９に示す矩形領域８１）の二次元配列に「０」をセットし、続いて、図３４に示すように、BOX[j=2]（矩形領域８２）、BOX[j=3]（矩形領域８３）、BOX[j=4]（矩形領域８４）、BOX[j=5]（矩形領域８５）及び BOX[j=6]（矩形領域８６）の二次元配列に順に「０」をセットする。
【０１１４】
また、図４３に示す直角多角形領域７９を分割対象としている場合には、図４９に示すように、BOX[j=1]（図４５に示す矩形領域８８）の二次元配列に「０」をセットし、続いて、図５０に示すように、BOX[j=2]（矩形領域８９）、BOX[j=3]（矩形領域９０）及び BOX[j=4]（矩形領域９１）の二次元配列に順に「０」をセットする。
【０１１５】
このようにすると、図２７に示す直角多角形領域７８を分割対象としている場合には、図３５に示すように、まず、分割すべき直角多角形領域 BOX[i=0]（図２７に示す直角多角形領域７８）が残存することになり、図４３に示す直角多角形領域７９を分割対象としている場合には、図５１に示すように、分割すべき直角多角形領域 BOX[i=0]（図４３に示す直角多角形領域７９）が残存することになる。
【０１１６】
このようにして、分割すべき直角多角形領域が残存する状態になった場合（ステップＳ１−８でＮＯの場合）には、後述する矩形領域認識処理プログラム及び矩形領域抽出処理プログラムに従って矩形領域認識処理及び矩形領域抽出処理を行い（ステップＳ１−１１）、これが終了した場合には、i=i+1 とし（ステップＳ１−１２）、ステップＳ１−３に戻り、BOX[i=0] を BOX[i=1] として以上の処理を繰り返す。
【０１１７】
なお、ステップＳ１−６でＮＯとなった場合、即ち、BOX[i] が最後の矩形となったときは、重なっている矩形は存在しないので、最後の矩形について、直角多角形領域と見なして矩形領域認識処理及び矩形領域抽出処理を行う（ステップＳ１−１１）。
【０１１８】
図１９は二次元配列のチェック処理（対象としている座標範囲の二次元配列に「０」を入れるか、「１」を入れるかの処理）プログラムを示すフローチャートであり、図１７に示すステップＳ１−４、Ｓ１−５及び図１８に示すステップＳ１−９及び図２６に示すステップＳ５−２に適用される。
【０１１９】
図１９に示す二次元配列のチェック処理プログラムは、チェックする矩形領域の最小Ｘ、Ｙ座標値（x1,y1）と、最大Ｘ、Ｙ座標値（x2,x2）と、check_type（0 or 1）を引き数とし、最左端の二次元配列から最右端の二次元配列に向かって順に、かつ、最小Ｙ座標値の二次元配列から最大Ｙ座標値の二次元配列に向かって順に「０」又は「１」をセットするというものである。
【０１２０】
即ち、まず、i=x1、j=y１ とし（ステップＳ２−１）、続いて、i<=x2 であるか否かを判断し（ステップＳ２−２）、ｉ<=x2 である場合には、i<=y2 であるか否かを判断する（ステップＳ２−３）。
【０１２１】
判断の結果、i<=y2 である場合には、二次元配列 [i][j] にチェックタイプ（「０」又は「１」）をセットする（ステップＳ２−４）。即ち、ステップＳ１−４、Ｓ１−９、Ｓ５−２の場合には二次元配列 [i][j] に「０」をセットし、ステップＳ１−５の場合には二次元配列 [i][j] に「１」をセットする。
【０１２２】
次に、j=j+1 とし（ステップＳ２−５）、j<=y2 でなくなるまで（ステップＳ２−３でＮＯとなるまで）、即ち、対象としているＹ軸方向に並ぶ二次元配列の最上端の二次元配列について処理が終了するまで、ステップＳ２−４、Ｓ２−５を繰り返し、ステップＳ２−３でＮＯと判断された場合には、i=i+1 とし（ステップＳ２−６）、即ち、隣のＹ軸方向に並ぶ二次元配列に移行し、ステップＳ２−２〜Ｓ２−６の動作を繰り返す。
【０１２３】
そして、i<=x2 でなくなるまで（ステップＳ２−２でＮＯとなるまで）、即ち、最右端の二次元配列について処理が終了するまで、ステップＳ２−２のＹＥＳ以下の処理を繰り返す、そして、i<=x2 でなくなった場合、即ち、二次元配列の全てについて処理が終了した場合には、二次元配列のチェック処理を終了する。
【０１２４】
図２０〜図２３は矩形領域認識処理プログラムを示すフローチャートであり、矩形認識処理を行う場合には、検索する範囲の最小Ｘ、Ｙ座標値（x1,y1）と最大Ｘ、Ｙ座標値（x2,y2）を引き数とする。
【０１２５】
まず、i=x1、j=y1 とし（ステップＳ３−１）、i<=x2 であるか否かを判断し（ステップＳ３−２）、i<=x2 でなくなるまで、即ち、i が最大Ｘ座標値（x2）を越えるまで、ステップＳ３−２のＹＥＳ以下の処理を繰り返し、i が最大Ｘ座標値（x2）を越えたときは、矩形領域認識処理を終了する。
【０１２６】
ステップＳ３−２で i<=x2 であると判断した場合には、j<=y2 であるか否かを判断し（ステップＳ３−３）、j<=y2 でなくなるまで、即ち、j が最大Ｙ座標値を越えるまで、ステップＳ３−３のＹＥＳ以下の処理を繰り返し、j が最大Ｙ座標値（y2）を越えたときは、i=i＋1 とし（ステップＳ３−４）、隣りのＹ軸方向に並ぶ二次元配列に移行し、ステップＳ３−２を行う。
【０１２７】
ステップＳ３−３で j<=y2 であると判断した場合には、二次元配列 BLACK_BOX[i][j]==1 であるか否かを判断し（ステップＳ３−５）、即ち、二次元配列 BLACK_BOX[i][j]が矩形領域の一部であるか否かを行い、二次元配列 BLACK_BOX[i][j]==1 でないと判断した場合、即ち、二次元配列 BLACK_BOX[i][j] が矩形領域の一部ではないと判断した場合には、j=j+1 とし（ステップＳ３−６）、即ち、１つ上の二次元配列に移行し、ステップＳ３−３の処理を行う。
【０１２８】
これに対して、ステップＳ３−５で二次元配列 BLACK_BOX[i][j]==1 であると判断した場合、即ち、二次元配列BLACK_BOX[i][j] が矩形領域の一部であると判断した場合には、抽出すべき矩形領域の最小Ｘ座標値（w_x1）及び最大Ｘ座標値（w_x2）にｉを入れ、抽出すべき矩形領域の最小Ｙ座標値（w_y1）及び最大Ｙ座標値（w_y2）にｊを入れる（ステップＳ３−７）。これで、抽出すべき矩形領域の左辺の下端を確認したことになる。
【０１２９】
次に、抽出すべき矩形領域のＹ座標値の範囲を求め、抽出すべき矩形領域の左辺を確認する処理を行う必要があるが、これは、二次元配列 BLACK_BOX[i][j]が二次元配列 BLACK_BOX[i][w_y2+1]==1 で、かつ、w_y2<y2 であるか否かを判断し（ステップＳ３−８）、二次元配列 BLACK_BOX[i][w_y2+1]）==1 で、かつ、w_y2<y2 である場合（ステップＳ３−８でＹＥＳの場合）には、最大Ｙ座標値（w_y2）に１を加え（ステップＳ３−９）、二次元配列 BLACK_BOX[i][w_y2+1]==1 で、かつ、w_y2<y2 ではなくなるまで、即ち、二次元配列 BLACK_BOX[i][w_y2+1]=0 となり、二次元配列 BLACK_BOX[i][j]がＹ軸方向上、非矩形領域に出るまで、ステップＳ３−９を繰り返すことにより行う。
【０１３０】
そして、ステップＳ３−８において、二次元配列 BLACK_BOX[i][j]が二次元配列 BLACK_BOX[i][w_y2+1]==1 で、かつ、w_y2<y2 でなくなったと判断した場合には、抽出すべき矩形領域の仮最小Ｙ座標値 (w_y1-1) を chk_ym に代入し、抽出すべき矩形の仮最大Ｙ座標値（w _y2+1）をchk_ypに代入する（ステップＳ３−１０）。
【０１３１】
次に、k=i+1 とし（ステップＳ３−１１）、即ち、隣りのＹ軸方向に並ぶ二次元配列に移行し、k<=x2 であるか否かを判断し（ステップＳ３−１２）、k<=x2ではないと判断した場合、即ち、BOX[i=0]の最大Ｘ座標値を越えたときは、分割の対象としている直角多角形領域は矩形をしているので、矩形領域抽出処理を行い（ステップＳ３−１３）、他に分割対象とすべき直角多角形領域が存在するか否かを判断するため、ステップＳ３−３に戻る。
【０１３２】
これに対して、ステップＳ３−１２で、k<=x2であると判断した場合には、抽出すべき矩形領域の最大Ｘ座標値（w_x2）にk（ｘ座標値）をセットし（ステップＳ３−１４）、横Ｔ字チェック処理を行う（ステップＳ３−１５）。
【０１３３】
図２４及び図２５は横Ｔ字チェック処理プログラムを示すフローチャートであり、横Ｔ字チェック処理を行う場合には、まず、flag（仮最小Ｙ座標値に変化があった否かを示すフラグ）=0 とし、flag を初期化する（ステップＳ４−１）。
【０１３４】
次に、チェックしているＸ座標で、仮最小Ｙ座標値（chk_ym）における二次元配列 BLACK_BOX[w_x2][chk_ym] の値（=0）又は二次元配列 BLACK_BOX[w_x2][chk_ym+1] の値（=1）に変化がないかを判断する（ステップＳ４−２）。
【０１３５】
そして、変化がない場合には、仮最大Ｙ座標値（chk_yp）における二次元配列 BLACK_BOX[w_x2][chk_yp] の値（=0）又は二次元配列 BLACK_BOX[w_x2][chk_yp-1] の値（=1）に変化がないかを判断し（ステップＳ４−３）、変化がない場合には、check=0 とし(ステップＳ４−４）、横Ｔ字形の存在を確認しないかったことを示し、横Ｔ字チェック処理を終了する。
【０１３６】
これに対して、ステップＳ４−２において、仮最小Ｙ座標値（chk _ym) における二次元配列 BLACK_BOX[w_x2][chk_ym] の値（=0）又はBLACK_BOX[w_x2][chk_ym+1] の値（=1）に変化があったと判断した場合には、m=w_y1 とし（ステップＳ４−５）、二次元配列 BLACK_BOX[w_x2][m]==1 であるか否かを判断する。（ステップＳ４−６）。
【０１３７】
そして、二次元配列 BLACK_BOX[w_x2][m]==1 である場合には、二次元配列 BLACK_BOX[w_x2][m]==1 でなくなるまで、m=m-1 を繰り返し（ステップＳ４−７）、二次元配列 BLACK_BOX[w_x2][m]==0 となったときは、chk_ym=m とし（ステップＳ４−８）、新しい仮最小Ｙ座標値（chk_ym）を設定し、flag=1 とし（ステップＳ４−９）、仮最小Ｙ座標値に変化があったことを示す。
【０１３８】
また、ステップＳ４−３において、仮最大Ｙ座標値（chk_yp）における二次元配列 BLACK_BOX[w_x2][chk_yp] の値（=0）又は二次元配列 BLACK_BOX[w_x2][chk_yp-1] の値（=1）に変化があったと判断した場合には、m=w_y2 とし（ステップＳ４−１０）、二次元配列 BLACK_BOX[w_x2][m]==1 であるか否かを判断する（ステップＳ４−１１）。
【０１３９】
そして、二次元配列 BLACK_BOX[w_x2][m]==1 である場合には、二次元配列 BLACK_BOX[w_x2][m]==1 でなくなるまで、m=m+1 を繰り返し（ステップＳ４−１２）、二次元配列 BLACK_BOX[w_x2][m]==0 となったときは、chk_yp=m とし（ステップＳ４−１３）、新しい仮最大Ｙ座標値（chk_yp）を設定する。
【０１４０】
そして、flag==1 であるか否かを判断し（ステップＳ４−１４）、flag==1 でない場合には、check=0 とし（ステップＳ４−４）、横Ｔ字チェック処理を終了し、flag==1である場合には、仮最小Ｙ座標値（chk_ym）及び仮最大Ｙ座標値（chk_yp）に変化があり、横Ｔ字形を確認したことを示すため、check=1 とし（ステップＳ４−１５）、横Ｔ字チェック処理を終了する。
【０１４１】
このようにして、横Ｔ字チェック処理（ステップＳ３−１５）を終了した場合には、check==0 であるか否かを判断し（ステップＳ３−１６）、check==0 でない場合、即ち、横Ｔ字チェック処理の結果、横Ｔ字を認識した場合には、w_x2=k-1 とし（ステップＳ３−１７）、矩形領域の右辺のＸ座標値を確認し、矩形領域抽出処理を行う（ステップＳ３−１８）。
【０１４２】
これに対して、ステップＳ３−１６において、check==0 であった場合には、l=w_y1とし（ステップＳ３−１９）、l<=w_y2 であるか否かを判断し（ステップＳ３−２０）、l<=w_y2 ではない場合には、k=k+1 とし（ステップＳ３−２１）、ステップＳ３−１２に戻る。即ち、隣りのＹ軸方向に並ぶ二次元配列に移行する。
【０１４３】
これに対して、ステップＳ３−２０において、l<=w_y2 であると判断した場合には、二次元配列 BLACK_BOX[k][l]==1 であるか否かを判断し（ステップＳ３−２２）、二次元配列 BLACK_BOX[k][l]==1 の場合には、l=l+1 とし（ステップＳ３−２３）、ステップＳ３−２０に戻る。
【０１４４】
これに対して、ステップＳ３−２２において、二次元配列 BLACK_BOX[k][l]==1 ではないと判断した場合、即ち、二次元配列 BLACK_BOX[k][l]が直角多角形領域の範囲外のものであると判断した場合には、w_x2=k-1 とし（ステップＳ３−２４）、抽出すべき矩形領域の右辺のＸ座標値を確認し、矩形領域抽出処理を行う（ステップＳ３−２５）を行う。これにより、Ｎ字形、Ｔ字形、逆Ｔ字形の分割処理を行うことができる。
【０１４５】
図２６は矩形領域抽出処理プログラムを示すフローチャートであり、矩形領域抽出処理は、まず、抽出した矩形領域［(w_x1,w_y1),(w_x2,w_y2)］をＰＤＥＦに出力し（ステップＳ５−１）、次に、抽出した矩形領域［(w_x1,w_y1),(w_x2,w_y2)］の二次元配列に「０」をセットし、抽出した矩形領域［(w_x1,w_y1),(w_x2,w_y2)］の二次元配列をクリアし（ステップＳ５−２）、矩形領域抽出処理を終了する。
【０１４６】
ここに、図２７の直角多角形領域７８を分割対象としている場合には、先ず、図３５に示す矩形領域［(w_x1=2,w_y1=2),(w_x2=12,w_y2=3)］９３がステップＳ３−１〜Ｓ３−１２、Ｓ３−１４〜Ｓ３−１６、Ｓ３−１９〜Ｓ３−２３を経て認識され、ステップＳ３−１３による矩形領域抽出処理が行われ、二次元配列の状態は、図３６に示すようになる。
【０１４７】
次に、図３６に示す矩形領域［(w_x1=2,w_y1=9),(w_x2=12,w_y2=10)］９４がステップＳ３−２〜Ｓ３−１２、Ｓ３−１４〜Ｓ３−１６、Ｓ３−１９〜Ｓ３−２３を経て認識され、ステップＳ３−１３による矩形領域抽出処理が行われ、二次元配列の状態は、図３７に示すようになる。
【０１４８】
次に、図３７に示す矩形領域［(w_x1=4,w_y1=7),(w_x2=6,w_y2=8)］９５がステップＳ３−２〜Ｓ３−１２、Ｓ３−１４〜Ｓ３−１６、Ｓ３−１９〜Ｓ３−２４を経て認識され、ステップＳ３−２５による矩形領域抽出処理が行われ、二次元配列の状態は、図３８に示すようになる。
【０１４９】
次に、図３８に示す矩形領域［(w_x1=5,w_y1=4),(w_x2=6,w_y2=4)］９６がステップＳ３−２〜Ｓ３−８、Ｓ３−１０〜Ｓ３−１２、Ｓ３−１４〜Ｓ３−１６、Ｓ３−１９〜Ｓ３−２４を経て認識され、ステップＳ３−２５による矩形領域抽出処理が行われ、二次元配列の状態は、図３９に示すようになる。
【０１５０】
次に、図３９に示す矩形領域［(w_x1=8,w_y1=6),(w_x2=10,w_y2=7)］９７がステップＳ３−２〜Ｓ３−１２、Ｓ３−１４〜Ｓ３−１６、Ｓ３−１９〜Ｓ３−２３、Ｓ３−１７を経て認識され、ステップＳ３−１８による矩形領域抽出処理が行われ、二次元配列の状態は、図４０に示すようになる。
【０１５１】
次に、図４０に示す矩形領域［(w_x1=11,w_y1=4),(w_x2=12,w_y2=8)］９８がステップＳ３−２〜Ｓ３−１２、Ｓ３−１４〜Ｓ３−１６、Ｓ３−１９〜Ｓ３−２３を経て認識され、ステップＳ３−１３による矩形領域抽出処理が行われ、二次元配列の状態は、図４１に示すようになる。
【０１５２】
このように、図２７に示す直角多角形領域７８を分割する場合に、本発明の直角多角形領域分割方法の一実施例を使用すると、図４２に示すように、最少数の６個の矩形領域９３〜９８に分割することができる。
【０１５３】
これに対して、図４３の直角多角形領域７９を分割対象としている場合には、先ず、図５１に示す矩形領域［(w_x1=2,w_y1=5),(w_x2=9,w_y2=6)］１００がステップＳ３−１〜Ｓ３−１２、Ｓ３−１４〜Ｓ３−１６、Ｓ３−１９〜Ｓ３−２３、Ｓ３−１７を経て認識され、ステップＳ３−１８による矩形領域抽出処理が行われ、二次元配列の状態は、図５２に示すようになる。
【０１５４】
次に、図５２に示す矩形領域［(w_x1=5,w_y1=7),(w_x2=9,w_y2=7)］１０１がステップＳ３−２〜Ｓ３−１２、Ｓ３−１４〜Ｓ３−１６、Ｓ３−１９〜Ｓ３−２３、Ｓ３−１７を経て認識され、ステップＳ３−１８による矩形領域抽出処理が行われ、二次元配列の状態は、図５３に示すようになる。
【０１５５】
次に、図５３に示す矩形領域［(w_x1=7,w_y1=4),(w_x2=9,w_y2=4)］１０２がステップＳ３−２〜Ｓ３−１２、Ｓ３−１４〜Ｓ３−１６、Ｓ３−１９〜Ｓ３−２３、Ｓ３−１７を経て認識され、ステップＳ３−１８による矩形領域抽出処理が行われ、二次元配列の状態は、図５４に示すようになる。
【０１５６】
次に、図５４に示す矩形領域［(w_x1=10,w_y1=2),(w_x2=11,w_y2=9)］１０３がステップＳ３−２〜Ｓ３−１２、Ｓ３−１４〜ＳＳ３−１６、Ｓ３−１９〜Ｓ３−２３を経て認識され、ステップＳ３−１３による矩形領域抽出処理が行われ、二次元配列の状態は、図５５に示すようになる。
【０１５７】
このように、図４３に示す直角多角形領域７９を分割する場合に、本発明の直角多角形領域分割方法の一実施例を使用すると、図５６に示すように、最少数である４個の矩形領域１００〜１０３に分割することができる。
【０１５８】
以上のように、本発明の直角多角形領域分割方法の一実施例によれば、横Ｔ字形は縦方向に分割し、Ｔ字形及び逆Ｔ字形は横方向に分割することができ、更に、図示は省略したが、Ｎ字形は縦方向に分割することができるので、直角多角形領域を最少数の矩形領域に分割することができる。したがって、ＰＤＥＦデータ量を最少とし、ＰＤＥＦデータを入力する他のプログラムの処理スピードを速くし、集積回路の設計期間の短縮化を図ることができる。
【０１５９】
また、本発明の直角多角形領域分割方法の一実施例においては、直角多角形領域を構成する最左端の二次元配列から最大Ｘ座標値側に向かって二次元配列の値をチェックしながら、Ｔ字形などを検出するようにした場合について説明したが、この代わりに、直角多角形領域を構成する最右端の二次元配列から最小Ｘ座標値側に向かって二次元配列の値をチェックしながら、Ｔ字形などを検出するようにしても良い。
【０１６０】
図５７は本発明の直角多角形領域分割装置の一実施例の要部を示すブロック回路図であり、図５７中、１０５は入力手段、１０６は表示装置、１０７はＣＰＵ（central processing unit）、１０８はＲＡＭ（radom access memory）である。
【０１６１】
また、１０９は直角多角形領域分割プログラム、即ち、図１７及び図１８に示すメイン処理プログラムと、図１９に示す二次元配列のチェック処理プログラムと、図２０〜図２３に示す矩形領域認識処理プログラムと、図２４及び図２５に示す横Ｔ字チェック処理プログラムと、図２６に示す矩形領域抽出処理プログラムとを含んでいるプログラムを格納する直角多角形領域分割プログラム格納部である。
【０１６２】
また、１１０は分割の対象である直角多角形領域を有する集積回路のフロアプランデータを格納するフロアプランデータ格納部、１１１はＰＤＥＦデータを格納するＰＤＥＦデータ格納部である。
【０１６３】
このように構成された本発明の直角多角形領域分割装置の一実施例においては、ＣＰＵ１０７は、フロアプランデータ格納部１１０に格納されているフロアプランデータに含まれる直角多角形領域を、直角多角形領域分割プログラム格納部１０９に格納されている直角多角形領域分割プログラムに従って矩形領域に分割し、抽出した矩形領域のデータをＰＤＥＦデータ格納部１１１に格納するように動作する。
【０１６４】
したがって、本発明の直角多角形領域分割装置の一実施例によれば、本発明の直角多角形領域分割方法の一実施例を実行して、ＰＤＥＦデータ量を最少とし、ＰＤＥＦデータを入力する他のプログラムの処理スピードを速くし、集積回路の設計期間の短縮化を図ることができる。
【０１６５】
【発明の効果】
以上のように、本発明中、第１、第２、第４、第５、第７、第８、第１０、第１１、第１３、第１４、第１６又は第１７の発明によれば、直角多角形領域を従来例の場合よりも少ない数又は最少数の矩形領域に分割することができ、これを、たとえば、フロアプランデータをＰＤＥＦに出力する際に使用する場合には、ＰＤＥＦデータ量を従来例の場合よりも少なく又は最小とし、ＰＤＥＦデータを入力する他のプログラムの処理スピードを速くし、集積回路の設計期間の短縮化を図ることができる。
【０１６６】
また、本発明中、第３、第６、第９、第１２、第１５又は第１８の発明によれば、直角多角形領域を最少数の矩形領域に分割することができ、これを、たとえば、フロアプランデータをＰＤＥＦに出力する際に使用する場合には、ＰＤＥＦデータ量を従来例の場合よりも少なく又は最小とし、ＰＤＥＦデータを入力する他のプログラムの処理スピードを速くし、集積回路の設計期間の短縮化を図ることができる。
【図面の簡単な説明】
【図１】本発明中、第１の発明を説明するための図である。
【図２】本発明中、第２の発明を説明するための図である。
【図３】本発明中、第４の発明を説明するための図である。
【図４】本発明中、第５の発明を説明するための図である。
【図５】本発明の直角多角形領域分割方法の一実施形態を説明するための図である。
【図６】本発明の直角多角形領域分割方法の一実施形態を説明するための図である。
【図７】本発明の直角多角形領域分割方法の一実施形態を説明するための図である。
【図８】本発明の直角多角形領域分割方法の一実施形態を説明するための図である。
【図９】本発明の直角多角形領域分割方法の一実施形態を説明するための図である。
【図１０】本発明の直角多角形領域分割方法の一実施形態を説明するための図である。
【図１１】本発明の直角多角形領域分割方法の一実施形態を説明するための図である。
【図１２】本発明の直角多角形領域分割方法の一実施形態を説明するための図である。
【図１３】本発明の直角多角形領域分割方法の一実施形態を説明するための図である。
【図１４】本発明の直角多角形領域分割方法の一実施形態を説明するための図である。
【図１５】本発明の直角多角形領域分割方法の一実施形態を説明するための図である。
【図１６】本発明の直角多角形領域分割方法の一実施形態を説明するための図である。
【図１７】本発明の直角多角形領域分割方法の一実施例におけるメイン処理プログラムを示すフローチャートである。
【図１８】本発明の直角多角形領域分割方法の一実施例におけるメイン処理プログラムを示すフローチャートである。
【図１９】本発明の直角多角形領域分割方法の一実施例における二次元配列のチェック処理プログラムを示すフローチャートである。
【図２０】本発明の直角多角形領域分割方法の一実施例における矩形領域認識処理プログラムを示すフローチャートである。
【図２１】本発明の直角多角形領域分割方法の一実施例における矩形領域認識処理プログラムを示すフローチャートである。
【図２２】本発明の直角多角形領域分割方法の一実施例における矩形領域認識処理プログラムを示すフローチャートである。
【図２３】本発明の直角多角形領域分割方法の一実施例における矩形領域認識処理プログラムを示すフローチャートである。
【図２４】本発明の直角多角形領域分割方法の一実施例における横Ｔ字チェック処理プログラムを示すフローチャートである。
【図２５】本発明の直角多角形領域分割方法の一実施例における横Ｔ字チェック処理プログラムを示すフローチャートである。
【図２６】本発明の直角多角形領域分割方法の一実施例における矩形領域抽出処理プログラムを示すフローチャートである。
【図２７】本発明の直角多角形領域分割方法の一実施例を説明するための図である。
【図２８】本発明の直角多角形領域分割方法の一実施例を説明するための図である。
【図２９】本発明の直角多角形領域分割方法の一実施例を説明するための図である。
【図３０】本発明の直角多角形領域分割方法の一実施例を説明するための図である。
【図３１】本発明の直角多角形領域分割方法の一実施例を説明するための図である。
【図３２】本発明の直角多角形領域分割方法の一実施例を説明するための図である。
【図３３】本発明の直角多角形領域分割方法の一実施例を説明するための図である。
【図３４】本発明の直角多角形領域分割方法の一実施例を説明するための図である。
【図３５】本発明の直角多角形領域分割方法の一実施例を説明するための図である。
【図３６】本発明の直角多角形領域分割方法の一実施例を説明するための図である。
【図３７】本発明の直角多角形領域分割方法の一実施例を説明するための図である。
【図３８】本発明の直角多角形領域分割方法の一実施例を説明するための図である。
【図３９】本発明の直角多角形領域分割方法の一実施例を説明するための図である。
【図４０】本発明の直角多角形領域分割方法の一実施例を説明するための図である。
【図４１】本発明の直角多角形領域分割方法の一実施例を説明するための図である。
【図４２】本発明の直角多角形領域分割方法の一実施例を説明するための図である。
【図４３】本発明の直角多角形領域分割方法の一実施例を説明するための図である。
【図４４】本発明の直角多角形領域分割方法の一実施例を説明するための図である。
【図４５】本発明の直角多角形領域分割方法の一実施例を説明するための図である。
【図４６】本発明の直角多角形領域分割方法の一実施例を説明するための図である。
【図４７】本発明の直角多角形領域分割方法の一実施例を説明するための図である。
【図４８】本発明の直角多角形領域分割方法の一実施例を説明するための図である。
【図４９】本発明の直角多角形領域分割方法の一実施例を説明するための図である。
【図５０】本発明の直角多角形領域分割方法の一実施例を説明するための図である。
【図５１】本発明の直角多角形領域分割方法の一実施例を説明するための図である。
【図５２】本発明の直角多角形領域分割方法の一実施例を説明するための図である。
【図５３】本発明の直角多角形領域分割方法の一実施例を説明するための図である。
【図５４】本発明の直角多角形領域分割方法の一実施例を説明するための図である。
【図５５】本発明の直角多角形領域分割方法の一実施例を説明するための図である。
【図５６】本発明の直角多角形領域分割方法の一実施例を説明するための図である。
【図５７】本発明の直角多角形領域分割装置の一実施例の要部を示すブロック回路図である。
【図５８】従来の直角多角形領域分割方法を説明するための図である。
【図５９】従来の直角多角形領域分割方法が有する問題点を説明するための図である。
【図６０】横Ｔ字形、Ｔ字形及び逆Ｔ字形の直角多角形領域の好適な分割方法を説明するための図である。
【図６１】Ｎ字形の直角多角形領域の好適な分割方法を説明するための図である。
【符号の説明】
（図５７）
１０５  入力手段
１０６  表示装置
１０７  ＣＰＵ
１０８  ＲＡＭ
１０９  直角多角形領域分割プログラム格納部
１１０  フロアプランデータ格納部
１１１  ＰＤＥＦデータ格納部
【図１】
0004161418.tif 000002
【図２】
0004161418.tif 000003
【図３】
0004161418.tif 000004
【図４】
0004161418.tif 000005
【図５】
0004161418.tif 000006
【図６】
0004161418.tif 000007
【図７】
0004161418.tif 000008
【図８】
0004161418.tif 000009
【図９】
0004161418.tif 000010
【図１０】
0004161418.tif 000011
【図１１】
0004161418.tif 000012
【図１２】
0004161418.tif 000013
【図１３】
0004161418.tif 000014
【図１４】
0004161418.tif 000015
【図１５】
0004161418.tif 000016
【図１６】
0004161418.tif 000017
【図１７】
0004161418.tif 000018
【図１８】
0004161418.tif 000019
【図１９】
0004161418.tif 000020
【図２０】
0004161418.tif 000021
【図２１】
0004161418.tif 000022
【図２２】
0004161418.tif 000023
【図２３】
0004161418.tif 000024
【図２４】
0004161418.tif 000025
【図２５】
0004161418.tif 000026
【図２６】
0004161418.tif 000027
【図２７】
0004161418.tif 000028
【図２８】
0004161418.tif 000029
【図２９】
0004161418.tif 000030
【図３０】
0004161418.tif 000031
【図３１】
0004161418.tif 000032
【図３２】
0004161418.tif 000033
【図３３】
0004161418.tif 000034
【図３４】
0004161418.tif 000035
【図３５】
0004161418.tif 000036
【図３６】
0004161418.tif 000037
【図３７】
0004161418.tif 000038
【図３８】
0004161418.tif 000039
【図３９】
0004161418.tif 000040
【図４０】
0004161418.tif 000041
【図４１】
0004161418.tif 000042
【図４２】
0004161418.tif 000043
【図４３】
0004161418.tif 000044
【図４４】
0004161418.tif 000045
【図４５】
0004161418.tif 000046
【図４６】
0004161418.tif 000047
【図４７】
0004161418.tif 000048
【図４８】
0004161418.tif 000049
【図４９】
0004161418.tif 000050
【図５０】
0004161418.tif 000051
【図５１】
0004161418.tif 000052
【図５２】
0004161418.tif 000053
【図５３】
0004161418.tif 000054
【図５４】
0004161418.tif 000055
【図５５】
0004161418.tif 000056
【図５６】
0004161418.tif 000057
【図５７】
0004161418.tif 000058
【図５８】
0004161418.tif 000059
【図５９】
0004161418.tif 000060
【図６０】
0004161418.tif 000061
【図６１】
0004161418.tif 000062