(57)【要約】【課題】自由曲面に載るボス形状の抜き勾配体を隙間や重なりなく生成できるし、その際、稜線列の周りのすべての面に対してだけでなく、所望の１つの面にだけ抜き勾配を生成することができる抜き勾配生成方法を提供する。【解決手段】３次元形状の面に抜き勾配を生成する抜き勾配生成方法において、抜き勾配生成対象の３次元形状中から勾配生成対象の対象面に属する１本の稜線などを指定させ（Ｓ１２）、その稜線に連続している稜線を自動的に次々と探索して（Ｓ１３）前記対象面とは別の面を成す閉じた稜線列を構成し（Ｓ１４）、その閉じた稜線列の掃引面に沿って、指定した参照面まで前記対象面だけに勾配を付けた抜き勾配体を生成し（Ｓ１６）、生成した抜き勾配体を指定した面集合で切断し（Ｓ１７）、その結果の抜き勾配体と前記３次元形状との集合演算を行って（Ｓ１９）、前記３次元形状に抜き勾配を生成する構成にした。【選択図】　　　図７
2004038460.tif 000002
【特許請求の範囲】
【請求項１】
３次元形状の面に抜き勾配を生成することができる３次元形状処理装置において、
抜き勾配生成対象の３次元形状中から勾配生成対象の対象面に属する１本の稜線を指定させる稜線指定手段と、
指定された前記稜線に連続している稜線を自動的に順次探索して前記対象面とは別の面を成す閉じた稜線列を構成する稜線列構成手段と、
その閉じた稜線列の掃引面に沿って、指定された参照面まで前記対象面だけに勾配を付けた抜き勾配体を生成する抜き勾配体生成手段と、
生成された抜き勾配体を指定した面集合で切断する切断手段と、
その結果の抜き勾配体と前記３次元形状との集合演算を行って前記３次元形状に抜き勾配を生成する抜き勾配生成手段と、を備えたことを特徴とする３次元形状処理装置。
【請求項２】
３次元形状の面に抜き勾配を生成する抜き勾配生成方法において、抜き勾配生成対象の３次元形状中から勾配生成対象の対象面に属する１本の稜線を指定させ、その稜線に連続している稜線を自動的に順次探索して前記対象面とは別の面を成す閉じた稜線列を構成し、その閉じた稜線列の掃引面に沿って、指定した参照面まで前記対象面だけに勾配を付けた抜き勾配体を生成し、生成した抜き勾配体を指定した面集合で切断し、その結果の抜き勾配体と前記３次元形状との集合演算を行って、前記３次元形状に抜き勾配を生成することを特徴とする抜き勾配生成方法。
【請求項３】
請求項２記載の抜き勾配生成方法において、ボス形状に抜き勾配を生成することを特徴とする抜き勾配生成方法。
【請求項４】
情報処理装置上で実行されるプログラムにおいて、請求項２または請求項３記載の抜き勾配生成方法によった抜き勾配生成を実行させるようにプログラミングされていることを特徴とするプログラム。
【請求項５】
プログラムを記憶した記憶媒体において、請求項４記載のプログラムを記憶したことを特徴とする記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＣＡＤ／ＣＡＭを用いた３次元形状設計や金型の設計などにおける抜き勾配の生成方法に関する。
【０００２】
【従来の技術】
グラフィクス表示装置とコンピュータとを用いたＣＡＤ／ＣＡＭ装置など３次元形状処理装置では、従来より、３次元形状を生成したり、生成されている３次元形状を変形させたり、３次元形状の体積や重心などを計算したり、３次元形状上で様々な判定を行ったりしている。なお、本発明に係わる３次元形状とは、例えば境界表現形式のソリッドモデルデータとして生成された形状を指し、その境界表現形式のソリッドモデルとは、稜線や頂点や面というような要素により３次元空間上に閉じた領域を定義し、中身の詰まった立体を表現したものである。
本発明は、このような３次元形状処理装置などにおいて従来より行われている３次元形状処理の一つである抜き勾配生成方法に関するもので、そのような技術としては、以下のようなものが提案されている。
まず、特開平５−８９２１０号公報に開示された従来技術では、これはプラスチック成形に用いられる金型を設計するＣＡＤ／ＣＡＭ装置に関するもので、抜き勾配をつける線を指定角度分回転移動する抜き勾配線変形において、抜き勾配をつける線上に端点が存在する形状のうち、線分だけではなく、従来変形させていなかった円弧についても抜き勾配線の変形に合わせて連続性などの関係を保つように変形し、その際、抜き勾配線の勾配角度が変更されても対応可能にしている。
また、特開平８−５５１４９号公報に示された従来技術では、曲線と曲面との間に抜き勾配面を生成することを可能にしている。
また、特開平１１−１３４３７８号公報に開示された従来技術では、３次元形状の稜線列に沿った抜き勾配をＣＡＤ／ＣＡＭ装置など３次元形状処理装置を用いて生成する際に、抜き勾配を生成する３次元形状の稜線列、参照面、抜き方向、および抜き勾配などを入力し、それらの入力情報に基づいて抜き勾配体を生成し、その抜き勾配体を用いて集合演算を行うことにより、抜き勾配を生成する。また、特開平１１−１９５０５５号公報に示された従来技術では、３次元形状の等勾配線に沿った抜き勾配をＣＡＤ／ＣＡＭ装置など３次元形状処理装置を用いて生成する際に、抜き勾配を生成する３次元形状の参照面、抜き方向、および抜き勾配などを入力し、等勾配線上の多数の点とその点から次の点へ進む接ベクトルの方向とを求め、それらに基づいてパラメータ空間の補間曲線を求め、その補間曲線をオブジェクト空間へマッピングして等勾配線を生成する。次に、生成した等勾配線に基づいて板状のループを生成し、前記入力した勾配角に従って板状のループから参照面までの抜き勾配体を生成し、３次元形状とその抜き勾配体とを集合演算することにより抜き勾配を生成する。
【０００３】
【発明が解決しようとする課題】
しかしながら、前記した特開平５−８９２１０号公報や特開平８−５５１４９号公報に示された従来技術では、指定した稜線列により構成された面からその稜線列を掃引して抜き勾配体を生成することができないし、特開平１１−１３４３７８号公報や特開平１１−１９５０５５号公報に示された従来技術では、自由曲面上にボス形状が載ったような３次元形状（図３参照）の場合、抜き勾配体が当該３次元形状からはみ出す可能性があり、そのため、抜き勾配をうまく生成することができないという問題がある。
本発明の目的は、第１に、このような従来技術の問題を解決することにあり、具体的には、自由曲面に対するボス形状の抜き勾配を問題なく生成することができる抜き勾配生成方法を提供することにある。第２に、その際、稜線列の周りのすべての面に対して抜き勾配を生成する抜き勾配生成方法だけでなく、１つの面を指定してその面にだけ抜き勾配を生成する抜き勾配生成方法を提供することにある。
【０００４】
【課題を解決するための手段】
前記の課題を解決するために、請求項１記載の発明では、３次元形状の面に抜き勾配を生成することができる３次元形状処理装置において、抜き勾配生成対象の３次元形状中から勾配生成対象の対象面に属する１本の稜線を指定させる稜線指定手段と、指定された前記稜線に連続している稜線を自動的に順次探索して前記対象面とは別の面を成す閉じた稜線列を構成する稜線列構成手段と、その閉じた稜線列の掃引面に沿って、指定された参照面まで前記対象面だけに勾配を付けた抜き勾配体を生成する抜き勾配体生成手段と、生成された抜き勾配体を指定した面集合で切断する切断手段と、その結果の抜き勾配体と前記３次元形状との集合演算を行って前記３次元形状に抜き勾配を生成する抜き勾配生成手段とを備えた。
また、請求項２記載の発明では、３次元形状の面に抜き勾配を生成する抜き勾配生成方法において、抜き勾配生成対象の３次元形状中から勾配生成対象の対象面に属する１本の稜線を指定させ、その稜線に連続している稜線を自動的に順次探索して前記対象面とは別の面を成す閉じた稜線列を構成し、その閉じた稜線列の掃引面に沿って、指定した参照面まで前記対象面だけに勾配を付けた抜き勾配体を生成し、生成した抜き勾配体を指定した面集合で切断し、その結果の抜き勾配体と前記３次元形状との集合演算を行って、前記３次元形状に抜き勾配を生成する構成にした。
また、請求項３記載の発明では、請求項２記載の発明において、ボス形状に抜き勾配を生成する構成にした。
また、請求項４記載の発明では、情報処理装置上で実行されるプログラムにおいて、請求項２または請求項３記載の抜き勾配生成方法によった抜き勾配生成を実行させるようにプログラミングした。
また、請求項５記載の発明では、プログラムを記憶した記憶媒体において、請求項４記載のプログラムを記憶した。
【０００５】
【発明の実施の形態】
以下、図面により本発明の実施の形態を詳細に説明する。
図１は本発明が実施される３次元形状処理システムを実現するコンピュータシステムの構成ブロック図である。図示したように、このコンピュータシステムは、マウスやキーボードを有して各種操作やデータ入力などを行う入力装置１、３次元形状などを表示する表示装置や３次元形状などを印刷するプリンタなどから成る出力装置２、プログラムに従ってこのシステム全体を制御したり抜き勾配生成を含む３次元形状処理を実行するＣＰＵ３、前記プログラムやデータを一時的に記憶するメモリ（例えばＲＡＭ）４、複数の３次元形状の形状データ（３次元形状データ）を含む各種データやプログラムを記憶しておく記憶装置（例えばハードディスク装置）５、着脱可能なＣＤ−ＲＯＭなどを駆動してその中に記憶されている３次元形状データなどを読み込む媒体駆動装置６などを備えている。なお、前記３次元形状データは３次元形状を構成する点や曲線などの幾何形状データとこの幾何形状データの相関関係を示す位相データとから成っている。
【０００６】
図２は、本発明の第１の実施例を示す抜き勾配生成処理の動作フロー図である。以下、図２に従って、図３に示したような３次元形状に対する抜き勾配を生成する第１の実施例の動作を説明する。
まず、ＣＰＵ３が、プログラムに従って、抜き勾配生成の対象となる３次元形状（この例では図３に示した３次元形状）を生成するか、予め生成されて記憶装置５に記憶されている３次元形状データを読み出すかして、その３次元形状を移動または回転などにより空間内の所望の位置に配置・表示する（Ｓ１）。そして、ＣＰＵ３は利用者に対するメッセージを表示させ、表示された３次元形状中でボス形状の一面を構成している稜線列、抜き勾配生成のための参照面、一つまたは複数の自由曲面から成る面集合、抜き方向、および勾配角などをマウスまたはキーボードなどにより入力させる（Ｓ２）。
図２に示した例では、Ｅ１，Ｅ２，Ｅ３，Ｅ４が指定される稜線列、その下方に示しているＸ軸およびＹ軸を含む面が参照面、生成された抜き勾配体が交叉する面が面集合（この例ではｆａｃｅ１，ｆａｃｅ２，ｆａｃｅ３，ｆａｃｅ４）であり、利用者はこれらを画面上でマウスにより指定して入力するのである。なお、複数個存在する可能性がある、作業平面としての参照面は予め登録しておき、参照面を指定させる際、登録されている複数の参照面を図２に示したようにＸＹ軸で表示させ、そのうちの一つを利用者（作業者）にマウスで選択させる。また、勾配角はキーボードにより数値を入力して指定してもよいし、複数の数値を表示させて、その中から選択させてもよい。本発明では、このようにして指定された稜線列と参照面との間に抜き勾配を生成するのである。抜き方向はこの例ではＺ軸としているので、参照面を指定することにより自動的に定まる。抜き方向として、参照面の法線ベクトルを利用してもよい。
【０００７】
続いて、抜き勾配体を生成する（図４参照）（Ｓ３）。それには、まず、指定された稜線列をコピーし、新たに板状のループ（図４の上面）を生成し、指定された前記勾配角に従って、その板状のループから指定された前記参照面までの抜き勾配体を特開平８−５５１４９号公報に示されているような技術を用いて生成する。こうして、図４に示したような、稜線列（上面の４本の稜線）から参照面（図示の例では底面）に向かって拡がる抜き勾配体が生成される。
次に、図５に示したように、生成した抜き勾配体を、指定された前記面集合ｆ１，ｆ２，ｆ３，ｆ４と交叉する面で切断し、面集合の裏側の部分を削除する（Ｓ４）。なお、交叉面の求め方は公知の技術であるので説明を省略する。
さらに、当該３次元形状（図３に示した３次元形状）と一部が切断・削除された抜き勾配体との集合演算によって抜き勾配が生成された３次元形状を生成する（Ｓ５）。当該３次元形状中の前記勾配体対応部分を前記勾配体で置換する集合演算、つまり、図３に示した３次元形状から前記勾配体対応部分を削除する演算と、対応部分が削除された３次元形状と前記勾配体との和集合演算を行うのである。図６に、抜き勾配が生成された３次元形状を示す。
前記のようにして、抜き勾配の生成された３次元形状が出来上がると、ＣＰＵ３はこの形状データを記憶装置５に記憶する（Ｓ６）。
こうして、この実施例によれば、当該３次元形状において、指定した稜線列により構成される面からその稜線列を掃引することにより指定した参照面まで抜き勾配体が生成され、生成された抜き勾配体が当該３次元形状を構成している指定した面集合で切断され、切断された結果として成る抜き勾配体と前記当該３次元形状との集合演算が行われるので、抜き勾配体が当該３次元形状からはみ出すという問題がなくなる。
【０００８】
次に、図７に示した動作フローに従って、本発明の第２の実施例について説明する。なお、この実施例では、ボス形状の周囲のすべての面でなく、一つの面だけに勾配をつける。また、この実施例では、請求項１記載の稜線指定手段が、入力装置１を構成しているマウス、出力装置２を構成している表示装置、ＣＰＵ３、およびプログラムを記憶したメモリ４により実現され、稜線列構成手段、抜き勾配体生成手段、切断手段、および抜き勾配生成手段が、ＣＰＵ３およびプログラムを記憶したメモリ４により実現される。
まず、３次元ＣＡＤシステムなどにより抜き勾配生成の対象となる３次元形状を生成するか、すでに記憶装置５に格納されている３次元形状を読み込み、その３次元形状を移動または回転などにより画面上（空間上）の所望の位置に所望の姿勢で配置・表示する（Ｓ１１）。そして、マウスなどにより、抜き勾配生成処理に係わる２面（２つのＬｏｏｐ：図８に示した例では上面と手前の側面）の境界曲線である１本の稜線、参照面、一つまたは複数の自由曲面から成る面集合、抜き方向、勾配角などの情報を入力する（Ｓ１２）。なお、図８に示した例では、そのような稜線として稜線Ｅ１を指定する。また、図８において、座標軸Ｘ，Ｙは参照面を表し、ｆａｃｅ５，ｆａｃｅ６は面集合を表す。抜き方向は座標軸のＺ軸とする。抜き方向として参照面の法線ベクトルを利用してもよい。
続いて、指定された稜線Ｅ１に連続した稜線を自動的に次々と探索する（Ｓ１３）。なお、この稜線探索の際、複数の稜線に連続する場合、図８に示した面Ｌｏｏｐ（手前の側面）を横切る方向の稜線を優先して選ぶ。また、小さなループになるように稜線を選ぶ。その結果、この例では稜線Ｅ１，Ｅ２，Ｅ３，Ｅ４が選ばれ（図９参照）、一つの閉じた稜線列を構成する（Ｓ１４）。また、閉じた稜線列を構成する稜線のうち、面Ｌｏｏｐ（手前の側面）に属する稜線に対して、指定された勾配角情報を付与し、それ以外の稜線に対しては０度の勾配角を付与する（Ｓ１５）。
【０００９】
次に、閉じた稜線列と指定されている参照面との間に抜き勾配体を生成する（Ｓ１６）。そのため、まず、閉じた稜線列をコピーし、新たに板状のループを生成する。そして、各稜線に付与された勾配角に従って、板状のループから指定された参照面までの抜き勾配体を生成する。図９に、生成された抜き勾配体を示す。なお、前記したように、指定された抜き方向の終点側に稜線列が存在する場合は、参照面へ向かって広げるような抜き勾配体を生成し、指定された抜き方向の始点側に稜線列が存在する場合は参照面へ向かって狭めるような抜き勾配体を生成する。
続いて、生成した抜き勾配体を当該３次元形状の面集合ｆａｃｅ５，ｆａｃｅ６（図８参照）で切断し（図１０参照）（Ｓ１７）、面集合の裏側の部分を削除する（Ｓ１８）。そして、　切断結果である抜き勾配体と当該３次元形状との集合演算によってその３次元形状に抜き勾配を生成する（図１１参照）（Ｓ１９）。
最後に、生成された３次元形状を記憶装置５に記憶する。
こうして、この実施例によれば、自由曲面に対するボス形状の抜き勾配を、稜線列の周りのすべての面に対してでなく、１つの面を指定して生成することができる。
【００１０】
以上、本発明の一実施例について説明したが、説明したような抜き勾配生成方法に従ってプログラミングしたプログラムを例えば着脱可能な記憶媒体に記憶し、その記憶媒体をこれまで本発明によった抜き勾配生成を行うことができなかったパーソナルコンピュータなど情報処理装置に装着することにより、または、そのようなプログラムをネットワークを介してそのような情報処理装置へ転送することにより、その情報処理装置においても本発明によった抜き勾配生成を行うことができる。
【００１１】
【発明の効果】
以上説明したように、本発明によれば、請求項１および請求項２記載の発明では、３次元形状の面に抜き勾配を生成する際、抜き勾配生成対象の３次元形状中から勾配生成対象の対象面に属する１本の稜線が指定され、その稜線に連続している稜線が自動的に次々と探索され、それにより前記対象面とは別の面を成す閉じた稜線列が構成され、その閉じた稜線列の掃引面に沿って、指定された参照面まで前記対象面だけに勾配を付けた抜き勾配体が生成され、生成された抜き勾配体が指定の面集合で切断され、その結果の抜き勾配体と前記３次元形状との集合演算が行われ、それによって前記３次元形状に抜き勾配が生成されるので、自由曲面から成る面集合に載る抜き勾配体を隙間や重なりを生じさせずに生成することができるし、その際、稜線列の周りのすべての面に対して抜き勾配を生成できるばかりでなく、所望の１面にだけ簡単な入力操作で抜き勾配を生成することができる。
また、請求項３記載の発明では、請求項２記載の発明において、ボス形状に抜き勾配を生成する構成であるので、自由曲面から成る面集合に載るボス形状に隙間や重なりを生じさせずに勾配を生成することができるし、その際、稜線列の周りのすべての面に対して抜き勾配を生成できるばかりでなく、所望の１面にだけ簡単な入力操作で抜き勾配を生成することができる。
また、請求項４記載の発明では、請求項２または請求項３記載の抜き勾配生成方法によった抜き勾配生成を実行させるようにプログラミングされたプログラムを情報処理装置上で実行することができるので、情報処理装置を用いて請求項２または請求項３記載の発明の効果を得ることができる。
また、請求項５記載の発明では、請求項４記載のプログラムを着脱可能な記憶媒体に記憶することができるので、その記憶媒体をこれまで請求項２または請求項３記載の発明によった抜き勾配生成を行うことができなかったパーソナルコンピュータなど情報処理装置に装着することにより、その情報処理装置においても請求項２または請求項３記載の発明の効果を得ることができる。
【図面の簡単な説明】
【図１】本発明が実施される３次元形状処理システムを実現するコンピュータシステムの構成ブロック図である。
【図２】本発明の第１の実施例を示す抜き勾配生成方法の動作フロー図である。
【図３】本発明の第１の実施例を示す抜き勾配生成方法の説明図である。
【図４】本発明の第１の実施例を示す抜き勾配生成方法の他の説明図である。
【図５】本発明の第１の実施例を示す抜き勾配生成方法の他の説明図である。
【図６】本発明の第１の実施例を示す抜き勾配生成方法の他の説明図である。
【図７】本発明の第２の実施例を示す抜き勾配生成方法の動作フロー図である。
【図８】本発明の第２の実施例を示す抜き勾配生成方法の説明図である。
【図９】本発明の第２の実施例を示す抜き勾配生成方法の他の説明図である。
【図１０】本発明の第２の実施例を示す抜き勾配生成方法の他の説明図である。
【図１１】本発明の第２の実施例を示す抜き勾配生成方法の他の説明図である。
【符号の説明】
１　入力装置
２　出力装置
３　ＣＰＵ
４　メモリ
５　記憶装置
６　媒体駆動装置
【図１】
2004038460.tif 000003
【図２】
2004038460.tif 000004
【図３】
2004038460.tif 000005
【図４】
2004038460.tif 000006
【図５】
2004038460.tif 000007
【図６】
2004038460.tif 000008
【図７】
2004038460.tif 000009
【図８】
2004038460.tif 000010
【図９】
2004038460.tif 000011
【図１０】
2004038460.tif 000012
【図１１】
2004038460.tif 000013