サンプル点において掃引容積の距離場を再構成する方法
【課題】掃引容積の高精度のモデルを表現し、レンダリングするための空間および時間効率の良い方法を提供する。
【解決手段】プロセッサ上で実行される方法が、サンプル点において物体の距離場を再構成する。物体は経路に沿って或る形状を動かすことによって生成される掃引容積である。形状を形状距離場によって表す。経路をパラメトリック関数によって表す。サンプル点における距離データを求め、距離データはサンプル点における物体の距離場を特徴付ける。経路に沿った形状の最適な配置を定義する最適な1組のパラメータを連続的に求める。形状距離場を最適な配置に変換して、変換された形状距離場を生成する。サンプル点において、変換された形状距離場から距離データを求め、サンプル点において距離場を再構成する。
【解決手段】プロセッサ上で実行される方法が、サンプル点において物体の距離場を再構成する。物体は経路に沿って或る形状を動かすことによって生成される掃引容積である。形状を形状距離場によって表す。経路をパラメトリック関数によって表す。サンプル点における距離データを求め、距離データはサンプル点における物体の距離場を特徴付ける。経路に沿った形状の最適な配置を定義する最適な1組のパラメータを連続的に求める。形状距離場を最適な配置に変換して、変換された形状距離場を生成する。サンプル点において、変換された形状距離場から距離データを求め、サンプル点において距離場を再構成する。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、包括的には距離場を生成することに関し、より詳細には掃引容積の距離場を生成することに関するものである。
[関連特許出願]
以下の特許出願は、すべて関連し、同時に出願され、互いに援用される。
2009年5月19日にFrisken他によって出願された「A Method for Reconstructing a Distance Field of a Swept Volume at a Sample Point」と題するMERL−2172、米国非仮特許出願第12/XXX,XXX号、および、
2009年5月19日にFrisken他によって出願された「A Method for Simulating Numerically Controlled Milling using Adaptively Sampled Distance Fields」と題するMERL−2173、米国非仮特許出願第12/XXX,XXX号。
【背景技術】
【0002】
NCフライス加工
数値制御(NC)フライス加工の工程をシミュレートすることは、コンピュータ支援設計(CAD)およびコンピュータ支援製造(CAM)において根本的に重要である。シミュレーション中に、工作物のコンピュータモデルが、NCフライス加工工具のコンピュータ表現および1組のNCフライス加工工具運動を用いて編集され、フライス加工工程がシミュレートされる。
【0003】
工作物モデルおよび工具表現を、シミュレーション中に可視化して、工作物および工具ホルダのような部品間の潜在的な衝突を検出することができ、シミュレーション後に、工作物の最終的な形状を検証することができる。
【0004】
工作物の最終的な形状は、工具および工具運動の選択によって影響を及ぼされる。これらの運動を制御するための命令が典型的には、コンピュータ支援製造システムを用いて、工作物の所望の最終的な形状のグラフィック表現から生成される。それらの運動は典型的には、準備コード(preparatory code)またはGコードとしても知られている、数値制御プログラミング言語を用いて実現される。以下の標準規格RS274DおよびDIN 66025/ISO 6983を参照されたい。
【0005】
コンピュータ支援製造システムによって生成されるGコードは、所望の形状の正確な複製物を製造しない場合がある。さらに、NC工具の動きは、NCフライス盤のモータによって支配されるが、その速度、運動範囲、ならびに加速および減速能力は限られているため、実際の工具運動は、NC機械命令に厳密には従わない場合がある。
【0006】
工作物の実際の最終的な形状と、工作物の所望の形状との間の不一致は、極めて小さい場合がある。状況によっては、これらの不一致の結果として、工作物の最終的な形状の表面に、サイズが概ね数マイクロメートルの深さおよび幅、数十マイクロメートルの長さにわたる望ましくない溝状の傷(gouge)または欠け目(nick)が生じる可能性がある。
【0007】
典型的には、所望の部品をフライス加工する前に、より軟質で安価な材料から形成される試験工作物をフライス加工することによって、1組のNC機械命令が試験される。その試験工作物の外観検査によって、試験工作物において望ましくない不一致が見つかった場合には、それに応じて、NC機械命令を変更することができる。
【0008】
この手動試験は、時間およびコストがかかる。単一の試験工作物を加工するための時間は、概ね数時間かかる場合があり、許容できる1組のNC機械命令が得られるまでに、何度か繰り返すことが必要な場合がある。したがって、コンピュータを利用したシミュレーションおよびレンダリングを用いて、これらの不一致を試験することが望ましい。しかしながら、概ね1メートルの寸法を有する場合がある工作物に対して、概ね数マイクロメートルの寸法で不一致を検出するために、極めて正確なコンピュータモデルが必要とされる。この発明の目的は、フライス加工シミュレーションのためにそのような高精度のモデルを表現し、レンダリングするための空間および時間効率の良い方法を提供することである。
【0009】
掃引容積
フライス加工中に、本明細書において工具経路と呼ばれる所定の工具運動に従って、工具が工作物に対して動き、工具経路は、工作物に対する工具の相対的な位置、向きおよび他の形状データについての情報を含むことができる。
【0010】
工具が工具経路に沿って動くとき、工具は「掃引容積」を切り出す。フライス加工中に、工具が工具経路に沿って動くとき、掃引容積によって横切られる工作物の部分が除去される。この材料除去は、コンピュータにおいて、空間領域構成法(constructive solid geometry)(CSG)差分演算としてモデル化することができ、その演算によれば、工作物からの掃引容積のCSG減算演算を用いて、工作物のその部分が工作物から除去される。
【0011】
高精度のフライス加工シミュレーションを提供するために、掃引容積の正確な表現を有する必要がある。したがって、この発明の目的は、掃引容積の高精度のモデルを表現し、レンダリングするための空間および時間効率の良い方法を提供することである。
【0012】
本明細書において、一例としてNCフライス加工シミュレーションが用いられるが、掃引容積は、科学、工学、エンターテインメントおよびコンピュータグラフィックスの数多くの分野において用途を有する。いくつかの具体的な用途は、数例を挙げると、コンピュータ支援設計、フリーフォーム設計、コンピュータを利用した製図、アニメーション、立体モデリング、ロボティックス、製造自動化および可視化を含む。以下の説明は、掃引容積の正確な表現が必要とされるか、または望まれるすべての分野に当てはまる。
【0013】
ここでは3次元座標系を重点的に取り扱うが、用語「掃引容積」は、さらに一般的には、N次元座標系に拡張することができる。詳細には、以下の論考は、2次元空間内の経路に沿って動く1次元または2次元の形状によって掃出されるエリアに、またはさらに高次元の空間内の経路または表面にわたって動く形状によって掃出される超体積にも当てはまる。
【0014】
この発明の分野における従来技術の概説から始める。掃引容積研究の重要性および課題の概説が、「Swept Volumes: Foundations,Perspectives,and Applications」(International Journal of Shape Modeling,2006,Abdel−Malek,Blackmore,and Joy)において提示される。彼らは、コンピュータソフトウエアにおいて掃引(sweep)の複雑な数学的定式化を実現するのが難しいことによって、この分野における研究が制限されること、ならびに掃引容積の境界を計算するには難問が未解決であり、より良好な可視化ツール、およびさらに正確な方法が必要とされることを結論として述べている。
【0015】
特許文献1に記述されるように、単純な経路に沿って動く単純な形状の掃引容積は多くの場合に、解析的に表現することができる。しかしながら、それらの方法は、複雑な形状および複雑な工具経路まで一般化しない。
【0016】
いくつかの手法が、多角形の形状の掃引容積を近似する。非特許文献1の場合のようにCSG演算を介して効率的に編集するために、または特許文献2の場合のように効率的に衝突検出するために、多角形の形状のモデルを空間的な階層内に符号化することができる。
【0017】
多角形の物体の掃引容積を近似するための方法が、非特許文献2に記述される。
【0018】
特許文献3は、掃引容積の多角形モデルに関するCSG演算を用いて機械加工をシミュレートするための方法を記述する。その方法では、工作物の境界が1組のセルの中に入れられ、各セルは、そのセルを横切る掃引容積多角形への参照を含む。工作物と特定のセル内の掃引容積多角形との間の交差部分を要求に応じて処理して、狭い対象領域においてフライス加工される表面の高精度のレンダリングを生成することができる。しかしながら、全体モデルを高精度で可視化するには、非常に時間がかかる。さらに、掃引容積の生成および交差部分の処理は記述されない。
【0019】
特許文献4は、物体を多面体として表すことを記述する。その物体は、一連の変換を用いて、離散的な時間ステップにおいて、その経路に沿って配置される。掃引容積の境界に位置する多面体表現の辺および面が各時間ステップにおいて求められ、接続されて、その掃引容積の多面体近似が生成される。
【0020】
これらの多角形法のそれぞれの精度は、物体モデルの多角形表現によって制限される。複雑な工具の曲面を正確に表現するには、数十億もの多角形が必要とされる場合があり、特に曲率半径が小さい場合にはなおさらである。したがって、それらの方法は、精度が限られているか、若しくは掃引容積の高精度のモデルを生成するのに非常な処理時間およびメモリ要件を要するかのいずれか、またはその両方である。さらに、掃引容積を一連の離散的な時間ステップとして近似する方法では、時間ステップ間の精度が限られており、エイリアシングアーティファクトを受けやすい。
【0021】
フライス加工シミュレーションのための別の一般的な表現はZバッファまたはDexel法として知られている。その手法は非特許文献3において記述される。特許文献5は、同じような方法を記述しており、その方法では、工作物が、すべてz方向内にある直線の格子によってモデル化され、フライス加工シミュレーションは、その格子にわたって工具モデルを動かし、その工具によって横切られる工作物を表す線の高さを変更することによって実行される。
【0022】
Dexel法は典型的には、z軸と一致しない方向において特に、分解能が限られるという難点があり、掃引容積の高精度のモデルを生成するのに適していない。
【0023】
Dexel表現はボクセルベース表現に関連する。非特許文献4において、Kaufmanはボクセルベース表現、およびボクセルベース表現をレンダリングし、処理するための方法を記述する。非特許文献5および非特許文献6はいずれも、物体のボクセルベース表現に関するCSG演算を用いてスカルプティング(sculpting)をシミュレートする。
【0024】
2値ボクセルを用いて掃引容積を表現する方法は、特許文献6「Method and Apparatus for Shaping Geometric Shapes」および非特許文献7を含む。これらの方法はいずれも、掃引容積を表すために用いられる最小ボクセルのサイズによって精度が制限される。
【0025】
距離場
特許文献7、特許文献8、特許文献9および特許文献10において記述されるように、距離場が、形状をレンダリングし、編集するための有効な表現である。
【0026】
距離場は陰関数の一形態であり、掃引容積を表現し、レンダリングするために用いられている。非特許文献8は、陰関数に関して掃引容積の包絡線を定義するための理論的基礎を記述した。非特許文献9において、SourinおよびPaskoは、陰表面を用いて掃引容積を表現した。しかしながら、陰表面はレンダリングするのが困難である可能性があり、任意の複雑な工具形状に関して適した陰表現を定義するのは難しい。
【0027】
適応的にサンプリングされる距離場(ADF)は、ディテール指向サンプリング(detail−directed sampling)を用いて、距離場の空間および時間的に効率の良い表現を提供する。ADFは、複数のセルから成る空間的な階層内に距離場を格納する。各セルは距離データと、そのセルに関連する距離場の部分を再構成するための再構成法とを含む。距離データは、距離場の値と、距離場の勾配および偏導関数とを含むことができる。メモリおよび計算を節約するために、セル内の距離場は必要とされるときにのみ再構成することができる。
【0028】
CSG演算を用いて編集をシミュレートするために、ADFを用いることができる。編集されるモデルおよび編集ツールは、距離関数、規則的にサンプリングされる距離場、またはADFとして表すことができる。その編集過程は、たとえば、そのモデルのADFを変更することによって、編集される形状のADFを明示的に生成することができる。代替的には、編集される形状は、複合ADFとして暗黙的に表すことができる。複合ADFは、そのモデルの距離場および編集ツールと、編集ツールのためのCSG減算演算子のような、距離場に対応する演算子と、格納された距離場をレンダリングまたは他の処理中に要求に応じて合成する距離場再構成法とを格納する。
【0029】
特許文献8は、工具が曲線経路に沿って動くときに、工具の外形に対応する掃引容積を用いてADFを編集するための方法を記述する。その方法は、サンプル点から経路までの距離を求め、その後、工具外形を用いて、工具の表面までの距離を求める。しかしながら、その方法は、球対称でない形状のための距離場の正確な表現を提供しないため、高精度のモデル化に適していない。
【0030】
各ADFセル内の距離場を再構成するために用いられる再構成法は、セルごとに規定することができ、鋭い端および角のようなセル内の表面特徴に特化することができる。特化した再構成法を用いて、そのような特徴付近のADF表現の精度を改善することができる。
【0031】
非特許文献10において、Kobbelt、Botsch、SchwanekeおよびSeidelは、従来のサンプリングされた距離場表現の精度を改善する代替の方法を記述した。その方法では、形状境界と、正のx、yおよびz方向にあるサンプリング格子との間の最も近い交差部分までの対応するx、yおよびz距離が各サンプル点において格納される。その方法は、マーチングキューブの修正版を用いて、サンプリングされたデータからさらに正確な表面モデルを再構成するために用いることができる。
【0032】
非特許文献11において、Huang、Li、CrawfisおよびLuは、従来のサンプルリングされる距離場表現を増やして、物体境界および物体のオフセット表面をさらに正確に再構成できるようにした。規則的にまたは適応的にサンプリングされる距離場を用いることができる。物体境界または内部オフセット表面に影響を及ぼす場合がある多角形への参照が各セル内に格納され、それにより、多角形表面モデルまでの距離を正確に計算できるようにする。しかしながら、レンダリングされる表面は点モデルを用いて再構成およびレンダリングされ、点モデル内の点は、レンダリングされる表面を含むセルの中央に位置する。したがって、最終的な表面の精度は、境界セルの分解能によって制限される。
【0033】
掃引容積を表現するために、距離場が用いられてきた。特許文献11は、工具形状および掃引容積の両方を、規則的にサンプリングされる距離場として表す。掃引容積は、工具の規則的にサンプリングされる距離場を、工具経路に沿った1組の離散位置に変換することによって構成される。工具の距離場は、工具位置ごとに掃引容積の各サンプル点において再構成され、各サンプル点において、再構成された距離のCSG結合が実行される。掃引容積の表面の三角形モデルが、マーチングキューブを用いて再構成される。非特許文献12を参照されたい。掃引容積の精度は、工具の規則的にサンプリングされる距離場および掃引容積の分解能によって、さらには工具経路の離散的なサンプリングによって制限される。
【0034】
非特許文献13において、Kim、Varadhan、LinおよびManochaは、複雑な物体の掃引容積を近似するための手法を記述した。その手法では、複雑な物体が多角形近似を用いて近似される。その近似における多角形への符号なし距離が規則的な格子上で計算され、その後、後処理されて符号付き距離が求められる。サンプリングされる距離場の等値面を再構成して、掃引容積の境界を求める。その手法では、精度は、表面要素の多角形近似によって、且つ距離格子の分解能によって制限される。
【0035】
上記の方法はいずれも、任意の形状の高精度の掃引容積を表すために必要とされる分解能を提供することができない。これらの方法は、形状および掃引容積の表現の空間分解能によって、且つ工具運動を近似するための工具経路の離散的なサンプリングによって制限される。
【0036】
非特許文献9において、Sourin and Paskoは工具および掃引容積の陰表現を用いて、曲面の正確な表現を提供し、工具経路をサンプリングすることに起因するアーティファクトを低減しようと試みた。掃引容積の陰表現は、工具経路に沿った離散的な1組のN個のサンプリングされる時刻t0、t1、・・・、tN−1に対応する、工具経路に沿った離散的な1組の点に変換される工具の陰表現のCSG結合と定義される。
【0037】
その手法において、1つのサンプル点における掃引容積の陰関数の値は、「離散的に」近似される。最初に、工具の陰表現が、経路に沿ったN個のサンプリングされる時刻t0、t1、・・・、tN−1に対応する1組の位置に変換され、そのサンプル点において数値計算され、位置ごとにサンプリングされた値が求められる。工具がそのサンプル点に最も近いときに、工具経路に沿った最適な時間を挟む一対のサンプリングされる時刻tiおよびti+1が求められ、1)サンプリングされる時刻tiおよびti+1に対応する一対のサンプリングされた値が混合されるか、または(2)サンプリングされる時刻tiおよびti+1を混合して、最適な時刻tの近似値が計算され、工具の陰表現がtに対応する工具経路に沿った点に変換され、工具の変換された陰表現がサンプル点において数値計算される。
【0038】
その手法における計算の大部分は、変換された陰関数を経路に沿った時間ごとに数値計算することに費やされる。各サンプル点における陰関数の値は離散的に数値計算されるため、掃引容積を正確に近似するには、Nが非常に大きいことが要求される。したがって、工具の変換された陰表現は、サンプル点ごとに何度も数値計算されなければならない。その方法は、掃引容積の高精度モデルを提供することができるが、非常に時間がかかり、実際には広く採用されていない。
【先行技術文献】
【特許文献】
【0039】
【特許文献1】米国特許第4,833,617号明細書
【特許文献2】米国特許第6,099,573号明細書
【特許文献3】米国特許第6,862,560号明細書
【特許文献4】米国特許第6,993,461号明細書
【特許文献5】米国特許第7,149,668号明細書
【特許文献6】米国特許第6,044,306号明細書
【特許文献7】米国特許第6,396,492号明細書
【特許文献8】米国特許第6,724,393号明細書
【特許文献9】米国特許第6,826,024号明細書
【特許文献10】米国特許第7,042,458号明細書
【特許文献11】米国特許第5,542,036号明細書
【非特許文献】
【0040】
【非特許文献1】Butcher著「Interactive CSG」(Proceedings,Technical Sketches,SIGGRAPH,1999)
【非特許文献2】AbramsおよびAllen著「Computing Swept Volumes」(Journal of Visualization and Animation,2000)
【非特許文献3】van Hook著「Real−time Shaded NC Milling Display」(Proceedings,SIGGRAPH 1986)
【非特許文献4】Kaufman著「Volume Visualization」(IEEE Computer Society Press,1991)
【非特許文献5】GalyeanおよびHughes著「Sculpting:an Interactive Volumetric Modeling Technique」(Proceedings,SIGGRAPH 1991)
【非特許文献6】WangおよびKaufman著「Volume Sculpting:」(Proceedings,SIGGRAPH 1995)
【非特許文献7】ErdimおよびIlies著「Octree−based Boundary Evaluation for General Sweeps」(Proceedings,TMCE,2008)
【非特許文献8】MartinおよびStephenson著「Sweeping of Three Dimensional Objects」(Computer Aided Design,20(4),1990)
【非特許文献9】SourinおよびPasko著「Function Representation for Sweeping by a Moving Solid」(Proceedings,Solid Modeling,1995)
【非特許文献10】Kobbelt,Botsch,SchwanekeおよびSeidel著「Feature sensitive surface extraction from volume data」(Proceedings,SIGGRAPH 2001)
【非特許文献11】Huang,Li,CrawfisおよびLu著「Complete Distance Field Representation」(Proceedings,IEEE Visualization,2001)
【非特許文献12】LorensenおよびCline著「Marching Cubes: A high resolution 3D surface construction algorithm」(Computer Graphics,Vol. 21,Nr. 4,July 1987)
【非特許文献13】Kim,Varadhan,LinおよびManocha著「Fast Swept Volume Approximation of Complex Polyhedral Models」(Proceedings,Shape Modeling,2003)
【発明の概要】
【発明が解決しようとする課題】
【0041】
したがって、その精度が形状表現、または工具経路の離散的なサンプリングによって制限されない、任意の経路に沿って任意の形状を動かすことによって生成される掃引容積の高精度の表現を生成するための空間および時間効率の良い方法が必要とされている。さらに、概ね1メートルの寸法を有する工作物において、概ね数マイクロメートルのサイズを有する望ましくない特徴物を表現することができる空間および時間効率の良いNCフライス加工シミュレーションシステムが必要とされている。
【課題を解決するための手段】
【0042】
サンプル点において物体の距離場を再構成する方法が提供され、物体は、経路に沿って或る形状を動かすことによって生成される掃引容積である。本方法はプロセッサ上で実行される。形状は、形状距離場によって表される。経路はパラメトリック関数によって表される。
【0043】
サンプル点における距離データが求められ、距離データは、サンプル点における物体の距離場を特徴付ける。経路に沿った形状の最適な配置を定義する最適な1組のパラメータが連続的に求められる。
【0044】
形状距離場を最適な配置に変換して、変換された形状距離場を生成する。サンプル点において、変換された形状距離場から距離データを求め、サンプル点において距離場を再構成する。
【発明の効果】
【0045】
この発明によれば、掃引容積の高精度のモデルを表現し、レンダリングするための空間および時間効率の良い方法を提供することができる。
【図面の簡単な説明】
【0046】
【図1】この発明の実施の形態1による、NCフライス盤、ならびにNCフライス加工をシミュレートするためのシステムおよび方法のフロー図である。
【図2A】フライス加工のために用いられる典型的な工具、および或る経路に沿ってそのような工具を動かすことによって行なわれる工作物における典型的な編集の図である。
【図2B】曲線経路に沿って2D形状を掃引することによって求められる掃引容積の概略図である。
【図3A】工具の直線経路の図である。
【図3B】工具軸が経路に沿って変化する、工具の弧状経路の図である。
【図3C】工具の曲線経路の図である。
【図4】この発明の実施の形態1による、1組のGコードまたはNC機械命令を用いて或る工具形状による工作物のフライス加工をシミュレートするための方法のフロー図である。
【図5】サンプル点において或る形状の掃引容積の距離場を再構成するための方法のブロック図である。
【図6A】掃引容積を離散的に近似するための従来技術の方法の図である。
【図6B】この発明の実施の形態1による、掃引容積の距離場を連続的に求めるための方法の図である。
【図6C】この発明の実施の形態1による、掃引容積の距離場を連続的に求めるための方法の図である。
【図7A】フライス加工のために用いられる典型的な1組の円筒対称の工具の図である。
【図7B】図7Aの工具の2次元断面図である。
【図7C】図7Bの断面の2次元距離場を示す図である。
【図8A】パラメータtによってパラメータ化される経路に沿って動く円筒対称工具の図である。
【図8B】この発明の実施の形態1による、サンプル点を円筒対称工具の断面の2次元距離場上にマッピングする、tによってパラメータ化される曲線の図である。
【発明を実施するための形態】
【0047】
実施の形態1.
システムおよび方法の概説
図1はNCフライス加工システム100、および数値制御(NC)フライス加工シミュレーションシステム150を示す。NCフライス加工システム100では、コンピュータ支援設計(CAD)モデル102がコンピュータ支援製造(CAM)システム104に入力され、CAMシステム104は、NCフライス盤を制御するためのGコード106を生成する。NCフライス加工中に、GコードはNCフライス加工コンソール108に入力され、コンソール108は各Gコードを処理して、対応する1組のNC機械命令110を生成する。NC機械命令はNCコントローラ112に入力され、NCコントローラ112は、工作物をフライス加工するために、工作物118に対して工具116を動かす1組のモータ制御信号114を生成する。
【0048】
シミュレーションシステム150は、入力として、コンピュータ支援製造システム104によって生成されたGコード106、またはNCコンソール108によって生成されるNC機械命令110を取り込むことができる。シミュレーションシステムへの入力はコンピュータプロセッサ152によって読み取られ、コンピュータプロセッサ152は工作物の機械加工をシミュレートし、シミュレートされたモデル154を出力し、モデル154はコンピュータメモリ156に格納することができる。プロセッサ152は、格納されるシミュレートされたモデル154をレンダリングして、レンダリングされた画像158を生成することができ、画像158は表示デバイス160に出力することができる。表示された画像162をコンピュータ支援設計モデル102と比較して、工作物の実際のNCフライス加工を実行する前に、Gコード106またはNC機械命令110を検証することができる。
【0049】
工具
図2Aは、NCフライス加工において用いられる1組の典型的な工具形状202、204、206および208を示す。工具が工作物210に対して動かされるとき、その工具は工作物から材料を削り出す。ここで、工具202、204、206および208は工作物から、表面212、214、216および218に対応する材料を除去する。各工具によって除去される材料の形状は、工具形状、および工作物に対する工具の経路によって決定される。除去される材料の形状は、工具が経路に沿って動くときの、工作物と工具の掃引容積との交差部分である。
【0050】
本明細書においてNCフライス加工シミュレーションを重点的に取り扱うが、掃引容積は、コンピュータ支援設計、フリーフォーム設計、立体モデリング、ロボティックス、製造自動化および可視化を含む、科学、工学、およびコンピュータグラフィックスの多くの分野において用途を有する。
【0051】
掃引容積
図2Bは、経路252に沿って動かされる形状250の掃引容積260を示す。経路252は、形状250の特定の点の位置を時間の関数として規定する。その経路は、その形状の向き256、257および258を時間の関数として規定することができる。また、その経路は、その形状のスケール、またはその形状の任意の変換を時間の関数として規定することもできる。図2Bでは、形状250の元の位置、向きおよび外形が、その形状が経路に沿って動くのに応じて、形状の254の最終的な位置、向きおよび外形に変換される。
【0052】
工具経路
工作物に対する工具の経路は数多くの形において規定することができる。
【0053】
図3Aは直線経路を示しており、工具302が直線304に沿って動かされる。
【0054】
図3Bは円弧状経路を示しており、工具302の先端310が円弧312に沿って動かされ、その経路の終点において、工具の元の軸方向314が最終的な軸方向316に変換される。
【0055】
図3Cは曲線経路を示しており、工具302の先端310が曲線320に沿って動かされる。
【0056】
他の取り得る経路形状は、数例を挙げると、工具を或る点に位置決めすること、ポリラインとして知られている一連の線に沿って工具を動かすこと、渦巻または螺旋形の曲線に沿って工具を動かすこと、2次ベジエ曲線または3次ベジエ曲線、或いは区分的多項式曲線として知られている一連の多項式曲線のような、多項式曲線に沿って工具を動かすことを含む。工作物の形状または材料組成によって影響を及ぼされる経路のような、或る手順によって定義される経路を含む、シミュレートすることができる任意の形の経路を考えることができる。
【0057】
フライス加工シミュレーション
図4は、シミュレーションプロセッサ400を用いて或る工具形状による工作物のフライス加工をシミュレートし、フライス加工される工作物の表現をメモリ440に格納し、レンダリングプロセッサ460を用いて、フライス加工される工作物の表現を表示デバイス480にレンダリングするための方法を示す。
【0058】
工作物形状、および1組の距離場404から複合距離場を再構成するための方法を用いて、複合ADF444が生成され、メモリ440に格納される場合がある。工作物形状は、工作物外形402によって規定され、1組の幾何学的要素を含む。
【0059】
工作物外形の各幾何学的要素は、1組の幾何学的要素距離場を規定する距離場表現に変換される。各幾何学的要素距離場は、数例を挙げると、解析距離関数、陰距離関数、規則的にサンプリングされる距離場、ADF、距離関数の合成、または手順のうちの1つとして表すことができる。
【0060】
フライス加工シミュレーションのための好ましい実施形態では、複合ADFが8分木としてメモリに格納され、8分木は、工作物形状のバウンディングボックスを取り囲む根セルで開始してトップダウンで生成される。工作物外形402内の各特定の幾何学的要素の距離場表現が、複合ADFの葉セルに追加され、葉セルの距離場は特定の幾何学的要素によって影響を及ぼされる。レンダリングおよび処理中に、複合距離場再構成法404を用いて葉セル内の距離場を合成することによって、サンプル点において特定の葉セルの距離場を再構成することができる。
【0061】
種々の合成方法が可能であり、当該技術分野において知られている。好ましい実施形態では、その合成はブール減算演算子を用いて、工具によって掃引される容積による工作物からの材料の除去をシミュレートする。
【0062】
ADF生成中に、規定された最大数よりも多くの距離場を含む葉セルが細分され、各葉セル内の距離場が複雑になるのを制限する。したがって、複合ADFはディテール指向である;少ない距離場によって影響を及ぼされる工作物の領域ほど、大きなセルが生じ、多くの距離場によって影響を及ぼされる工作物の領域ほど、小さなセルが生じる。
【0063】
複合ADFに新たな距離場を追加することによって、或る葉セル内の距離場の関連がなくなる場合には、関連のない距離場は葉セルから除去される。たとえば、工具運動が或る葉セルからすべての材料を除去する場合には、その葉セル内のすべての距離場の関連がなくなる場合があり、その葉セルは距離場を除去され、外部セルとしてラベル付けされる。
【0064】
したがって、新たな工具運動のシミュレーションは、或る葉セルおよびその同胞内の既存の数の距離場を規定された最大数未満に削減することができる。この場合、その葉セルおよび同胞の距離場はその共通の親セル内に配置され、その葉セルおよび同胞は複合ADFから削除される。
【0065】
フライス加工シミュレーション法は、工具形状408から形状距離場412を定義し(410)、形状距離場412は、数例を挙げると、解析距離関数、陰距離関数、規則的にサンプリングされる距離場、ADF、距離関数の合成、または手順のうちの1つとすることができる。
【0066】
NC機械命令414、または代わりに、Gコード416を用いて、工具の運動に対応するパラメトリック経路関数420を定義する。工具運動ごとに、形状距離場12およびパラメトリック経路関数420を用いて、工具運動に対応する工具の掃引容積を表す掃引容積距離場424を定義する(422)。
【0067】
工具運動による工作物のフライス加工をシミュレートするために、複合ADF444が、掃引容積距離場424を用いて編集される(426)。編集中に、掃引容積距離場が、工具の掃引容積によって横切られる複合ADFのセルに追加され、それによって横切られたセル内のADFが再生される。
【0068】
複合ADFを用いて、レンダリングモデル要素から成るレンダリングモデル464を生成することができ(462)、表示デバイス480にレンダリングすることができる(466)。ポイントレンダリング、三角形レンダリングおよびレイトレーシングのような、当該技術分野において知られているレンダリング法を用いて、レンダリングモデル464を生成し、レンダリングすることができる。
【0069】
フライス加工シミュレーションのための代替の実施形態では、各NC機械命令414またはGコード416に対応する各形状距離場、および工作物外形402の各幾何学的要素に対応する各距離場が、対応するNC機械命令、Gコードまたは幾何学的要素のための固有識別子を割り当てられる。
【0070】
レンダリングモデル生成462中に、レンダリングモデル464の各特定の要素が、特定のレンダリングモデル要素に寄与する距離場の固有識別子で注釈を付される。1組のレンダリング属性を各固有識別子と関連付けることによって、レンダリングモデル464は、どの幾何学的要素、およびどの工具経路が工作物の各部分に寄与するかを符号化する。たとえば、固有の色を、特定のGコードの形状距離場の識別子と関連付けることによって、特定のGコードによって影響を及ぼされる工作物の領域を、表示デバイス480上で容易に可視化することができる。
【0071】
代替形態として、不透明度を複合ADF内の特定の距離場内の識別子と関連付けることができる。たとえば、特定の工具運動に対応する特定の距離場に関連付けられるレンダリング要素を透明としてレンダリングすることができる。代替的には、固有識別子をブール演算子と関連付けることができ、そのブール演算子は、対応するレンダリング要素がレンダリングされるべきであるか否かを指示する。他のレンダリング属性を用いて、付加的な効果を生成し、フライス加工される工作物の可視化を支援することができる。
【0072】
距離場は物理的なシミュレーションにおいて数多くの利点を有する。フライス加工シミュレーションのための代替の実施形態は、距離場を用いて、NCフライス加工工程を検証する。たとえば、フライス加工シミュレータ400によって生成される複合ADF444を、コンピュータ支援設計モデル102の距離場表現と比較することができる。その比較は、表示デバイス480を用いて外観検査によって行なうことができる。
【0073】
代替的には、その比較は、複数のサンプル点において、複合ADF444およびコンピュータ支援設計モデル102の距離場をサンプリングし、それらのサンプル点において距離データを比較することによって行なうことができる。代替的には、その比較は、複合ADF444およびコンピュータ支援設計モデル102の距離場の一方を他方から減算することにより差距離場を生成し、差距離場を可視化することによって行なうことができる。
【0074】
また、距離場を用いて、各工具運動によって除去される材料の或る物理的特性を測定することもできる。たとえば、特定の工具運動の場合に、工作物と、特定の工具運動に対応する掃引容積との交差を表す交差距離場を生成することができる。その後、交差距離場を処理して、数例を挙げると、その質量、体積、または慣性モーメントを含む、その特定の工具運動によって除去される材料の種々の特性を求めることができる。
【0075】
掃引容積の距離場の再構成
図5は、プロセッサ500を用いて、サンプル点において掃引容積の距離場を再構成するための方法を示す。形状距離場504およびパラメトリック経路関数506が、上記のように、工具および工具運動を規定する。サンプル点502を与えられると、掃引容積再構成法510は、そのサンプル点502において距離場を再構成するために、そのサンプル点における距離データを求める。その方法は、経路に沿った工具の最適な配置を「連続的に」求める(512)。
【0076】
最適な1組のパラメータを求めている(512)最中に、その経路に沿った工具形状の初期配置を定義する1組の初期パラメータが選択される。好ましい実施形態では、その経路は単一のパラメータtによってパラメータ化され、パラメータtは、その経路に沿って工具が移動する時間に対応し、tの初期値が選択される(514)。形状距離場は、その経路に沿って時刻tにおいて工具の形状を配置するように変換され(516)、サンプル点502において形状距離場が再構成される(518)。
【0077】
サンプル点において再構成される距離データは、数例を挙げると、サンプル点から変換された形状までの距離、距離場の勾配、および距離場の偏導関数を含むことができる。
【0078】
その形状を経路に沿ってサンプリング点に近い配置に動かすために、再構成された距離データを用いて、パラメータ値tを繰返し変更する(520)。その変更は連続的に行われ、すなわち、所定の1組の離散値からtを選択するのではなく、パラメータtは、その経路に沿った形状の位置を改善する方向に任意の量だけ繰返し変更される。その変更は、最適なtが求められるまで、または繰り返しているうちにtの変化がtの或る最小変化未満になるまで、または繰返しの最大数が行なわれるまで繰り返される。最適なtが求められると、その形状は、対応する最適な配置に変換され(530)、変換された形状から距離データが再構成されて(540)、サンプル点502において距離データが求められる(510)。
【0079】
図6Aは、サンプル点601において掃引容積の距離場を離散的に再構成するための従来技術の方法を示す。工具形状602が、1組の離散時刻t0 606、t1 608、・・・、tN−1 610に対応する、工具経路604に沿った離散的な1組の配置に置かれる。
【0080】
サンプリングされる時刻ごとに、P 601から工具形状までの対応するサンプリングされる距離が求められる。この図では、離散時刻ti 612およびti+1 614が最適な時間を挟む。従来技術の方法は、以下のうちの1つとしてP 601から掃引容積までの距離を近似する:1)tiおよびti+1について求められる距離の最小値、2)tiおよびti+1について求められる距離の平均または混合、または3)時刻t*において配置されるときの形状までの距離。ただし、t*はtiおよびti+1の重み付け平均として求められる。
【0081】
図6Bはこの発明の好ましい実施形態を示す。工具形状602は最初に、経路604に沿ってパラメータtに対応する配置に置かれる。工具形状602の距離場からのサンプル点P 601における距離データ622を用いて、その形状を経路に沿って、最適なパラメータt*626によって定義される最適な配置の方向に向かって点t+Δt 624まで連続的に動かす。
【0082】
その好ましい実施形態では、サンプル点における距離場の勾配を用いて、パラメータtを変更する。その変更は、その形状を経路に沿って、距離場の外向きの勾配ベクトルと一致する方向に動かす。この方向は、tにおける経路の接線ベクトルと外向きの勾配ベクトルとのドット積をとることによって求められる。そのドット積が正である場合には、パラメータtを大きくし、そのドット積が負である場合には小さくする。そのドット積の大きさは、tの変化に関する尺度を与える。ドット積が0に近い場合には、その形状は局所的に距離場に直交し、tのための最適値が求められたことを指示する。
【0083】
その経路が2つ以上のパラメータによってパラメータ化される場合には、各経路パラメータに関する偏導関数を用いて、tを変更することができる。
【0084】
連続的に最適化する際の最も大きな難題のうちの1つは、局所的な最適値が存在することによって、連続最適化問題の出力が大域的な最適値であることを保証するのが難しくなることである。工具形状および工具経路が相対的に複雑である場合には、いくつかの局所的な最適値が存在する場合がある。代替の実施形態では、これは、上記の方法への2つの変更を用いて解決される。
【0085】
第1の変更では、tが相対的に少ない数のサンプリングされる時刻においてサンプリングされ、サンプリングされる時刻ごとに距離データが再構成される。サンプリングされる時刻の中から、形状がサンプル点に最も近い時刻tを選択することによって、大域的な最大値に収束する可能性が最も高い点において、最適化問題が初期化される。2つ以上のサンプリングされる時刻が有力である場合には、大域的な最適値を見つけるために、その方法を各有力なサンプリングされる時間において初期化することができる。
【0086】
第2の変更は図6Cに示される。この変更では、最適なt 626を挟むものと判断される開始時刻tS 630および終了時刻tE 634が初期化される。tを変更するための方法が両方の値tS 630およびtE 634を互いに向かって動かすことになる場合には、2つのt値は最適なt値を挟む。その変更を繰り返す度に、サンプル点P 601において、tS 630およびtE 634にそれぞれ対応する距離データ632および636が求められ、tS 630とtE 634との間の最適t値が求められるまで、tSおよびtEのうちの一方または両方が他方に向かって動かされる。
【0087】
好ましい実施形態、ならびに第1の変更および第2の変更に対する種々の代替形態が存在する。パラメータtを連続的に変更するためのさらなる代替方法を、連続最適化の分野に精通している人に知られている技法から導出できることは当業者には理解されたい。
【0088】
複数のサンプル点における距離場の数値計算
複合ADFをレンダリングすること、または物体間の衝突を検出するために複合ADFを使用することのような特定の処理では、複数のサンプル点においてADFの距離場が再構成される必要がある。
【0089】
たとえば、複合ADFを点モデルに変換して、ポイントレンダリングを介して表示デバイスにレンダリングすることができる。点モデルは点として知られている1組の幾何学的基本要素を含み、各点は空間内の位置および1組のレンダリング属性に関連付けられる。レンダリング中に、複数の点が画像位置にマッピングされ、レンダリング属性を用いてその画像にレンダリングされる。レンダリング属性の例をいくつか挙げると、点の色、不透明度、サイズ、反射率特性および法線ベクトルを含む。
【0090】
1組の点における各点は、以下のステップで複合ADFを用いて生成することができる。第1に、その点の位置が複合ADFのセル内の位置に初期化される。第2に、その点の位置において距離場が再構成され、距離場の大きさおよび勾配ベクトルを用いて、その点が複合ADFの表面に向かって動かされる。その点が複合ADFの表面上に存在することを再構成された距離が指示するまで、第2のステップが繰り返される。最後に、距離場が再構成され、その点にレンダリング属性を割り当てるために用いられる。たとえば、その点は、その点の位置に影響を及ぼす距離場の固有識別子に基づいて、色を割り当てられる場合がある。第2の例として、その点は、複合ADFの局所的な勾配に基づいて、法線ベクトルを割り当てられる場合がある。
【0091】
代替的に、レイキャスティングまたはレイトレーシングを用いて複合ADFを画像に変換し、画像として表示デバイスにレンダリングすることができる。レイキャスティング中に、画像内のピクセルごとに1組の光線が複合ADF内に投光される。複合ADFの表面を横切る各光線は、交点において複合ADFから再構成される距離データに従って、1組のレンダリング属性を割り当てられる。各組の光線のレンダリング属性を合成して、画像内の対応する各ピクセルの色が求められる。
【0092】
光線に沿った種々のサンプル点において複合ADFから距離データを再構成することによって、その光線と複合ADFの表面との間の交点が特定される。掃引容積の距離場を再構成するための上記の方法と同じように、交点は、離散的に、または連続的に特定することができる。その交点が離散的に特定される場合には、その表面に最も近いサンプル点の混合を用いて、その交点を近似することができる。交点が連続的に特定される場合には、連続最適化法を用いて、その交点が求められる。
【0093】
また、2つの物体間の衝突を検出するには、距離データが、複数のサンプル点において複合ADFから再構成される必要がある。2つの物体間の衝突は、いくつかの方法で、再構成された距離データから検出することができる。たとえば、物体のうちの一方のための距離データを他方の物体上で1組の表面点として再構成して、第2の物体の第1の物体に対する近接性の指標を求めることができる。その近接性データが、2つの物体が或る最小しきい値距離よりも近いことを指示する場合には、2つの物体間の衝突が検出される。
【0094】
求められた近接性データは、物体のうちの一方の形状を変更するために、または物体のうちの一方の経路を変更して、たとえば、衝突を回避するために、NCフライス加工シミュレーション、ロボット経路計画および製造のような用途において用いることができる。
【0095】
円筒対称工具
上記のように、複合ADFをレンダリングすること、または物体間の衝突を検出するために複合ADFを使用することなどの特定の用途では、複数のサンプル点において複合ADFが再構成される必要がある。再構成法の効率を改善するために、円筒対称の工具形状に合うように好ましい実施形態を変更することができる。
【0096】
円筒対称工具が或る経路に沿って動く場合、サンプル点に対して最も近い工具表面上の点は常に、サンプル点と、その経路に沿った工具のすべての配置のための工具軸とを含む平面上に存在する。工具軸を通る平面は、工具の断面を画定する。工具は円筒対称であるため、断面の形状は、工具軸を通るいかなる平面の場合にも同じである。
【0097】
図7Aは、NCフライス加工のために用いられる典型的な1組の円筒対称工具702、703、704および705を示す。
【0098】
図7Bは、それぞれ、工具702、703、704および705のそれぞれの2次元断面712、713、714および715を示す。
【0099】
図7Cは、2次元断面712、713、714および715をそれぞれ表す2次元距離場722、723、724および725を示す。
【0100】
或るサンプル点から、或る経路に沿って動く円筒対称工具形状までの距離は、工具の断面がそのサンプル点を含む平面内に存在するときに、そのサンプル点から、その断面のエッジまでの距離に等しい。
【0101】
したがって、この発明の代替の実施形態は、サンプル点を工具形状の断面の2次元座標にマッピングし、工具形状の2次元断面を表す2次元距離場から距離データを計算することによって距離データを求める。
【0102】
図8Aは、開始時刻tS 804から終了時刻tE 808まで経路801に沿って動き、任意の時刻t 806を通過する工具802を示す。この発明の好ましい実施形態によれば、サンプル点P 803において距離データを連続的に再構成することができる。
【0103】
代替の実施形態では、図8Bに示されるように、その経路に沿った時刻ごとに、点P 806が、2次元距離場820として表される、工具の断面の2次元座標系にマッピングされる。たとえば、サンプル点P 806は、その経路に沿った時刻tSにおける工具の配置に対応するサンプル点P’(tS)にマッピングされ、その経路に沿った時刻tEにおける工具の配置に対応するサンプル点P’(tE)にマッピングされ、且つその経路に沿った時刻tにおける工具の配置に対応するサンプル点P’(t)にマッピングされる。
【0104】
図8Bに示されるように、1組のマッピングされたサンプル点は、その工具の断面の2次元座標空間内のマッピングされた経路814を定義する。したがって、代替の実施形態では、工具形状が物体に最も近い点は、マッピングされた経路を連続的に探索することによって求められる。
【0105】
数多くのサンプル点が数値計算されることになる場合には、複数の方法において、代替の実施形態の効率をさらに改善することができる。たとえば、マッピングされた経路は複数の区間に分割することができ、各区間は、局所的に滑らかである工具の断面の2次元距離場の領域を通る。言い換えると、距離場が或る経路区間内で少なくともC1連続であるように、その経路が距離場の不連続点を横切る点において、その経路を分割することができる。本明細書において定義されるように、C1連続は、距離場の1次導関数が、その経路区間に沿って連続であることを意味する。代替的には、距離場が、連続最適化法の信頼性および効率を改善するために当該技術分野において知られている特性を、或る経路区間に沿って2次までの範囲で変化させるように、経路を分割することができる。
【0106】
動作環境
この発明は、数多くの汎用または専用コンピューティングシステム環境または構成で動作する。この発明と共に用いるのに適している既知のコンピューティングシステム、環境および/または構成の例は、限定はしないが、パーソナルコンピュータ、サーバコンピュータ、ハンドヘルドデバイスまたはラップトップデバイス、マルチプロセッサまたはマルチコアシステム、グラフィックス処理ユニット(GPU)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、マイクロコントローラベースシステム、ネットワークPC、メインフレームコンピュータ、上記のシステムまたはデバイスのうちの任意のものを含む分散コンピューティング環境など、すなわち、一般的にはプロセッサを含む。モニタまたは他のタイプの表示デバイス160が、上記のシステムのうちの任意のものに接続され、この発明を可視化する(162)ことを可能にする。
【0107】
この発明を、好ましい実施形態の例として説明してきたが、この発明の精神および範囲内で他のさまざまな適合および変更を行えることが理解されるべきである。したがって、この発明の真の精神および範囲内に入るすべての変形および変更を包含することが、添付の特許請求の範囲の目的である。
【技術分野】
【0001】
この発明は、包括的には距離場を生成することに関し、より詳細には掃引容積の距離場を生成することに関するものである。
[関連特許出願]
以下の特許出願は、すべて関連し、同時に出願され、互いに援用される。
2009年5月19日にFrisken他によって出願された「A Method for Reconstructing a Distance Field of a Swept Volume at a Sample Point」と題するMERL−2172、米国非仮特許出願第12/XXX,XXX号、および、
2009年5月19日にFrisken他によって出願された「A Method for Simulating Numerically Controlled Milling using Adaptively Sampled Distance Fields」と題するMERL−2173、米国非仮特許出願第12/XXX,XXX号。
【背景技術】
【0002】
NCフライス加工
数値制御(NC)フライス加工の工程をシミュレートすることは、コンピュータ支援設計(CAD)およびコンピュータ支援製造(CAM)において根本的に重要である。シミュレーション中に、工作物のコンピュータモデルが、NCフライス加工工具のコンピュータ表現および1組のNCフライス加工工具運動を用いて編集され、フライス加工工程がシミュレートされる。
【0003】
工作物モデルおよび工具表現を、シミュレーション中に可視化して、工作物および工具ホルダのような部品間の潜在的な衝突を検出することができ、シミュレーション後に、工作物の最終的な形状を検証することができる。
【0004】
工作物の最終的な形状は、工具および工具運動の選択によって影響を及ぼされる。これらの運動を制御するための命令が典型的には、コンピュータ支援製造システムを用いて、工作物の所望の最終的な形状のグラフィック表現から生成される。それらの運動は典型的には、準備コード(preparatory code)またはGコードとしても知られている、数値制御プログラミング言語を用いて実現される。以下の標準規格RS274DおよびDIN 66025/ISO 6983を参照されたい。
【0005】
コンピュータ支援製造システムによって生成されるGコードは、所望の形状の正確な複製物を製造しない場合がある。さらに、NC工具の動きは、NCフライス盤のモータによって支配されるが、その速度、運動範囲、ならびに加速および減速能力は限られているため、実際の工具運動は、NC機械命令に厳密には従わない場合がある。
【0006】
工作物の実際の最終的な形状と、工作物の所望の形状との間の不一致は、極めて小さい場合がある。状況によっては、これらの不一致の結果として、工作物の最終的な形状の表面に、サイズが概ね数マイクロメートルの深さおよび幅、数十マイクロメートルの長さにわたる望ましくない溝状の傷(gouge)または欠け目(nick)が生じる可能性がある。
【0007】
典型的には、所望の部品をフライス加工する前に、より軟質で安価な材料から形成される試験工作物をフライス加工することによって、1組のNC機械命令が試験される。その試験工作物の外観検査によって、試験工作物において望ましくない不一致が見つかった場合には、それに応じて、NC機械命令を変更することができる。
【0008】
この手動試験は、時間およびコストがかかる。単一の試験工作物を加工するための時間は、概ね数時間かかる場合があり、許容できる1組のNC機械命令が得られるまでに、何度か繰り返すことが必要な場合がある。したがって、コンピュータを利用したシミュレーションおよびレンダリングを用いて、これらの不一致を試験することが望ましい。しかしながら、概ね1メートルの寸法を有する場合がある工作物に対して、概ね数マイクロメートルの寸法で不一致を検出するために、極めて正確なコンピュータモデルが必要とされる。この発明の目的は、フライス加工シミュレーションのためにそのような高精度のモデルを表現し、レンダリングするための空間および時間効率の良い方法を提供することである。
【0009】
掃引容積
フライス加工中に、本明細書において工具経路と呼ばれる所定の工具運動に従って、工具が工作物に対して動き、工具経路は、工作物に対する工具の相対的な位置、向きおよび他の形状データについての情報を含むことができる。
【0010】
工具が工具経路に沿って動くとき、工具は「掃引容積」を切り出す。フライス加工中に、工具が工具経路に沿って動くとき、掃引容積によって横切られる工作物の部分が除去される。この材料除去は、コンピュータにおいて、空間領域構成法(constructive solid geometry)(CSG)差分演算としてモデル化することができ、その演算によれば、工作物からの掃引容積のCSG減算演算を用いて、工作物のその部分が工作物から除去される。
【0011】
高精度のフライス加工シミュレーションを提供するために、掃引容積の正確な表現を有する必要がある。したがって、この発明の目的は、掃引容積の高精度のモデルを表現し、レンダリングするための空間および時間効率の良い方法を提供することである。
【0012】
本明細書において、一例としてNCフライス加工シミュレーションが用いられるが、掃引容積は、科学、工学、エンターテインメントおよびコンピュータグラフィックスの数多くの分野において用途を有する。いくつかの具体的な用途は、数例を挙げると、コンピュータ支援設計、フリーフォーム設計、コンピュータを利用した製図、アニメーション、立体モデリング、ロボティックス、製造自動化および可視化を含む。以下の説明は、掃引容積の正確な表現が必要とされるか、または望まれるすべての分野に当てはまる。
【0013】
ここでは3次元座標系を重点的に取り扱うが、用語「掃引容積」は、さらに一般的には、N次元座標系に拡張することができる。詳細には、以下の論考は、2次元空間内の経路に沿って動く1次元または2次元の形状によって掃出されるエリアに、またはさらに高次元の空間内の経路または表面にわたって動く形状によって掃出される超体積にも当てはまる。
【0014】
この発明の分野における従来技術の概説から始める。掃引容積研究の重要性および課題の概説が、「Swept Volumes: Foundations,Perspectives,and Applications」(International Journal of Shape Modeling,2006,Abdel−Malek,Blackmore,and Joy)において提示される。彼らは、コンピュータソフトウエアにおいて掃引(sweep)の複雑な数学的定式化を実現するのが難しいことによって、この分野における研究が制限されること、ならびに掃引容積の境界を計算するには難問が未解決であり、より良好な可視化ツール、およびさらに正確な方法が必要とされることを結論として述べている。
【0015】
特許文献1に記述されるように、単純な経路に沿って動く単純な形状の掃引容積は多くの場合に、解析的に表現することができる。しかしながら、それらの方法は、複雑な形状および複雑な工具経路まで一般化しない。
【0016】
いくつかの手法が、多角形の形状の掃引容積を近似する。非特許文献1の場合のようにCSG演算を介して効率的に編集するために、または特許文献2の場合のように効率的に衝突検出するために、多角形の形状のモデルを空間的な階層内に符号化することができる。
【0017】
多角形の物体の掃引容積を近似するための方法が、非特許文献2に記述される。
【0018】
特許文献3は、掃引容積の多角形モデルに関するCSG演算を用いて機械加工をシミュレートするための方法を記述する。その方法では、工作物の境界が1組のセルの中に入れられ、各セルは、そのセルを横切る掃引容積多角形への参照を含む。工作物と特定のセル内の掃引容積多角形との間の交差部分を要求に応じて処理して、狭い対象領域においてフライス加工される表面の高精度のレンダリングを生成することができる。しかしながら、全体モデルを高精度で可視化するには、非常に時間がかかる。さらに、掃引容積の生成および交差部分の処理は記述されない。
【0019】
特許文献4は、物体を多面体として表すことを記述する。その物体は、一連の変換を用いて、離散的な時間ステップにおいて、その経路に沿って配置される。掃引容積の境界に位置する多面体表現の辺および面が各時間ステップにおいて求められ、接続されて、その掃引容積の多面体近似が生成される。
【0020】
これらの多角形法のそれぞれの精度は、物体モデルの多角形表現によって制限される。複雑な工具の曲面を正確に表現するには、数十億もの多角形が必要とされる場合があり、特に曲率半径が小さい場合にはなおさらである。したがって、それらの方法は、精度が限られているか、若しくは掃引容積の高精度のモデルを生成するのに非常な処理時間およびメモリ要件を要するかのいずれか、またはその両方である。さらに、掃引容積を一連の離散的な時間ステップとして近似する方法では、時間ステップ間の精度が限られており、エイリアシングアーティファクトを受けやすい。
【0021】
フライス加工シミュレーションのための別の一般的な表現はZバッファまたはDexel法として知られている。その手法は非特許文献3において記述される。特許文献5は、同じような方法を記述しており、その方法では、工作物が、すべてz方向内にある直線の格子によってモデル化され、フライス加工シミュレーションは、その格子にわたって工具モデルを動かし、その工具によって横切られる工作物を表す線の高さを変更することによって実行される。
【0022】
Dexel法は典型的には、z軸と一致しない方向において特に、分解能が限られるという難点があり、掃引容積の高精度のモデルを生成するのに適していない。
【0023】
Dexel表現はボクセルベース表現に関連する。非特許文献4において、Kaufmanはボクセルベース表現、およびボクセルベース表現をレンダリングし、処理するための方法を記述する。非特許文献5および非特許文献6はいずれも、物体のボクセルベース表現に関するCSG演算を用いてスカルプティング(sculpting)をシミュレートする。
【0024】
2値ボクセルを用いて掃引容積を表現する方法は、特許文献6「Method and Apparatus for Shaping Geometric Shapes」および非特許文献7を含む。これらの方法はいずれも、掃引容積を表すために用いられる最小ボクセルのサイズによって精度が制限される。
【0025】
距離場
特許文献7、特許文献8、特許文献9および特許文献10において記述されるように、距離場が、形状をレンダリングし、編集するための有効な表現である。
【0026】
距離場は陰関数の一形態であり、掃引容積を表現し、レンダリングするために用いられている。非特許文献8は、陰関数に関して掃引容積の包絡線を定義するための理論的基礎を記述した。非特許文献9において、SourinおよびPaskoは、陰表面を用いて掃引容積を表現した。しかしながら、陰表面はレンダリングするのが困難である可能性があり、任意の複雑な工具形状に関して適した陰表現を定義するのは難しい。
【0027】
適応的にサンプリングされる距離場(ADF)は、ディテール指向サンプリング(detail−directed sampling)を用いて、距離場の空間および時間的に効率の良い表現を提供する。ADFは、複数のセルから成る空間的な階層内に距離場を格納する。各セルは距離データと、そのセルに関連する距離場の部分を再構成するための再構成法とを含む。距離データは、距離場の値と、距離場の勾配および偏導関数とを含むことができる。メモリおよび計算を節約するために、セル内の距離場は必要とされるときにのみ再構成することができる。
【0028】
CSG演算を用いて編集をシミュレートするために、ADFを用いることができる。編集されるモデルおよび編集ツールは、距離関数、規則的にサンプリングされる距離場、またはADFとして表すことができる。その編集過程は、たとえば、そのモデルのADFを変更することによって、編集される形状のADFを明示的に生成することができる。代替的には、編集される形状は、複合ADFとして暗黙的に表すことができる。複合ADFは、そのモデルの距離場および編集ツールと、編集ツールのためのCSG減算演算子のような、距離場に対応する演算子と、格納された距離場をレンダリングまたは他の処理中に要求に応じて合成する距離場再構成法とを格納する。
【0029】
特許文献8は、工具が曲線経路に沿って動くときに、工具の外形に対応する掃引容積を用いてADFを編集するための方法を記述する。その方法は、サンプル点から経路までの距離を求め、その後、工具外形を用いて、工具の表面までの距離を求める。しかしながら、その方法は、球対称でない形状のための距離場の正確な表現を提供しないため、高精度のモデル化に適していない。
【0030】
各ADFセル内の距離場を再構成するために用いられる再構成法は、セルごとに規定することができ、鋭い端および角のようなセル内の表面特徴に特化することができる。特化した再構成法を用いて、そのような特徴付近のADF表現の精度を改善することができる。
【0031】
非特許文献10において、Kobbelt、Botsch、SchwanekeおよびSeidelは、従来のサンプリングされた距離場表現の精度を改善する代替の方法を記述した。その方法では、形状境界と、正のx、yおよびz方向にあるサンプリング格子との間の最も近い交差部分までの対応するx、yおよびz距離が各サンプル点において格納される。その方法は、マーチングキューブの修正版を用いて、サンプリングされたデータからさらに正確な表面モデルを再構成するために用いることができる。
【0032】
非特許文献11において、Huang、Li、CrawfisおよびLuは、従来のサンプルリングされる距離場表現を増やして、物体境界および物体のオフセット表面をさらに正確に再構成できるようにした。規則的にまたは適応的にサンプリングされる距離場を用いることができる。物体境界または内部オフセット表面に影響を及ぼす場合がある多角形への参照が各セル内に格納され、それにより、多角形表面モデルまでの距離を正確に計算できるようにする。しかしながら、レンダリングされる表面は点モデルを用いて再構成およびレンダリングされ、点モデル内の点は、レンダリングされる表面を含むセルの中央に位置する。したがって、最終的な表面の精度は、境界セルの分解能によって制限される。
【0033】
掃引容積を表現するために、距離場が用いられてきた。特許文献11は、工具形状および掃引容積の両方を、規則的にサンプリングされる距離場として表す。掃引容積は、工具の規則的にサンプリングされる距離場を、工具経路に沿った1組の離散位置に変換することによって構成される。工具の距離場は、工具位置ごとに掃引容積の各サンプル点において再構成され、各サンプル点において、再構成された距離のCSG結合が実行される。掃引容積の表面の三角形モデルが、マーチングキューブを用いて再構成される。非特許文献12を参照されたい。掃引容積の精度は、工具の規則的にサンプリングされる距離場および掃引容積の分解能によって、さらには工具経路の離散的なサンプリングによって制限される。
【0034】
非特許文献13において、Kim、Varadhan、LinおよびManochaは、複雑な物体の掃引容積を近似するための手法を記述した。その手法では、複雑な物体が多角形近似を用いて近似される。その近似における多角形への符号なし距離が規則的な格子上で計算され、その後、後処理されて符号付き距離が求められる。サンプリングされる距離場の等値面を再構成して、掃引容積の境界を求める。その手法では、精度は、表面要素の多角形近似によって、且つ距離格子の分解能によって制限される。
【0035】
上記の方法はいずれも、任意の形状の高精度の掃引容積を表すために必要とされる分解能を提供することができない。これらの方法は、形状および掃引容積の表現の空間分解能によって、且つ工具運動を近似するための工具経路の離散的なサンプリングによって制限される。
【0036】
非特許文献9において、Sourin and Paskoは工具および掃引容積の陰表現を用いて、曲面の正確な表現を提供し、工具経路をサンプリングすることに起因するアーティファクトを低減しようと試みた。掃引容積の陰表現は、工具経路に沿った離散的な1組のN個のサンプリングされる時刻t0、t1、・・・、tN−1に対応する、工具経路に沿った離散的な1組の点に変換される工具の陰表現のCSG結合と定義される。
【0037】
その手法において、1つのサンプル点における掃引容積の陰関数の値は、「離散的に」近似される。最初に、工具の陰表現が、経路に沿ったN個のサンプリングされる時刻t0、t1、・・・、tN−1に対応する1組の位置に変換され、そのサンプル点において数値計算され、位置ごとにサンプリングされた値が求められる。工具がそのサンプル点に最も近いときに、工具経路に沿った最適な時間を挟む一対のサンプリングされる時刻tiおよびti+1が求められ、1)サンプリングされる時刻tiおよびti+1に対応する一対のサンプリングされた値が混合されるか、または(2)サンプリングされる時刻tiおよびti+1を混合して、最適な時刻tの近似値が計算され、工具の陰表現がtに対応する工具経路に沿った点に変換され、工具の変換された陰表現がサンプル点において数値計算される。
【0038】
その手法における計算の大部分は、変換された陰関数を経路に沿った時間ごとに数値計算することに費やされる。各サンプル点における陰関数の値は離散的に数値計算されるため、掃引容積を正確に近似するには、Nが非常に大きいことが要求される。したがって、工具の変換された陰表現は、サンプル点ごとに何度も数値計算されなければならない。その方法は、掃引容積の高精度モデルを提供することができるが、非常に時間がかかり、実際には広く採用されていない。
【先行技術文献】
【特許文献】
【0039】
【特許文献1】米国特許第4,833,617号明細書
【特許文献2】米国特許第6,099,573号明細書
【特許文献3】米国特許第6,862,560号明細書
【特許文献4】米国特許第6,993,461号明細書
【特許文献5】米国特許第7,149,668号明細書
【特許文献6】米国特許第6,044,306号明細書
【特許文献7】米国特許第6,396,492号明細書
【特許文献8】米国特許第6,724,393号明細書
【特許文献9】米国特許第6,826,024号明細書
【特許文献10】米国特許第7,042,458号明細書
【特許文献11】米国特許第5,542,036号明細書
【非特許文献】
【0040】
【非特許文献1】Butcher著「Interactive CSG」(Proceedings,Technical Sketches,SIGGRAPH,1999)
【非特許文献2】AbramsおよびAllen著「Computing Swept Volumes」(Journal of Visualization and Animation,2000)
【非特許文献3】van Hook著「Real−time Shaded NC Milling Display」(Proceedings,SIGGRAPH 1986)
【非特許文献4】Kaufman著「Volume Visualization」(IEEE Computer Society Press,1991)
【非特許文献5】GalyeanおよびHughes著「Sculpting:an Interactive Volumetric Modeling Technique」(Proceedings,SIGGRAPH 1991)
【非特許文献6】WangおよびKaufman著「Volume Sculpting:」(Proceedings,SIGGRAPH 1995)
【非特許文献7】ErdimおよびIlies著「Octree−based Boundary Evaluation for General Sweeps」(Proceedings,TMCE,2008)
【非特許文献8】MartinおよびStephenson著「Sweeping of Three Dimensional Objects」(Computer Aided Design,20(4),1990)
【非特許文献9】SourinおよびPasko著「Function Representation for Sweeping by a Moving Solid」(Proceedings,Solid Modeling,1995)
【非特許文献10】Kobbelt,Botsch,SchwanekeおよびSeidel著「Feature sensitive surface extraction from volume data」(Proceedings,SIGGRAPH 2001)
【非特許文献11】Huang,Li,CrawfisおよびLu著「Complete Distance Field Representation」(Proceedings,IEEE Visualization,2001)
【非特許文献12】LorensenおよびCline著「Marching Cubes: A high resolution 3D surface construction algorithm」(Computer Graphics,Vol. 21,Nr. 4,July 1987)
【非特許文献13】Kim,Varadhan,LinおよびManocha著「Fast Swept Volume Approximation of Complex Polyhedral Models」(Proceedings,Shape Modeling,2003)
【発明の概要】
【発明が解決しようとする課題】
【0041】
したがって、その精度が形状表現、または工具経路の離散的なサンプリングによって制限されない、任意の経路に沿って任意の形状を動かすことによって生成される掃引容積の高精度の表現を生成するための空間および時間効率の良い方法が必要とされている。さらに、概ね1メートルの寸法を有する工作物において、概ね数マイクロメートルのサイズを有する望ましくない特徴物を表現することができる空間および時間効率の良いNCフライス加工シミュレーションシステムが必要とされている。
【課題を解決するための手段】
【0042】
サンプル点において物体の距離場を再構成する方法が提供され、物体は、経路に沿って或る形状を動かすことによって生成される掃引容積である。本方法はプロセッサ上で実行される。形状は、形状距離場によって表される。経路はパラメトリック関数によって表される。
【0043】
サンプル点における距離データが求められ、距離データは、サンプル点における物体の距離場を特徴付ける。経路に沿った形状の最適な配置を定義する最適な1組のパラメータが連続的に求められる。
【0044】
形状距離場を最適な配置に変換して、変換された形状距離場を生成する。サンプル点において、変換された形状距離場から距離データを求め、サンプル点において距離場を再構成する。
【発明の効果】
【0045】
この発明によれば、掃引容積の高精度のモデルを表現し、レンダリングするための空間および時間効率の良い方法を提供することができる。
【図面の簡単な説明】
【0046】
【図1】この発明の実施の形態1による、NCフライス盤、ならびにNCフライス加工をシミュレートするためのシステムおよび方法のフロー図である。
【図2A】フライス加工のために用いられる典型的な工具、および或る経路に沿ってそのような工具を動かすことによって行なわれる工作物における典型的な編集の図である。
【図2B】曲線経路に沿って2D形状を掃引することによって求められる掃引容積の概略図である。
【図3A】工具の直線経路の図である。
【図3B】工具軸が経路に沿って変化する、工具の弧状経路の図である。
【図3C】工具の曲線経路の図である。
【図4】この発明の実施の形態1による、1組のGコードまたはNC機械命令を用いて或る工具形状による工作物のフライス加工をシミュレートするための方法のフロー図である。
【図5】サンプル点において或る形状の掃引容積の距離場を再構成するための方法のブロック図である。
【図6A】掃引容積を離散的に近似するための従来技術の方法の図である。
【図6B】この発明の実施の形態1による、掃引容積の距離場を連続的に求めるための方法の図である。
【図6C】この発明の実施の形態1による、掃引容積の距離場を連続的に求めるための方法の図である。
【図7A】フライス加工のために用いられる典型的な1組の円筒対称の工具の図である。
【図7B】図7Aの工具の2次元断面図である。
【図7C】図7Bの断面の2次元距離場を示す図である。
【図8A】パラメータtによってパラメータ化される経路に沿って動く円筒対称工具の図である。
【図8B】この発明の実施の形態1による、サンプル点を円筒対称工具の断面の2次元距離場上にマッピングする、tによってパラメータ化される曲線の図である。
【発明を実施するための形態】
【0047】
実施の形態1.
システムおよび方法の概説
図1はNCフライス加工システム100、および数値制御(NC)フライス加工シミュレーションシステム150を示す。NCフライス加工システム100では、コンピュータ支援設計(CAD)モデル102がコンピュータ支援製造(CAM)システム104に入力され、CAMシステム104は、NCフライス盤を制御するためのGコード106を生成する。NCフライス加工中に、GコードはNCフライス加工コンソール108に入力され、コンソール108は各Gコードを処理して、対応する1組のNC機械命令110を生成する。NC機械命令はNCコントローラ112に入力され、NCコントローラ112は、工作物をフライス加工するために、工作物118に対して工具116を動かす1組のモータ制御信号114を生成する。
【0048】
シミュレーションシステム150は、入力として、コンピュータ支援製造システム104によって生成されたGコード106、またはNCコンソール108によって生成されるNC機械命令110を取り込むことができる。シミュレーションシステムへの入力はコンピュータプロセッサ152によって読み取られ、コンピュータプロセッサ152は工作物の機械加工をシミュレートし、シミュレートされたモデル154を出力し、モデル154はコンピュータメモリ156に格納することができる。プロセッサ152は、格納されるシミュレートされたモデル154をレンダリングして、レンダリングされた画像158を生成することができ、画像158は表示デバイス160に出力することができる。表示された画像162をコンピュータ支援設計モデル102と比較して、工作物の実際のNCフライス加工を実行する前に、Gコード106またはNC機械命令110を検証することができる。
【0049】
工具
図2Aは、NCフライス加工において用いられる1組の典型的な工具形状202、204、206および208を示す。工具が工作物210に対して動かされるとき、その工具は工作物から材料を削り出す。ここで、工具202、204、206および208は工作物から、表面212、214、216および218に対応する材料を除去する。各工具によって除去される材料の形状は、工具形状、および工作物に対する工具の経路によって決定される。除去される材料の形状は、工具が経路に沿って動くときの、工作物と工具の掃引容積との交差部分である。
【0050】
本明細書においてNCフライス加工シミュレーションを重点的に取り扱うが、掃引容積は、コンピュータ支援設計、フリーフォーム設計、立体モデリング、ロボティックス、製造自動化および可視化を含む、科学、工学、およびコンピュータグラフィックスの多くの分野において用途を有する。
【0051】
掃引容積
図2Bは、経路252に沿って動かされる形状250の掃引容積260を示す。経路252は、形状250の特定の点の位置を時間の関数として規定する。その経路は、その形状の向き256、257および258を時間の関数として規定することができる。また、その経路は、その形状のスケール、またはその形状の任意の変換を時間の関数として規定することもできる。図2Bでは、形状250の元の位置、向きおよび外形が、その形状が経路に沿って動くのに応じて、形状の254の最終的な位置、向きおよび外形に変換される。
【0052】
工具経路
工作物に対する工具の経路は数多くの形において規定することができる。
【0053】
図3Aは直線経路を示しており、工具302が直線304に沿って動かされる。
【0054】
図3Bは円弧状経路を示しており、工具302の先端310が円弧312に沿って動かされ、その経路の終点において、工具の元の軸方向314が最終的な軸方向316に変換される。
【0055】
図3Cは曲線経路を示しており、工具302の先端310が曲線320に沿って動かされる。
【0056】
他の取り得る経路形状は、数例を挙げると、工具を或る点に位置決めすること、ポリラインとして知られている一連の線に沿って工具を動かすこと、渦巻または螺旋形の曲線に沿って工具を動かすこと、2次ベジエ曲線または3次ベジエ曲線、或いは区分的多項式曲線として知られている一連の多項式曲線のような、多項式曲線に沿って工具を動かすことを含む。工作物の形状または材料組成によって影響を及ぼされる経路のような、或る手順によって定義される経路を含む、シミュレートすることができる任意の形の経路を考えることができる。
【0057】
フライス加工シミュレーション
図4は、シミュレーションプロセッサ400を用いて或る工具形状による工作物のフライス加工をシミュレートし、フライス加工される工作物の表現をメモリ440に格納し、レンダリングプロセッサ460を用いて、フライス加工される工作物の表現を表示デバイス480にレンダリングするための方法を示す。
【0058】
工作物形状、および1組の距離場404から複合距離場を再構成するための方法を用いて、複合ADF444が生成され、メモリ440に格納される場合がある。工作物形状は、工作物外形402によって規定され、1組の幾何学的要素を含む。
【0059】
工作物外形の各幾何学的要素は、1組の幾何学的要素距離場を規定する距離場表現に変換される。各幾何学的要素距離場は、数例を挙げると、解析距離関数、陰距離関数、規則的にサンプリングされる距離場、ADF、距離関数の合成、または手順のうちの1つとして表すことができる。
【0060】
フライス加工シミュレーションのための好ましい実施形態では、複合ADFが8分木としてメモリに格納され、8分木は、工作物形状のバウンディングボックスを取り囲む根セルで開始してトップダウンで生成される。工作物外形402内の各特定の幾何学的要素の距離場表現が、複合ADFの葉セルに追加され、葉セルの距離場は特定の幾何学的要素によって影響を及ぼされる。レンダリングおよび処理中に、複合距離場再構成法404を用いて葉セル内の距離場を合成することによって、サンプル点において特定の葉セルの距離場を再構成することができる。
【0061】
種々の合成方法が可能であり、当該技術分野において知られている。好ましい実施形態では、その合成はブール減算演算子を用いて、工具によって掃引される容積による工作物からの材料の除去をシミュレートする。
【0062】
ADF生成中に、規定された最大数よりも多くの距離場を含む葉セルが細分され、各葉セル内の距離場が複雑になるのを制限する。したがって、複合ADFはディテール指向である;少ない距離場によって影響を及ぼされる工作物の領域ほど、大きなセルが生じ、多くの距離場によって影響を及ぼされる工作物の領域ほど、小さなセルが生じる。
【0063】
複合ADFに新たな距離場を追加することによって、或る葉セル内の距離場の関連がなくなる場合には、関連のない距離場は葉セルから除去される。たとえば、工具運動が或る葉セルからすべての材料を除去する場合には、その葉セル内のすべての距離場の関連がなくなる場合があり、その葉セルは距離場を除去され、外部セルとしてラベル付けされる。
【0064】
したがって、新たな工具運動のシミュレーションは、或る葉セルおよびその同胞内の既存の数の距離場を規定された最大数未満に削減することができる。この場合、その葉セルおよび同胞の距離場はその共通の親セル内に配置され、その葉セルおよび同胞は複合ADFから削除される。
【0065】
フライス加工シミュレーション法は、工具形状408から形状距離場412を定義し(410)、形状距離場412は、数例を挙げると、解析距離関数、陰距離関数、規則的にサンプリングされる距離場、ADF、距離関数の合成、または手順のうちの1つとすることができる。
【0066】
NC機械命令414、または代わりに、Gコード416を用いて、工具の運動に対応するパラメトリック経路関数420を定義する。工具運動ごとに、形状距離場12およびパラメトリック経路関数420を用いて、工具運動に対応する工具の掃引容積を表す掃引容積距離場424を定義する(422)。
【0067】
工具運動による工作物のフライス加工をシミュレートするために、複合ADF444が、掃引容積距離場424を用いて編集される(426)。編集中に、掃引容積距離場が、工具の掃引容積によって横切られる複合ADFのセルに追加され、それによって横切られたセル内のADFが再生される。
【0068】
複合ADFを用いて、レンダリングモデル要素から成るレンダリングモデル464を生成することができ(462)、表示デバイス480にレンダリングすることができる(466)。ポイントレンダリング、三角形レンダリングおよびレイトレーシングのような、当該技術分野において知られているレンダリング法を用いて、レンダリングモデル464を生成し、レンダリングすることができる。
【0069】
フライス加工シミュレーションのための代替の実施形態では、各NC機械命令414またはGコード416に対応する各形状距離場、および工作物外形402の各幾何学的要素に対応する各距離場が、対応するNC機械命令、Gコードまたは幾何学的要素のための固有識別子を割り当てられる。
【0070】
レンダリングモデル生成462中に、レンダリングモデル464の各特定の要素が、特定のレンダリングモデル要素に寄与する距離場の固有識別子で注釈を付される。1組のレンダリング属性を各固有識別子と関連付けることによって、レンダリングモデル464は、どの幾何学的要素、およびどの工具経路が工作物の各部分に寄与するかを符号化する。たとえば、固有の色を、特定のGコードの形状距離場の識別子と関連付けることによって、特定のGコードによって影響を及ぼされる工作物の領域を、表示デバイス480上で容易に可視化することができる。
【0071】
代替形態として、不透明度を複合ADF内の特定の距離場内の識別子と関連付けることができる。たとえば、特定の工具運動に対応する特定の距離場に関連付けられるレンダリング要素を透明としてレンダリングすることができる。代替的には、固有識別子をブール演算子と関連付けることができ、そのブール演算子は、対応するレンダリング要素がレンダリングされるべきであるか否かを指示する。他のレンダリング属性を用いて、付加的な効果を生成し、フライス加工される工作物の可視化を支援することができる。
【0072】
距離場は物理的なシミュレーションにおいて数多くの利点を有する。フライス加工シミュレーションのための代替の実施形態は、距離場を用いて、NCフライス加工工程を検証する。たとえば、フライス加工シミュレータ400によって生成される複合ADF444を、コンピュータ支援設計モデル102の距離場表現と比較することができる。その比較は、表示デバイス480を用いて外観検査によって行なうことができる。
【0073】
代替的には、その比較は、複数のサンプル点において、複合ADF444およびコンピュータ支援設計モデル102の距離場をサンプリングし、それらのサンプル点において距離データを比較することによって行なうことができる。代替的には、その比較は、複合ADF444およびコンピュータ支援設計モデル102の距離場の一方を他方から減算することにより差距離場を生成し、差距離場を可視化することによって行なうことができる。
【0074】
また、距離場を用いて、各工具運動によって除去される材料の或る物理的特性を測定することもできる。たとえば、特定の工具運動の場合に、工作物と、特定の工具運動に対応する掃引容積との交差を表す交差距離場を生成することができる。その後、交差距離場を処理して、数例を挙げると、その質量、体積、または慣性モーメントを含む、その特定の工具運動によって除去される材料の種々の特性を求めることができる。
【0075】
掃引容積の距離場の再構成
図5は、プロセッサ500を用いて、サンプル点において掃引容積の距離場を再構成するための方法を示す。形状距離場504およびパラメトリック経路関数506が、上記のように、工具および工具運動を規定する。サンプル点502を与えられると、掃引容積再構成法510は、そのサンプル点502において距離場を再構成するために、そのサンプル点における距離データを求める。その方法は、経路に沿った工具の最適な配置を「連続的に」求める(512)。
【0076】
最適な1組のパラメータを求めている(512)最中に、その経路に沿った工具形状の初期配置を定義する1組の初期パラメータが選択される。好ましい実施形態では、その経路は単一のパラメータtによってパラメータ化され、パラメータtは、その経路に沿って工具が移動する時間に対応し、tの初期値が選択される(514)。形状距離場は、その経路に沿って時刻tにおいて工具の形状を配置するように変換され(516)、サンプル点502において形状距離場が再構成される(518)。
【0077】
サンプル点において再構成される距離データは、数例を挙げると、サンプル点から変換された形状までの距離、距離場の勾配、および距離場の偏導関数を含むことができる。
【0078】
その形状を経路に沿ってサンプリング点に近い配置に動かすために、再構成された距離データを用いて、パラメータ値tを繰返し変更する(520)。その変更は連続的に行われ、すなわち、所定の1組の離散値からtを選択するのではなく、パラメータtは、その経路に沿った形状の位置を改善する方向に任意の量だけ繰返し変更される。その変更は、最適なtが求められるまで、または繰り返しているうちにtの変化がtの或る最小変化未満になるまで、または繰返しの最大数が行なわれるまで繰り返される。最適なtが求められると、その形状は、対応する最適な配置に変換され(530)、変換された形状から距離データが再構成されて(540)、サンプル点502において距離データが求められる(510)。
【0079】
図6Aは、サンプル点601において掃引容積の距離場を離散的に再構成するための従来技術の方法を示す。工具形状602が、1組の離散時刻t0 606、t1 608、・・・、tN−1 610に対応する、工具経路604に沿った離散的な1組の配置に置かれる。
【0080】
サンプリングされる時刻ごとに、P 601から工具形状までの対応するサンプリングされる距離が求められる。この図では、離散時刻ti 612およびti+1 614が最適な時間を挟む。従来技術の方法は、以下のうちの1つとしてP 601から掃引容積までの距離を近似する:1)tiおよびti+1について求められる距離の最小値、2)tiおよびti+1について求められる距離の平均または混合、または3)時刻t*において配置されるときの形状までの距離。ただし、t*はtiおよびti+1の重み付け平均として求められる。
【0081】
図6Bはこの発明の好ましい実施形態を示す。工具形状602は最初に、経路604に沿ってパラメータtに対応する配置に置かれる。工具形状602の距離場からのサンプル点P 601における距離データ622を用いて、その形状を経路に沿って、最適なパラメータt*626によって定義される最適な配置の方向に向かって点t+Δt 624まで連続的に動かす。
【0082】
その好ましい実施形態では、サンプル点における距離場の勾配を用いて、パラメータtを変更する。その変更は、その形状を経路に沿って、距離場の外向きの勾配ベクトルと一致する方向に動かす。この方向は、tにおける経路の接線ベクトルと外向きの勾配ベクトルとのドット積をとることによって求められる。そのドット積が正である場合には、パラメータtを大きくし、そのドット積が負である場合には小さくする。そのドット積の大きさは、tの変化に関する尺度を与える。ドット積が0に近い場合には、その形状は局所的に距離場に直交し、tのための最適値が求められたことを指示する。
【0083】
その経路が2つ以上のパラメータによってパラメータ化される場合には、各経路パラメータに関する偏導関数を用いて、tを変更することができる。
【0084】
連続的に最適化する際の最も大きな難題のうちの1つは、局所的な最適値が存在することによって、連続最適化問題の出力が大域的な最適値であることを保証するのが難しくなることである。工具形状および工具経路が相対的に複雑である場合には、いくつかの局所的な最適値が存在する場合がある。代替の実施形態では、これは、上記の方法への2つの変更を用いて解決される。
【0085】
第1の変更では、tが相対的に少ない数のサンプリングされる時刻においてサンプリングされ、サンプリングされる時刻ごとに距離データが再構成される。サンプリングされる時刻の中から、形状がサンプル点に最も近い時刻tを選択することによって、大域的な最大値に収束する可能性が最も高い点において、最適化問題が初期化される。2つ以上のサンプリングされる時刻が有力である場合には、大域的な最適値を見つけるために、その方法を各有力なサンプリングされる時間において初期化することができる。
【0086】
第2の変更は図6Cに示される。この変更では、最適なt 626を挟むものと判断される開始時刻tS 630および終了時刻tE 634が初期化される。tを変更するための方法が両方の値tS 630およびtE 634を互いに向かって動かすことになる場合には、2つのt値は最適なt値を挟む。その変更を繰り返す度に、サンプル点P 601において、tS 630およびtE 634にそれぞれ対応する距離データ632および636が求められ、tS 630とtE 634との間の最適t値が求められるまで、tSおよびtEのうちの一方または両方が他方に向かって動かされる。
【0087】
好ましい実施形態、ならびに第1の変更および第2の変更に対する種々の代替形態が存在する。パラメータtを連続的に変更するためのさらなる代替方法を、連続最適化の分野に精通している人に知られている技法から導出できることは当業者には理解されたい。
【0088】
複数のサンプル点における距離場の数値計算
複合ADFをレンダリングすること、または物体間の衝突を検出するために複合ADFを使用することのような特定の処理では、複数のサンプル点においてADFの距離場が再構成される必要がある。
【0089】
たとえば、複合ADFを点モデルに変換して、ポイントレンダリングを介して表示デバイスにレンダリングすることができる。点モデルは点として知られている1組の幾何学的基本要素を含み、各点は空間内の位置および1組のレンダリング属性に関連付けられる。レンダリング中に、複数の点が画像位置にマッピングされ、レンダリング属性を用いてその画像にレンダリングされる。レンダリング属性の例をいくつか挙げると、点の色、不透明度、サイズ、反射率特性および法線ベクトルを含む。
【0090】
1組の点における各点は、以下のステップで複合ADFを用いて生成することができる。第1に、その点の位置が複合ADFのセル内の位置に初期化される。第2に、その点の位置において距離場が再構成され、距離場の大きさおよび勾配ベクトルを用いて、その点が複合ADFの表面に向かって動かされる。その点が複合ADFの表面上に存在することを再構成された距離が指示するまで、第2のステップが繰り返される。最後に、距離場が再構成され、その点にレンダリング属性を割り当てるために用いられる。たとえば、その点は、その点の位置に影響を及ぼす距離場の固有識別子に基づいて、色を割り当てられる場合がある。第2の例として、その点は、複合ADFの局所的な勾配に基づいて、法線ベクトルを割り当てられる場合がある。
【0091】
代替的に、レイキャスティングまたはレイトレーシングを用いて複合ADFを画像に変換し、画像として表示デバイスにレンダリングすることができる。レイキャスティング中に、画像内のピクセルごとに1組の光線が複合ADF内に投光される。複合ADFの表面を横切る各光線は、交点において複合ADFから再構成される距離データに従って、1組のレンダリング属性を割り当てられる。各組の光線のレンダリング属性を合成して、画像内の対応する各ピクセルの色が求められる。
【0092】
光線に沿った種々のサンプル点において複合ADFから距離データを再構成することによって、その光線と複合ADFの表面との間の交点が特定される。掃引容積の距離場を再構成するための上記の方法と同じように、交点は、離散的に、または連続的に特定することができる。その交点が離散的に特定される場合には、その表面に最も近いサンプル点の混合を用いて、その交点を近似することができる。交点が連続的に特定される場合には、連続最適化法を用いて、その交点が求められる。
【0093】
また、2つの物体間の衝突を検出するには、距離データが、複数のサンプル点において複合ADFから再構成される必要がある。2つの物体間の衝突は、いくつかの方法で、再構成された距離データから検出することができる。たとえば、物体のうちの一方のための距離データを他方の物体上で1組の表面点として再構成して、第2の物体の第1の物体に対する近接性の指標を求めることができる。その近接性データが、2つの物体が或る最小しきい値距離よりも近いことを指示する場合には、2つの物体間の衝突が検出される。
【0094】
求められた近接性データは、物体のうちの一方の形状を変更するために、または物体のうちの一方の経路を変更して、たとえば、衝突を回避するために、NCフライス加工シミュレーション、ロボット経路計画および製造のような用途において用いることができる。
【0095】
円筒対称工具
上記のように、複合ADFをレンダリングすること、または物体間の衝突を検出するために複合ADFを使用することなどの特定の用途では、複数のサンプル点において複合ADFが再構成される必要がある。再構成法の効率を改善するために、円筒対称の工具形状に合うように好ましい実施形態を変更することができる。
【0096】
円筒対称工具が或る経路に沿って動く場合、サンプル点に対して最も近い工具表面上の点は常に、サンプル点と、その経路に沿った工具のすべての配置のための工具軸とを含む平面上に存在する。工具軸を通る平面は、工具の断面を画定する。工具は円筒対称であるため、断面の形状は、工具軸を通るいかなる平面の場合にも同じである。
【0097】
図7Aは、NCフライス加工のために用いられる典型的な1組の円筒対称工具702、703、704および705を示す。
【0098】
図7Bは、それぞれ、工具702、703、704および705のそれぞれの2次元断面712、713、714および715を示す。
【0099】
図7Cは、2次元断面712、713、714および715をそれぞれ表す2次元距離場722、723、724および725を示す。
【0100】
或るサンプル点から、或る経路に沿って動く円筒対称工具形状までの距離は、工具の断面がそのサンプル点を含む平面内に存在するときに、そのサンプル点から、その断面のエッジまでの距離に等しい。
【0101】
したがって、この発明の代替の実施形態は、サンプル点を工具形状の断面の2次元座標にマッピングし、工具形状の2次元断面を表す2次元距離場から距離データを計算することによって距離データを求める。
【0102】
図8Aは、開始時刻tS 804から終了時刻tE 808まで経路801に沿って動き、任意の時刻t 806を通過する工具802を示す。この発明の好ましい実施形態によれば、サンプル点P 803において距離データを連続的に再構成することができる。
【0103】
代替の実施形態では、図8Bに示されるように、その経路に沿った時刻ごとに、点P 806が、2次元距離場820として表される、工具の断面の2次元座標系にマッピングされる。たとえば、サンプル点P 806は、その経路に沿った時刻tSにおける工具の配置に対応するサンプル点P’(tS)にマッピングされ、その経路に沿った時刻tEにおける工具の配置に対応するサンプル点P’(tE)にマッピングされ、且つその経路に沿った時刻tにおける工具の配置に対応するサンプル点P’(t)にマッピングされる。
【0104】
図8Bに示されるように、1組のマッピングされたサンプル点は、その工具の断面の2次元座標空間内のマッピングされた経路814を定義する。したがって、代替の実施形態では、工具形状が物体に最も近い点は、マッピングされた経路を連続的に探索することによって求められる。
【0105】
数多くのサンプル点が数値計算されることになる場合には、複数の方法において、代替の実施形態の効率をさらに改善することができる。たとえば、マッピングされた経路は複数の区間に分割することができ、各区間は、局所的に滑らかである工具の断面の2次元距離場の領域を通る。言い換えると、距離場が或る経路区間内で少なくともC1連続であるように、その経路が距離場の不連続点を横切る点において、その経路を分割することができる。本明細書において定義されるように、C1連続は、距離場の1次導関数が、その経路区間に沿って連続であることを意味する。代替的には、距離場が、連続最適化法の信頼性および効率を改善するために当該技術分野において知られている特性を、或る経路区間に沿って2次までの範囲で変化させるように、経路を分割することができる。
【0106】
動作環境
この発明は、数多くの汎用または専用コンピューティングシステム環境または構成で動作する。この発明と共に用いるのに適している既知のコンピューティングシステム、環境および/または構成の例は、限定はしないが、パーソナルコンピュータ、サーバコンピュータ、ハンドヘルドデバイスまたはラップトップデバイス、マルチプロセッサまたはマルチコアシステム、グラフィックス処理ユニット(GPU)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、マイクロコントローラベースシステム、ネットワークPC、メインフレームコンピュータ、上記のシステムまたはデバイスのうちの任意のものを含む分散コンピューティング環境など、すなわち、一般的にはプロセッサを含む。モニタまたは他のタイプの表示デバイス160が、上記のシステムのうちの任意のものに接続され、この発明を可視化する(162)ことを可能にする。
【0107】
この発明を、好ましい実施形態の例として説明してきたが、この発明の精神および範囲内で他のさまざまな適合および変更を行えることが理解されるべきである。したがって、この発明の真の精神および範囲内に入るすべての変形および変更を包含することが、添付の特許請求の範囲の目的である。
【特許請求の範囲】
【請求項1】
サンプル点において物体の距離場を再構成する方法であって、前記方法のステップを実行するためのプロセッサを備え、前記物体は、経路に沿って或る形状を動かすことによって生成される掃引容積を含み、
前記方法は、
前記形状を形状距離場によって表すステップと、
前記経路をパラメトリック関数によって表すステップと、
前記サンプル点における距離データを求めるステップと、を含み、
前記距離データは、前記サンプル点における前記物体の前記距離場を特徴付け、
前記距離データを求めるステップは、
前記経路を表す前記パラメトリック関数の最適な1組のパラメータを連続的に求めるステップであって、前記最適な1組のパラメータは、前記経路に沿った前記形状の最適な配置を定義する、ステップと、
前記形状距離場を前記最適な配置に変換するステップであって、変換された形状距離場を生成するステップと、
前記サンプル点において前記変換された形状距離場から距離データを求めるステップであって、前記サンプル点において前記距離場を再構成するステップと、
をさらに含む、方法。
【請求項2】
前記パラメトリック関数の前記最適な1組のパラメータを求めるステップは、
前記経路に沿った前記形状の特定の配置に対応する前記パラメトリック関数の特定の1組のパラメータを選択するステップと、
前記形状距離場を変換するステップであって、前記形状を前記特定の配置に置くステップと、
前記変換された形状距離場から前記サンプル点における距離データを求めるステップと、
前記最適な1組のパラメータが求められるまで、前記距離データを用いて前記特定の1組のパラメータを繰返し変更するステップと、
をさらに含む、請求項1に記載の方法。
【請求項3】
複数のサンプル点において前記物体の前記距離場を再構成するステップであって、前記物体を表示デバイスにレンダリングするステップ、をさらに含む、請求項1に記載の方法。
【請求項4】
前記物体を前記表示デバイスにレンダリングするための1組の表面点を生成するステップを含み、前記1組の表面点は、前記複数のサンプル点の一部を含み、
各特定の前記表面点を生成するステップは、
前記複数のサンプル点の特定のサンプル点において前記特定の表面点を位置決めするステップと、
前記特定の表面点における前記再構成された距離データを用いて、前記特定の表面点を前記物体の前記表面に動かすステップと、
前記特定の表面点における前記再構成された距離データから、前記特定の表面点に関するレンダリング属性を求めるステップと、
前記レンダリング属性を用いて、前記特定の表面点を前記表示デバイスにレンダリングするステップと、
をさらに含む、請求項3に記載の方法。
【請求項5】
前記物体を前記表示デバイスにレンダリングするための前記物体の画像を生成するステップと、
前記画像を前記表示デバイスにレンダリングするステップと、を含み、
前記画像は、1組のピクセルを含み、
前記1組のピクセル内の各ピクセルを生成するステップは、
前記ピクセルから1組の光線を前記物体に向けて投光するステップであって、各光線は、前記複数のサンプル点からの特定の1組のサンプル点に関連付けられる、ステップと、
前記特定の1組のサンプル点内の一部のサンプル点において再構成された前記距離データを用いて、前記1組の光線内の前記光線ごとに、前記光線と前記物体の表面との間の交点を求めるステップと、
前記1組の光線内の前記光線ごとに、前記交点における交差距離データを再構成するステップと、
前記1組の光線の前記交差距離データを組み合わせるステップであって、前記ピクセルの色を求めるステップと、
をさらに含む、請求項3に記載の方法。
【請求項6】
複数のサンプル点において前記距離場を再構成するステップであって、前記物体と基準物体との間の近接性データを検出するステップ、を含む、請求項1に記載の方法。
【請求項7】
前記形状は工具形状であり、前記基準物体は工作物である、請求項6に記載の方法。
【請求項8】
前記近接性データを用いるステップであって、前記物体と前記基準物体との間の衝突を検出するステップ、をさらに含む、請求項6に記載の方法。
【請求項9】
前記近接性データを用いるステップであって、前記形状を変更するステップ、をさらに含む請求項6に記載の方法。
【請求項10】
前記近接性データを用いるステップであって、前記基準物体を変更するステップ、をさらに含む請求項6に記載の方法。
【請求項11】
前記近接性データを用いるステップであって、前記経路を変更するステップ、をさらに含む請求項6に記載の方法。
【請求項12】
前記物体および前記基準物体から、交差の適応的にサンプリングされる距離場(ADF)を生成するステップであって、前記交差ADFは、前記物体と前記基準物体との交差を表す、ステップと、
前記交差ADFから、前記物体と前記基準物体との交差の物理特性を求めるステップであって、前記物理特性は、材料体積、表面積、面積、材料質量、慣性モーメント、およびそれらの組み合わせを含む群から選択される、ステップと、
をさらに含む、請求項6に記載の方法。
【請求項13】
前記距離データから前記物体の特性を求めるステップであって、前記特性は、材料体積、表面積、面積、材料質量、または慣性モーメントを含む、ステップ、をさらに含む、請求項1に記載の方法。
【請求項14】
前記形状は、3次元且つ円筒対称であり、前記形状距離場は、前記円筒対称形状の2次元断面を表す2次元距離場であり、
前記方法は、
前記形状の前記経路を前記形状の前記2次元断面の2次元座標系にマッピングするステップと、
前記2次元座標系内の前記形状の前記経路を表す前記パラメトリック関数を定義するステップと、
をさらに含む、請求項1に記載の方法。
【請求項15】
前記形状距離場は、距離マップ、適応的にサンプリングされる距離場(ADF)、解析関数、陰関数、距離場の合成、または手順から成る群から選択される、請求項1に記載の方法。
【請求項16】
前記パラメトリック関数は、点、線、折れ線、円弧、曲線、渦巻曲線、螺旋曲線、多項式曲線、2次ベジエ曲線、3次ベジエ曲線、区分的多項式曲線、および手続き的曲線(procedural curve)のうちの1つを含む前記経路を表す、請求項1に記載の方法。
【請求項17】
前記パラメトリック関数は、前記形状の1組の属性を特定し、前記1組の属性は、前記形状の位置、前記形状の向き、前記形状のスケール、または前記形状の一般的な変形を含む、請求項1に記載の方法。
【請求項18】
前記距離データは、前記サンプルから前記物体への距離、前記サンプル点における前記距離場の勾配、または前記サンプル点における前記距離場の偏導関数を含む、請求項1に記載の方法。
【請求項19】
前記特定の1組のパラメータを選択するステップは、
パラメータの1組のサンプリングされた組を求めるステップであって、前記パラメータの1組のサンプリングされた組は、前記経路に沿った1組のサンプリングされた配置に対応する、ステップと、
前記パラメータの1組のサンプリングされた組から前記特定の1組のパラメータを選択するステップと、
をさらに含む、請求項2に記載の方法。
【請求項20】
前記最適な1組のパラメータを求めるステップは、
前記形状の第2の配置に対応する第2の1組のパラメータを選択するステップであって、前記特定の配置および前記第2の配置は、前記経路に沿った前記形状の最適な配置を挟む、ステップと、
前記最適な1組のパラメータを求めるステップの間に、前記第2の1組のパラメータを繰り返し変更するステップであって、前記経路に沿った前記形状の最適な配置を挟み続けるようにする、ステップと、
をさらに含む、請求項2に記載の方法。
【請求項21】
前記特定の1組のパラメータを変更するために用いられる前記距離データは、距離値、前記変換された形状距離場の勾配、または前記変換された形状距離場の偏導関数を含む、請求項2に記載の方法。
【請求項22】
前記特定の1組のパラメータを変更するステップは、
前記特定の1組のパラメータに対応する経路データを求めるステップと、
前記経路データを用いて前記特定の1組のパラメータを変更するステップと、
をさらに含む、請求項2に記載の方法。
【請求項23】
前記経路データは、前記経路の接線ベクトル、または前記特定の1組のパラメータ内の特定のパラメータに関する前記経路の偏導関数を含む、請求項22に記載の方法。
【請求項24】
前記経路を前処理するステップであって、前記最適な1組のパラメータを求めるステップの効率を改善するステップ、をさらに含む、請求項14に記載の方法。
【請求項25】
前記前処理することは、
前記経路を複数の経路区間に分割するステップであって、前記複数の経路区間の各々は、前記2次元距離場の領域にマッピングし、前記2次元距離場の1次導関数は前記領域内で連続である、ステップ、をさらに含む、請求項24に記載の方法。
【請求項26】
前記前処理するステップは、
前記経路を複数の経路区間に分割するステップであって、各特定の経路区間は、前記2次元距離場の領域に対応し、前記距離場は、前記領域内で前記経路区間に沿って2次的に変化する、ステップ、
を含む、請求項24に記載の方法。
【請求項1】
サンプル点において物体の距離場を再構成する方法であって、前記方法のステップを実行するためのプロセッサを備え、前記物体は、経路に沿って或る形状を動かすことによって生成される掃引容積を含み、
前記方法は、
前記形状を形状距離場によって表すステップと、
前記経路をパラメトリック関数によって表すステップと、
前記サンプル点における距離データを求めるステップと、を含み、
前記距離データは、前記サンプル点における前記物体の前記距離場を特徴付け、
前記距離データを求めるステップは、
前記経路を表す前記パラメトリック関数の最適な1組のパラメータを連続的に求めるステップであって、前記最適な1組のパラメータは、前記経路に沿った前記形状の最適な配置を定義する、ステップと、
前記形状距離場を前記最適な配置に変換するステップであって、変換された形状距離場を生成するステップと、
前記サンプル点において前記変換された形状距離場から距離データを求めるステップであって、前記サンプル点において前記距離場を再構成するステップと、
をさらに含む、方法。
【請求項2】
前記パラメトリック関数の前記最適な1組のパラメータを求めるステップは、
前記経路に沿った前記形状の特定の配置に対応する前記パラメトリック関数の特定の1組のパラメータを選択するステップと、
前記形状距離場を変換するステップであって、前記形状を前記特定の配置に置くステップと、
前記変換された形状距離場から前記サンプル点における距離データを求めるステップと、
前記最適な1組のパラメータが求められるまで、前記距離データを用いて前記特定の1組のパラメータを繰返し変更するステップと、
をさらに含む、請求項1に記載の方法。
【請求項3】
複数のサンプル点において前記物体の前記距離場を再構成するステップであって、前記物体を表示デバイスにレンダリングするステップ、をさらに含む、請求項1に記載の方法。
【請求項4】
前記物体を前記表示デバイスにレンダリングするための1組の表面点を生成するステップを含み、前記1組の表面点は、前記複数のサンプル点の一部を含み、
各特定の前記表面点を生成するステップは、
前記複数のサンプル点の特定のサンプル点において前記特定の表面点を位置決めするステップと、
前記特定の表面点における前記再構成された距離データを用いて、前記特定の表面点を前記物体の前記表面に動かすステップと、
前記特定の表面点における前記再構成された距離データから、前記特定の表面点に関するレンダリング属性を求めるステップと、
前記レンダリング属性を用いて、前記特定の表面点を前記表示デバイスにレンダリングするステップと、
をさらに含む、請求項3に記載の方法。
【請求項5】
前記物体を前記表示デバイスにレンダリングするための前記物体の画像を生成するステップと、
前記画像を前記表示デバイスにレンダリングするステップと、を含み、
前記画像は、1組のピクセルを含み、
前記1組のピクセル内の各ピクセルを生成するステップは、
前記ピクセルから1組の光線を前記物体に向けて投光するステップであって、各光線は、前記複数のサンプル点からの特定の1組のサンプル点に関連付けられる、ステップと、
前記特定の1組のサンプル点内の一部のサンプル点において再構成された前記距離データを用いて、前記1組の光線内の前記光線ごとに、前記光線と前記物体の表面との間の交点を求めるステップと、
前記1組の光線内の前記光線ごとに、前記交点における交差距離データを再構成するステップと、
前記1組の光線の前記交差距離データを組み合わせるステップであって、前記ピクセルの色を求めるステップと、
をさらに含む、請求項3に記載の方法。
【請求項6】
複数のサンプル点において前記距離場を再構成するステップであって、前記物体と基準物体との間の近接性データを検出するステップ、を含む、請求項1に記載の方法。
【請求項7】
前記形状は工具形状であり、前記基準物体は工作物である、請求項6に記載の方法。
【請求項8】
前記近接性データを用いるステップであって、前記物体と前記基準物体との間の衝突を検出するステップ、をさらに含む、請求項6に記載の方法。
【請求項9】
前記近接性データを用いるステップであって、前記形状を変更するステップ、をさらに含む請求項6に記載の方法。
【請求項10】
前記近接性データを用いるステップであって、前記基準物体を変更するステップ、をさらに含む請求項6に記載の方法。
【請求項11】
前記近接性データを用いるステップであって、前記経路を変更するステップ、をさらに含む請求項6に記載の方法。
【請求項12】
前記物体および前記基準物体から、交差の適応的にサンプリングされる距離場(ADF)を生成するステップであって、前記交差ADFは、前記物体と前記基準物体との交差を表す、ステップと、
前記交差ADFから、前記物体と前記基準物体との交差の物理特性を求めるステップであって、前記物理特性は、材料体積、表面積、面積、材料質量、慣性モーメント、およびそれらの組み合わせを含む群から選択される、ステップと、
をさらに含む、請求項6に記載の方法。
【請求項13】
前記距離データから前記物体の特性を求めるステップであって、前記特性は、材料体積、表面積、面積、材料質量、または慣性モーメントを含む、ステップ、をさらに含む、請求項1に記載の方法。
【請求項14】
前記形状は、3次元且つ円筒対称であり、前記形状距離場は、前記円筒対称形状の2次元断面を表す2次元距離場であり、
前記方法は、
前記形状の前記経路を前記形状の前記2次元断面の2次元座標系にマッピングするステップと、
前記2次元座標系内の前記形状の前記経路を表す前記パラメトリック関数を定義するステップと、
をさらに含む、請求項1に記載の方法。
【請求項15】
前記形状距離場は、距離マップ、適応的にサンプリングされる距離場(ADF)、解析関数、陰関数、距離場の合成、または手順から成る群から選択される、請求項1に記載の方法。
【請求項16】
前記パラメトリック関数は、点、線、折れ線、円弧、曲線、渦巻曲線、螺旋曲線、多項式曲線、2次ベジエ曲線、3次ベジエ曲線、区分的多項式曲線、および手続き的曲線(procedural curve)のうちの1つを含む前記経路を表す、請求項1に記載の方法。
【請求項17】
前記パラメトリック関数は、前記形状の1組の属性を特定し、前記1組の属性は、前記形状の位置、前記形状の向き、前記形状のスケール、または前記形状の一般的な変形を含む、請求項1に記載の方法。
【請求項18】
前記距離データは、前記サンプルから前記物体への距離、前記サンプル点における前記距離場の勾配、または前記サンプル点における前記距離場の偏導関数を含む、請求項1に記載の方法。
【請求項19】
前記特定の1組のパラメータを選択するステップは、
パラメータの1組のサンプリングされた組を求めるステップであって、前記パラメータの1組のサンプリングされた組は、前記経路に沿った1組のサンプリングされた配置に対応する、ステップと、
前記パラメータの1組のサンプリングされた組から前記特定の1組のパラメータを選択するステップと、
をさらに含む、請求項2に記載の方法。
【請求項20】
前記最適な1組のパラメータを求めるステップは、
前記形状の第2の配置に対応する第2の1組のパラメータを選択するステップであって、前記特定の配置および前記第2の配置は、前記経路に沿った前記形状の最適な配置を挟む、ステップと、
前記最適な1組のパラメータを求めるステップの間に、前記第2の1組のパラメータを繰り返し変更するステップであって、前記経路に沿った前記形状の最適な配置を挟み続けるようにする、ステップと、
をさらに含む、請求項2に記載の方法。
【請求項21】
前記特定の1組のパラメータを変更するために用いられる前記距離データは、距離値、前記変換された形状距離場の勾配、または前記変換された形状距離場の偏導関数を含む、請求項2に記載の方法。
【請求項22】
前記特定の1組のパラメータを変更するステップは、
前記特定の1組のパラメータに対応する経路データを求めるステップと、
前記経路データを用いて前記特定の1組のパラメータを変更するステップと、
をさらに含む、請求項2に記載の方法。
【請求項23】
前記経路データは、前記経路の接線ベクトル、または前記特定の1組のパラメータ内の特定のパラメータに関する前記経路の偏導関数を含む、請求項22に記載の方法。
【請求項24】
前記経路を前処理するステップであって、前記最適な1組のパラメータを求めるステップの効率を改善するステップ、をさらに含む、請求項14に記載の方法。
【請求項25】
前記前処理することは、
前記経路を複数の経路区間に分割するステップであって、前記複数の経路区間の各々は、前記2次元距離場の領域にマッピングし、前記2次元距離場の1次導関数は前記領域内で連続である、ステップ、をさらに含む、請求項24に記載の方法。
【請求項26】
前記前処理するステップは、
前記経路を複数の経路区間に分割するステップであって、各特定の経路区間は、前記2次元距離場の領域に対応し、前記距離場は、前記領域内で前記経路区間に沿って2次的に変化する、ステップ、
を含む、請求項24に記載の方法。
【図1】
【図2A】
【図2B】
【図3A】
【図3B】
【図3C】
【図4】
【図5】
【図6A】
【図6B】
【図6C】
【図7A】
【図7B】
【図7C】
【図8A】
【図8B】
【図2A】
【図2B】
【図3A】
【図3B】
【図3C】
【図4】
【図5】
【図6A】
【図6B】
【図6C】
【図7A】
【図7B】
【図7C】
【図8A】
【図8B】
【公開番号】特開2010−277585(P2010−277585A)
【公開日】平成22年12月9日(2010.12.9)
【国際特許分類】
【外国語出願】
【出願番号】特願2010−106582(P2010−106582)
【出願日】平成22年5月6日(2010.5.6)
【出願人】(597067574)ミツビシ・エレクトリック・リサーチ・ラボラトリーズ・インコーポレイテッド (484)
【住所又は居所原語表記】201 BROADWAY, CAMBRIDGE, MASSACHUSETTS 02139, U.S.A.
【Fターム(参考)】
【公開日】平成22年12月9日(2010.12.9)
【国際特許分類】
【出願番号】特願2010−106582(P2010−106582)
【出願日】平成22年5月6日(2010.5.6)
【出願人】(597067574)ミツビシ・エレクトリック・リサーチ・ラボラトリーズ・インコーポレイテッド (484)
【住所又は居所原語表記】201 BROADWAY, CAMBRIDGE, MASSACHUSETTS 02139, U.S.A.
【Fターム(参考)】
[ Back to top ]