JP3370605B2 - 3次元モデルの最適化装置および方法 - Google Patents

3次元モデルの最適化装置および方法

Info

Publication number
JP3370605B2
JP3370605B2 JP19845398A JP19845398A JP3370605B2 JP 3370605 B2 JP3370605 B2 JP 3370605B2 JP 19845398 A JP19845398 A JP 19845398A JP 19845398 A JP19845398 A JP 19845398A JP 3370605 B2 JP3370605 B2 JP 3370605B2
Authority
JP
Japan
Prior art keywords
attribute
shapes
shape
information
model
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP19845398A
Other languages
English (en)
Other versions
JP2000030085A (ja
Inventor
全平 出口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP19845398A priority Critical patent/JP3370605B2/ja
Publication of JP2000030085A publication Critical patent/JP2000030085A/ja
Priority to US09/731,799 priority patent/US7103516B2/en
Application granted granted Critical
Publication of JP3370605B2 publication Critical patent/JP3370605B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/10Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ソリッドモデル等
の3次元形状モデルを扱うコンピュータシステムにおい
て、モデルの最終形状(外形)を損なわない範囲で、そ
のデータ構造を自動的に最適化するモデル最適化装置お
よびその方法に関する。
【0002】
【従来の技術】3次元CAD(computer-aided design
)システムを利用した製品設計業務において、1回の
設計で目標の仕様を達成するということは皆無に等し
く、通常は、度重なる設計変更を経た後に設計完了とな
る。このとき、設計者にとっては、最終的な形状が仕様
に適合していればよいので、3次元形状モデルのデータ
構造(モデル構造)については、特に意識していない。
しかしながら、モデル構造は設計の過程に大きく依存
し、設計変更が多いほど複雑になることが多い。
【0003】物体の3次元形状を表現するためのモデル
としては、頂点と稜線(エッジ)を用いたワイヤーフレ
ームモデルや、物体を表面形状で表現するサーフェスモ
デル、物体の外部と内部の区別を明確に表現するソリッ
ドモデル等が用いられる。ソリッドモデルでは、四角柱
や四角穴等の3次元の基本形状(プリミティブ)を組み
合わせて、物体の複雑な外形が表現される。ここでは、
この基本形状を属性と呼ぶことにする。
【0004】例えば、製品設計を行う際に、設計の過程
で不要となった属性Aが発生したとする。このとき、こ
の属性Aを参照している他の属性B、C、・・・が存在
すると、属性Aを単独で削除したり修正したりすること
はできず、属性B、C、・・・についても、それぞれ削
除または修正の処理を行う必要がある。一般に、ソリッ
ドモデルの各属性は、それよりも前に定義された属性を
参照属性として定義される。
【0005】ここで、設計者が修正を指定した場合は、
各属性についてそれぞれデータ構造の再定義または修正
を行うことになる。このとき、対象となる属性に関連し
ている他の属性が数個程度であれば、あまり大きな問題
は生じない。
【0006】しかし、数百、数千の属性で構成されてい
るソリッドモデルにおいて、初期の段階で定義された属
性が削除対象となるような場合は、致命的な問題が発生
する。この場合、削除対象の属性以降に定義された属性
のほとんどが、その属性と関連性を持っているため、設
計者は、それらのすべてを手作業で修正しなければなら
ない。これには、膨大な時間と労力が必要である。
【0007】このような場合、対象となる属性を削除す
るのではなく、新たに属性を追加することにより目的の
形状が得られることもある。例えば、削除対象の属性が
物体表面の穴を表す場合、その穴を埋める物体を新たに
定義することで、穴を削除するのと同等の結果を得るこ
とができる。また、逆に、削除対象の属性が物体表面の
ボス(突起)を表す場合、そのボスと同じ形状の穴を新
たに定義することで、ボスを削除するのと同等の結果を
得ることができる。
【0008】
【発明が解決しようとする課題】しかしながら、従来の
ソリッドモデルによる設計には、次のような問題があ
る。
【0009】まず、削除対象の属性を新たな属性で埋め
合せるような代替処理の積み重ねにより設計されたソリ
ッドモデルには、実際の外形には必要のない冗長な属性
が多数含まれている。このため、データ量が膨大とな
り、外形の表示や再生(再構築)・修正といった各種処
理に対する応答が非常に悪くなる。
【0010】また、属性間の関連性の影響で、希望する
属性のみを削除または修正することが難しく、ソリッド
モデルの編集の自由度が極めて低い。ソリッドモデルを
類似設計や構造解析のために利用する場合は、その編集
自由度の低さに加えて、設計者以外の第三者が作業する
ことが多く、作業者がモデル構造や関連性を理解してい
ないという問題も発生する。このため、ソリッドモデル
を修正するのに膨大な時間を必要とし、時にはソリッド
モデルを新規に作り直さなければならず、既存のソリッ
ドモデルを有効に活用しているとは言い難い。
【0011】次に、このようにして設計されたソリッド
モデルを、有限要素法を用いた構造解析に利用する場合
を考えてみる。この場合、ソリッドモデルをメッシュ分
割する必要があるが、既存の自動メッシュ分割機能を利
用して分割しようとすると、うまくいかないことが多々
ある。
【0012】これは、上述のような属性追加により削除
対象の属性を覆い隠している箇所が原因である場合が多
い。削除対象の属性を埋めるために、同一の形状の新た
な属性を追加したとしても、その端点では微妙な形状の
ずれが生じている可能性があるためである。単純な形状
や平面上の形状であれば問題ないが、複雑な形状や曲面
上にある形状の場合には、計算精度の影響で、削り残
し、エッジ端点のずれ等の極微小な予期せぬ形状が生成
される。この微小形状が原因で、メッシュ分割が成功し
ないのである。
【0013】このような時は、この微小形状を削除また
は修正しなければならず、膨大な時間と労力を必要とす
る。また、微小形状をそのままにしておいて、たとえう
まくメッシュ分割できたとしても、分割結果には微小形
状が大量に含まれてしまい、解析に使えないことが多
い。
【0014】本発明の課題は、3次元モデルの構造を最
適化して、データ量が小さく編集自由度が高いモデルを
生成するモデル最適化装置およびその方法を提供するこ
とである。
【0015】
【課題を解決するための手段】図1は、本発明のモデル
最適化装置の原理図である。図1のモデル最適化装置
は、検出手段1、削減手段2、および構築手段3を備え
る。
【0016】検出手段1は、物体の3次元モデルを構成
する複数の形状から1つ以上の冗長な形状を検出し、そ
の冗長な形状のうち削除すべき形状のリストである削除
対象リストと、その冗長な形状のうち修正すべき形状の
リストである修正対象リストとを生成する。削減手段2
は、検出された1つ以上の冗長な形状に関する形状情報
のうち、削除対象リストに含まれる形状の形状情報を削
除し、修正対象リストに含まれる形状の形状情報を修正
することで、その冗長な形状に関する形状情報を削減す
る。構築手段3は、修正された形状情報と検出された1
つ以上の冗長な形状以外の形状の形状情報とを用いて、
物体の3次元モデルを再構築する。
【0017】例えば、物体の3次元モデルは3次元ソリ
ッドモデルに対応し、それを構成する形状は前述した属
性に対応する。また、1つ以上の冗長な形状には、3次
元モデルの外形に不要な形状や、1つの形状で表現でき
る2つ以上の形状が含まれ、検出手段1は、それらの形
状を自動的に検出する。削減手段2は、不要な形状の形
状情報を削除し、2つ以上の形状の形状情報を1つの形
状の形状情報に集約して、3次元モデルの形状情報を自
動的に削減する。
【0018】この形状情報は、例えば、3次元モデルに
含まれる各形状の識別情報、頂点座標情報、配置位置情
報、定義情報等を含み、各形状の外形、断面形状、高
さ、位置、タイプ(物体の内部と外部の区別)等を表現
している。構築手段3は、削除されなかった元の形状情
報と集約された形状情報とを用いて、物体の3次元モデ
ルを新たに構築する。
【0019】このようなモデル最適化装置によれば、3
次元モデルの外形を損なうことなく、それに含まれる冗
長な形状が削除/集約されて、3次元モデルのデータ構
造が自動的に圧縮される。また、冗長な形状が削除/集
約されることで、3次元モデルの設計変更やメッシュ分
割が容易となり、その編集自由度が向上する。
【0020】例えば、図1の検出手段1は、後述する図
2の不要属性検出部12および記憶部13に対応し、図
1の削減手段2および構築手段3は、図2の構造最適化
部14および演算部15に対応する。
【0021】
【発明の実施の形態】以下、図面を参照しながら、本発
明の実施の形態を詳細に説明する。本発明のモデル最適
化装置は、冗長な属性を検出/削減すると同時に、属性
間の関連性を解除/再構築して、3次元モデルのデータ
構造の最適化編集を行う。そのため、モデル最適化装置
は、次のような処理を自動的に行う。 (1)外形に不必要な形状の検出/削除。 (2)同じ形状の繰り返しに対応するパターン属性の検
出/1つの属性への変更。 (3)必要であれば、属性の配置の基準位置(配置基
準)を、よりデータ量の少ない代替属性(作業面、曲線
等)に変更。 (4)ソリッドモデル最構築。
【0022】これにより、次のような効果が得られる。 (1)属性間の関連性の少ない修正容易なソリッドモデ
ルの提供(類似設計等への活用)。 (2)構造解析における解析モデル等へのソリッドモデ
ルの有効活用。 (3)ソリッドモデルのデータ量の削減。 (4)ソリッドモデルの表示や修正に要する演算時間の
短縮。
【0023】図2は、モデル最適化装置の構成図であ
る。図2のソリッドモデル最適化装置11は、不要属性
検出部12、記憶部13、構造最適化部14、および演
算部15を備え、与えられたソリッドモデルデータ21
を最適化して、最適化ソリッドモデルデータ24を出力
する。
【0024】まず、不要属性検出部12は、ソリッドモ
デルデータ21を取り込み、以降の処理を高速化するた
め、それを記憶部13に格納しておく。また、不要属性
検出部12は、あらかじめ決められたアルゴリズムで各
属性を順次チェックし、属性間の特定の関係を検出し
て、削除対象リスト22と修正対象リスト23を記憶部
13内に作成する。削除対象リスト22には、削除すべ
き属性のリストが保持され、修正対象リスト23には、
修正すべき属性のリストが保持される。
【0025】不要属性検出部12による処理が終了する
と、構造最適化部14が起動され、記憶部13に保持さ
れているソリッドモデルデータ21を順次再生してい
く。ここで、再生とは、ソリッドモデルデータ21に適
当な修正を施して、モデルを再構築することを意味す
る。
【0026】このとき、構造最適化部14は、削除対象
リスト22と修正対象リスト23を参照しながら、必要
な属性だけを再生する。削除される属性の影響で配置位
置や形状が不明となる属性については、それらの配置位
置や形状の計算を演算部15に依頼し、計算結果に基づ
いて再生する。そして、得られた最適化ソリッドモデル
データ24を出力する。
【0027】図3は、物体の一部として定義された属性
の例を示している。図3において、四角柱25は、既存
の形状26の上面Fを配置面とするボスとして生成さ
れ、各頂点の座標、高さh、配置面F上での位置、属性
のタイプ、生成方法等の情報を含む。ここでは、配置面
F上の4つの頂点v1、v2、v3、およびv4により
構成される四角形が、四角柱25の断面形状を表す。
【0028】また、図4は、物体の外部として定義され
た属性の例を示している。図4において、四角穴27
は、既存の形状28の上面Fを配置面とする穴として生
成され、図3の四角柱25と同様に、各頂点の座標、高
さh、配置面F上での位置、属性のタイプ、生成方法等
の情報を含む。ここでは、高さhは負の値で定義され、
その絶対値|h|が穴の深さを表す。以下では、高さh
は、物体の高さまたは穴の深さを表すものとする。ま
た、配置面F上の4つの頂点v5、v6、v7、および
v8により構成される四角形が、四角穴27の断面形状
を表している。
【0029】また、図5は、ソリッドモデルデータ21
に含まれる各属性のデータ構造を示している。ソリッド
モデルデータ21は、属性番号を識別情報として、各属
性の頂点座標、配置位置、および定義情報の各データを
含む。
【0030】属性番号は、属性の作成順に3次元CAD
により自動的に付与され、頂点座標は、属性を構成して
いるすべての頂点の座標値を表す。これらの頂点の座標
値は、主として、属性の断面形状を表すために用いられ
る。また、配置位置は、ソリッドモデル上で属性が配置
されている位置を表し、配置面の情報や配置面上での位
置情報を含む。また、定義情報は、属性のタイプ、生成
方法、生成に必要なパラメータ等の情報を含む。例え
ば、図3、4の高さhは、断面形状に垂直な方向のパラ
メータに対応する。
【0031】このようなソリッドモデルデータ21に基
づいて不要属性検出部12が検出する属性間の関係とし
ては、図6から図10までに示すように、設計の過程で
生成された様々な冗長性が挙げられる。
【0032】図6は、既に定義済みの穴31に対して、
同じ外形の物体32を追加して、穴31を埋め込んだ例
を示している。このような場合、穴31と物体32は互
いに打ち消し合う二重属性となり、どちらもソリッドモ
デルの外形に寄与していない。したがって、これらの属
性は不要である。定義済みの物体に対して、同じ形状の
穴を追加して、物体をカットした場合も、両者の属性は
不要となる。
【0033】また、図7は、定義済みの穴31に対し
て、同じ断面形状を持つ物体33を追加して、穴31の
深さを変更した例を示している。このような場合、変更
された穴は1つの属性で表すことができ、穴31と物体
33は冗長な二重属性となる。定義済みの物体に対し
て、同じ断面形状を持つ穴を追加して、物体の高さを変
更した場合も、両者の属性は冗長となる。
【0034】また、図8は、定義済みの穴31に対し
て、その深さと同じ高さを持ち、より小さな断面形状を
持つ物体34を追加して、穴31の断面形状を変更した
例を示している。この場合も、変更された穴は1つの属
性で表すことができ、穴31と物体34は冗長な二重属
性となる。定義済みの物体に対して、その高さと同じ深
さを持ち、より小さな断面形状を持つ穴を追加して、物
体の断面形状を変更した場合も、両者の属性は冗長とな
る。
【0035】また、図9は、定義済みの穴31に対し
て、その深さと同じ高さを持ち、より大きな断面形状の
物体35を追加して、穴31を埋め込んだ例を示してい
る。このような場合、穴31と物体35の外形は異なる
が、図6の場合と同様に、穴31と物体35は互いに打
ち消し合う二重属性となり、どちらもソリッドモデルの
外形に寄与していない。したがって、これらの属性は不
要である。定義済みの物体に対して、その高さと同じ深
さを持ち、より大きな断面形状の穴を追加して、物体を
カットした場合も、両者の属性は不要となる。
【0036】また、図10は、同一配置面36上に定義
された高さが同じ複数の物体37、38、39を示して
いる。このような場合、物体37、38、39は、断面
形状が同じであるかどうかに関わらず、1つの属性で表
すことができ、これらの複数の属性は冗長である。同一
配置面上に定義された深さが同じ複数の穴の場合も、そ
れらの属性は冗長となる。
【0037】また、複数の属性が同じ形状を持つ場合、
しばしば、それらはパターン属性として定義される。パ
ターン属性とは、既存の属性の形状と配置位置を用い
て、それを自動的に複製または数式化することにより、
新規に定義される属性を表す。これらの複数の属性は一
度に定義することができるが、同じ形状を表しているた
め、1つの属性で表すこともできる。したがって、これ
らの複数の属性は冗長である。
【0038】図11および図12は、このような冗長な
属性を検出する不要属性検出部12の処理のフローチャ
ートである。まず、不要属性検出部12は、定義された
属性番号順にソリッドモデルデータ21を取り込み(図
11、ステップS1)、各属性の頂点座標、配置位置、
および定義情報を抽出して、頂点座標データ41、配置
位置データ42、および定義情報データ43のデータテ
ーブルファイルを作成する(ステップS2)。
【0039】次に、これらのデータテーブルを参照しな
がら、削除可能または集約可能な属性の検出処理を行
う。まず、読み込んだ属性nがパターン属性であるかど
うかを判定する(ステップS3)。そして、属性nがパ
ターン属性であれば、その情報を修正対象リスト23に
出力して、属性nが最終属性かどうかを判定する(図1
2、ステップS12)。それが最終属性でなければ、n
をインクリメントして(図11、n++)、次の属性n
+1に関する処理に移る。
【0040】属性nがパターン属性でなければ、次に、
既に読み込まれた上位属性の中に、属性nの各頂点座標
と完全に一致する頂点座標を持つものがあるかどうかを
判定する(ステップS4)。そして、そのような上位属
性があれば、その上位属性と属性nは図6のような関係
にあるものとみなし、それらの情報を削除対象リスト2
2に出力して、ステップS12以降の処理を行う。
【0041】そのような上位属性がなければ、次に、上
位属性の中に属性nの断面形状と一致する断面形状を持
つものがあるかどうかを判定する(ステップS5)。そ
して、そのような上位属性があれば、その上位属性と属
性nは図7のような関係にあるものとみなし、属性nの
情報を削除対象リスト22に出力し、上位属性の情報を
修正対象リスト23に出力して、ステップS12以降の
処理を行う。
【0042】そのような上位属性がなければ、次に、上
位属性の中に属性nと配置面が同じものがあるかどうか
を判定する(図12、ステップS6)。そのような上位
属性があれば、次に、その上位属性の定義情報と属性n
の定義情報が完全に一致するかどうかを判定する(ステ
ップS7)。
【0043】それらが一致すれば、その上位属性と属性
nは図10のような関係にあるものとみなし、属性nの
情報を削除対象リスト22に出力し、上位属性の情報を
修正対象リスト23に出力して、ステップS12以降の
処理を行う。このとき、修正対象リスト23に出力され
る上位属性の情報には、属性nの断面形状の情報も追加
される。
【0044】ステップS6で対応する上位属性がない場
合、または、ステップS7で両者の定義情報が一致しな
い場合は、次に、属性nの配置面形状内に断面形状が完
全に収まるかどうかを判定する(ステップS8)。配置
面形状内に断面形状が収まれば、次に、その配置面を含
む上位属性の高さと属性nの高さを比較する(ステップ
S9)。
【0045】それらの絶対値が同じで符号が逆であれ
ば、その上位属性と属性nは図8のような関係にあるも
のとみなし、属性nの情報を削除対象リスト22に出力
し、上位属性の情報を修正対象リスト23に出力して、
ステップS12以降の処理を行う。このとき、修正対象
リスト23に出力される上位属性の情報には、属性nの
断面形状の情報も追加される。
【0046】ステップS8で配置面形状内に断面形状が
収まらない場合、または、ステップS9で両者の高さが
上述のような関係にない場合は、次に、属性nの配置面
形状を断面形状が完全に取り囲むかどうかを判定する
(ステップS10)。配置面形状を断面形状が取り囲ん
でいれば、次に、その配置面を含む上位属性の高さと属
性nの高さを比較する(ステップS11)。それらの絶
対値が同じで符号が逆であれば、その上位属性と属性n
は図9のような関係にあるものとみなし、それらの情報
を削除対象リスト22に出力して、ステップS12以降
の処理を行う。
【0047】ステップS10で配置面形状を断面形状が
取り囲まない場合、または、ステップS11で両者の高
さが上述のような関係にない場合は、ステップS12以
降の処理を行う。そして、ステップS12で属性nが最
終属性となれば、処理を終了する。
【0048】このような処理により、削除すべき冗長属
性の情報は削除対象リスト22に集められ、修正すべき
冗長属性の情報は修正対象リスト23に集められる。構
造最適化部14は、これらのリストを用いて、最適化ソ
リッドモデルデータ24を作成する。
【0049】図13は、構造最適化部14の処理のフロ
ーチャートである。まず、構造最適化部14は、属性番
号順にソリッドモデルデータ21を取り込み(ステップ
S21)、削除対象リスト22を参照して、取り込んだ
属性nが記載されているかどうかを判定する(ステップ
S22)。属性nが削除対象リスト22に記載されてい
れば、それは再生しないものとみなし、次の属性n+1
に関する処理に移る。
【0050】属性nが削除対象リスト22に記載されて
いなければ、次に、修正対象リスト23を参照して、属
性nが記載されているかどうかを判定する(ステップS
23)。属性nが修正対象リスト23に記載されていれ
ば、記載情報をもとに断面形状・配置位置等を計算し
(ステップS24)、修正された情報に基づいて再生す
る(ステップS25)。
【0051】また、属性nが修正対象リスト23に記載
されていなければ、そのまま取り込んだ情報に基づいて
再生する(ステップS25)。このとき、削除された属
性との関連性の影響により、そのままでは再生できない
可能性もある。その場合は、後述するように、属性間の
関連性を適当に解除して、属性を再生すればよい。
【0052】次に、属性nが最終属性かどうかを判定す
る(ステップS26)。それが最終属性でなければ、次
の属性n+1に関する処理に移り、最終属性であれば、
処理を終了する。最終的に再生された属性の集合が、最
適化ソリッドモデルデータ24として出力される。
【0053】このような処理により、不要な冗長属性を
含む大量の属性により定義されたソリッドモデルを、外
形に必要な属性だけを用いて自動的に再構築することが
可能になる。また、ソリッドモデルの再構築時に、不要
な属性を削除したり、複数の属性を1つの属性に集約し
たりすることにより、ソリッドモデルのデータ量が削減
され、扱い易くなる。さらに、属性間の関連性を解除す
ることにより、ソリッドモデルの編集自由度が高くな
る。
【0054】次に、図14に示すソリッドモデルの具体
例を用いて、それを最適化する処理を説明する。図14
のソリッドモデルは、次のような各属性から成り、最適
化前のソリッドモデルデータは、図15に示すようにな
る。
【0055】 属性[1]:ベース 属性[2]:四角穴(斜線部) 属性[3]:4つののボス 属性[4]:四角柱(斜線部) 属性[5]:四角穴 属性[6]:四角柱 このソリッドモデルでは、設計変更時に属性[2]の穴
を削除しようとしたが、属性[3]が属性[2]を配置
基準として参照している関係で、単独では削除できない
ことが分かった。このため、新たに属性[4]を追加し
て、属性[2]の穴を塞いでいる。
【0056】図15において、番号は、3次元CADに
より自動的に付与された属性番号に対応し、図14で
は、[n]のように記されている。また、項目は、図5
の構造に対応し、データは、各項目のデータを表す。
【0057】まず、属性[1]の頂点座標データは、ベ
ースの形状(直方体)を構成している8つの頂点の座標
値{(x1,y1,z1),(x2,y2,z2),
(x3,y3,z3),(x4,y4,z4)}(x
5,y5,z5),(x6,y6,z6),(x7,y
7,z7),(x8,y8,z8)を表し、このうち、
{}内の4つの頂点が、XY平面に平行な平面で属性
[1]を切断したときの断面形状を構成している。
【0058】また、属性[1]は最初に作成された属性
であるため、その配置位置データは存在しない。属性
[1]の定義情報データは、タイプが押し出しであり、
生成方法が高さhを押し出し量のパラメータとする押し
出しであることを表している。ここで、押し出しとは、
頂点座標により定義された断面形状を、Z軸方向に高さ
hだけスライドさせることにより生成された物体、また
はその生成方法を表す。
【0059】次に、属性[2]の頂点座標データは、直
方体を構成している8つの頂点の座標値を表し、このう
ち、{ }内の4つの頂点が、配置面である属性[1]
の上面F1における断面形状を構成している。
【0060】また、属性[2]の配置位置データのう
ち、“1:F1”は、属性[1]の面F1が配置面であ
ることを表し、“1:E1−25”は、属性[1]のエ
ッジE1からの距離が25であることを表し、“1:E
2−25”は、属性[1]のエッジE2からの距離が2
5であることを表す。
【0061】このように、配置位置データは、配置基準
となる他の属性を指定する属性番号を含んでおり、この
場合、属性[1]と属性[2]は親子関係にあると言え
る。他の属性の配置位置データも、同様に、基準となる
親属性の属性番号を含んでいる。
【0062】また、属性[2]の定義情報データは、タ
イプがカットであり、生成方法が高さhを押し出し量の
パラメータとする押し出しであることを表している。こ
こで、カットとは、頂点座標により定義された断面形状
を、Z軸方向に高さh(ここでは、深さに相当)だけス
ライドさせることにより生成された穴を表す。以後、高
さhが負の値の場合は、Z軸の負の方向への押し出しを
意味するものとする。
【0063】次に、属性[3]では、4つの円柱の断面
形状である円の中心を頂点として扱い、その頂点座標デ
ータは、円の中心の座標値と半径を表している。各円柱
は、{(x1,y1,z1)r}(x2,y2,z2)
のように記述され、{ }内の座標値(x1,y1,z
1)が配置面である属性[1]の上面における円の中心
を表し、rが円の半径を表す。また、座標値(x2,y
2,z2)は円柱の上面における円の中心を表す。
【0064】また、属性[3]の配置位置データのう
ち、“1:F1”は、属性[1]の面F1が配置面であ
ることを表し、“2:E1−12.5”は、属性[2]
のエッジE1からの距離が12.5であることを表し、
“2:E2−12.5”は、属性[2]のエッジE2か
らの距離が12.5であることを表す。このように、属
性[3]は、2つの属性[1]および[2]を配置基準
として参照している。属性[3]の定義情報データにつ
いては、属性[1]と同様である。
【0065】次に、属性[4]の頂点座標データは、直
方体を構成している8つの頂点の座標値を表している。
この頂点座標データは、属性[2]の頂点座標データと
一致していることが分かる。
【0066】また、属性[4]の配置位置データのう
ち、“1:F2”は、属性[1]の底面F2が配置面で
あることを表し、“1:E5−25”は、属性[1]の
エッジE5からの距離が25であることを表し、“1:
E6−25”は、属性[1]のエッジE6からの距離が
25であることを表す。
【0067】また、属性[4]の定義情報データは、タ
イプが押し出しであり、生成方法が高さhを押し出し量
のパラメータとする押し出しであることを表している。
このうち、タイプは属性[2]と異なり、物体の内部で
あることを表している。また、生成方法は、属性[2]
と同じであり、高さhは、属性[2]の高さと絶対値が
同じで符号が逆になっている。これは、属性[2]と配
置面が異なっていることと対応している。
【0068】属性[2]と属性[4]の各データを比較
すると、これらの属性は互いに打ち消し合う関係にあ
り、ソリッドモデルの外形には寄与していないことが分
かる。したがって、これらは削除可能な属性である。
【0069】次に、属性[5]の頂点座標データは、直
方体を構成している8つの頂点の座標値を表し、このう
ち、{ }内の4つの頂点が、配置面である属性[1]
の上面における断面形状を構成している。
【0070】また、属性[5]の配置位置データのう
ち、“1:F1”は、属性[1]の面F1が配置面であ
ることを表し、“1:E1−125”は、属性[1]の
エッジE1からの距離が125であることを表し、
“1:E2−25”は、属性[1]のエッジE2からの
距離が25であることを表す。属性[5]の定義情報デ
ータについては、属性[2]と同様である。
【0071】次に、属性[6]の頂点座標データは、直
方体を構成している8つの頂点の座標値を表し、このう
ち、{ }内の4つの頂点が、配置面である属性[5]
の底面における断面形状を構成している。
【0072】また、属性[6]の配置位置データのう
ち、“1:F1”は、属性[5]の面F1が配置面であ
ることを表し、“1:E1−10”は、属性[1]のエ
ッジE1からの距離が10であることを表し、“1:E
2−10”は、属性[1]のエッジE2からの距離が1
0であることを表す。
【0073】属性[6]の定義情報データについては、
属性[1]と同様である。属性[5]と属性[6]は、
図8のような関係にあるため、1つの属性に集約するこ
とが可能である。
【0074】この例では、属性のタイプとして押し出し
とカットを用いており、生成方法として押し出しを用い
ているが、他の任意のタイプと生成方法も同様に定義す
ることができる。
【0075】例えば、前述のような一連のパターン属性
(同じ形状の複数のパターン属性のグループ)の場合
は、そのタイプはパターンと記述され、パターン数、パ
ターン方向、およびパターン増分値がパラメータとして
設定される。パターン数は、同じグループに属するパタ
ーン属性の総数を表し、グループ内で最初に生成された
パターン属性に設定される。また、パターン方向は、パ
ターン属性を複製する方向を表し、パターン増分値は、
パターン属性間の間隔を表す。また、生成方法として、
回転を用いた場合は、そのパラメータとして回転角が設
定される。
【0076】不要属性検出部12は、このソリッドモデ
ルデータから、図16のような削除対象リストと図17
のような修正対象リストを作成する。削除対象リストに
は、属性[2]、[4]、[6]のデータテーブルが含
まれ、修正対象リストには、属性[6]の削除に伴っ
て、その頂点座標データが属性[5]の追加頂点データ
として記述されている。追加頂点データは、他の属性に
集約される属性の頂点の座標値を表す。
【0077】ここで、図18から図22までのフローチ
ャートを参照しながら、不要属性検出部12による不要
属性の検出処理についてより詳細に説明する。まず、不
要属性検出部12は、n=1とおいて(ステップS3
0)、属性番号順にソリッドモデルのデータテーブルを
読み込み(ステップS31)、属性nの頂点座標データ
n、配置位置データn、定義情報データnを抽出して、
それぞれ、一時データバッファ51、52、53に格納
する(ステップS32)。
【0078】次に、定義情報データnを参照して、属性
nのタイプを取得し(ステップS33)、それがパター
ン属性に対応するかどうかを判定する(ステップS3
4)。属性nがパターン属性であれば、定義情報データ
nからパターン数、パターン方向、およびパターン増分
値を取得し(ステップS35)、a=nとおき(ステッ
プS36)、n=n+1とおく(ステップS37)。
【0079】そして、nとa+(パターン数−1)の値
を比較する(ステップS38)。ここで、a+(パター
ン数−1)は、属性aと同じグループに属する最後のパ
ターン属性の属性番号に対応する。
【0080】n≦a+(パターン数−1)であれば、属
性nはグループ内の属性であるから、頂点座標データn
を属性aの追加情報として修正対象リスト23に出力し
て(ステップS39)、ステップS37以降の処理を繰
り返す。これにより、属性aから派生したパターン属性
の頂点座標データがすべて、修正対象リスト23に格納
される。
【0081】そして、n>a+(パターン数−1)とな
ると、aからa+(パターン数−1)までの属性のデー
タテーブルをバッファ51、52、53から図11のフ
ァイル41、42、43に出力して(ステップS4
0)、nが最終属性の属性番号かどうかを判定する(ス
テップS41)。属性nが最終属性でなければ、n=n
+1とおいて(ステップS42)、ステップS31以降
の処理を繰り返す。
【0082】ステップS34において、属性nがパター
ン属性でなければ、次に、b=1とおき(図19、ステ
ップS43)、属性nの頂点座標データnと、ファイル
41内の上位属性bの頂点座標データbを比較して(ス
テップS44)、すべての頂点座標が一致するかどうか
を判定する(ステップS45)。一致しない頂点が1つ
でもあれば、頂点座標データbがファイル41内の最終
レコードかどうかを判定する(ステップS46)。
【0083】頂点座標データbが最終レコードでなけれ
ば、b=b+1とおき(ステップS47)、ステップS
44以降の処理を繰り返す。そして、ステップS45に
おいて、頂点座標データnと頂点座標データbが一致す
れば、これらの属性nと属性bは図6のような関係にあ
るものとみなす。
【0084】そこで、属性nのデータテーブルを削除対
象リスト22に出力し(ステップS48)、属性bのデ
ータテーブルを削除対象リスト22に出力する(ステッ
プS49)。そして、属性nのデータテーブルをバッフ
ァ51、52、53からファイル41、42、43に出
力して(ステップS50)、ステップS41以降の処理
を行う。
【0085】ステップS46において、頂点座標データ
bが最終レコードであれば、属性nと同じ形状の上位属
性は存在しないものとみなし、次に、c=1とおき(図
20、ステップS51)、属性nの頂点座標データn
と、ファイル41内の上位属性cの頂点座標データcを
比較して(ステップS52)、断面形状の頂点座標が一
致するかどうかを判定する(ステップS53)。
【0086】図15の頂点座標データの場合は、{ }
内の座標値のうちX座標値とY座標値が断面形状の頂点
座標に相当する。一致しない頂点が1つでもあれば、頂
点座標データcがファイル41内の最終レコードかどう
かを判定する(ステップS54)。
【0087】頂点座標データcが最終レコードでなけれ
ば、c=c+1とおき(ステップS55)、ステップS
52以降の処理を繰り返す。そして、ステップS53に
おいて、断面形状の頂点座標が一致すれば、これらの属
性nと属性cは1つの属性に集約可能とみなす。
【0088】そこで、定義情報データnから高さhnを
取得し(ステップS56)、ファイル43内の上位属性
cの定義情報データcから高さhcを取得して(ステッ
プS57)、hcにhnを加算した結果を改めてhcと
おき、属性cの高さを変更する(ステップS58)。こ
れにより、例えば、図4のような関係にある2つの属性
を1つに集約することができる。
【0089】次に、属性nのデータテーブルを削除対象
リスト22に出力し(ステップS59)、属性cの定義
情報データcに変更後の高さhcを記述して修正対象リ
スト23に出力する(ステップS60)。そして、属性
nのデータテーブルをバッファ51、52、53からフ
ァイル41、42、43に出力して(ステップS6
1)、ステップS41以降の処理を行う。
【0090】ステップS54において、頂点座標データ
cが最終レコードであれば、属性nと断面形状が同じ上
位属性は存在しないものとみなし、次に、d=1とおき
(図21、ステップS62)、属性nの配置位置データ
nを参照して、属性nの配置面情報を取得する(ステッ
プS63)。
【0091】そして、ファイル42内の上位属性dの配
置位置データdに記述された配置面情報と、属性nの配
置面情報を比較して(ステップS64)、配置面が一致
するかどうかを判定する(ステップS65)。それらが
一致しなければ、配置位置データdがファイル42内の
最終レコードかどうかを判定する(ステップS66)。
【0092】配置位置データdが最終レコードでなけれ
ば、d=d+1とおき(ステップS67)、ステップS
64以降の処理を繰り返す。そして、ステップS65に
おいて、配置面が一致すれば、次に、ファイル43内の
上位属性dの定義情報データdと定義情報データnとを
比較して(ステップS68)、それらが完全に一致する
かどうかを判定する(ステップS69)。定義情報デー
タnと定義情報データdが一致すれば、これらの属性n
と属性dは、同じ配置面上にある同じタイプおよび高さ
の形状を表すため、1つの属性に集約可能とみなす。
【0093】そこで、属性nの頂点座標データnを属性
dの追加情報として修正対象リスト23に出力し(ステ
ップS70)、属性nのデータテーブルを削除対象リス
ト22に出力する(ステップS71)。これにより、例
えば、図10のような関係にある2つの属性を1つに集
約することができる。そして、属性nのデータテーブル
をバッファ51、52、53からファイル41、42、
43に出力して(ステップS72)、ステップS41以
降の処理を行う。
【0094】ステップS66において、配置位置データ
dが最終レコードである場合、または、ステップS69
において、定義情報データnと定義情報データdが一致
しない場合は、属性nと同じ配置面上に属性nと同じタ
イプおよび高さの上位属性は存在しないものとみなす。
【0095】そこで、次に、配置位置データnを参照し
て、属性nの配置面を持つ上位属性eの情報を取得し
(図22、ステップS73)、定義情報データnを参照
して、属性nの高さhnを取得し(ステップS74)、
定義情報データeを参照して、属性eの高さheを取得
する(ステップS75)。そして、属性nと属性eの配
置面が一致するかどうかを判定する(ステップS7
6)。
【0096】配置面が一致すれば、次に、hn−heを
計算し、それが0かどうかを判定する(ステップS7
7)。hn−he=0でなければ、属性nと属性eは1
つに集約できないものとみなし、属性nのデータテーブ
ルをバッファ51、52、53からファイル41、4
2、43に出力して(ステップS78)、ステップS4
1以降の処理を行う。
【0097】hn−he=0であれば、属性nと属性e
は、少なくとも配置面と高さが一致しているため、1つ
に集約できる可能性がある。そこで、頂点座標データn
を参照して、属性nの断面積Anを算出し(ステップS
81)、ファイル41内の頂点座標データeを参照し
て、属性eの断面積Aeを算出して(ステップS8
2)、AnとAeを比較する(ステップS83)。図1
5の頂点座標データの場合は、{ }内の座標値のうち
X座標値とY座標値を用いて、断面積を計算することが
できる。
【0098】An<Aeであれば、属性nは属性eの断
面形状を変更する役割を果たしているものとみなし、頂
点座標データnを属性eの追加情報として修正対象リス
ト23に出力し(ステップS84)、属性nのデータテ
ーブルを削除対象リスト22に出力する(ステップS8
5)。これにより、例えば、図8のような関係にある2
つの属性を1つに集約することができる。そして、属性
nのデータテーブルをバッファ51、52、53からフ
ァイル41、42、43に出力して(ステップS8
6)、ステップS41以降の処理を行う。
【0099】また、An≧Aeであれば、属性nは属性
eを打ち消す役割を果たしているものとみなし、属性n
と属性eのデータテーブルを削除対象リスト22に出力
して(ステップS87)、ステップS86以降の処理を
行う。これにより、例えば、図9のような関係にある2
つの属性を削除することができる。
【0100】ステップS76において、配置面が一致し
なければ、次に、hn+heを計算し、それが0かどう
かを判定する(ステップS79)。hn+he=0でな
ければ、属性nと属性eは1つに集約できないものとみ
なし、属性nのデータテーブルをバッファ51、52、
53からファイル41、42、43に出力して(ステッ
プS80)、ステップS41以降の処理を行う。
【0101】hn+he=0であれば、属性nと属性e
は、少なくとも属性eの1つの面上で接しており、高さ
の絶対値が同じで符号が逆であるため、1つに集約でき
る可能性がある。そこで、ステップS81以降の処理を
行う。このような処理を繰り返し、ステップS41にお
いて属性nが最終属性となれば、処理を終了する。
【0102】図15のソリッドモデルデータの場合は、
まず、属性[1]のデータテーブルが読み込まれるが、
これは最初に生成されたベース属性であり、パターン属
性ではないので、冗長属性として検出されず、そのまま
ファイル41、42、43に出力される。次に、属性
[2]、[3]のデータテーブルが読み込まれるが、こ
れらも冗長属性として検出されず、そのままファイル4
1、42、43に出力される。
【0103】次に、属性[4]のデータテーブルが読み
込まれる。属性[4]の頂点座標データは属性[2]の
頂点座標データと一致するため、図19のステップS4
5の判定により検出され、これらの属性のデータテーブ
ルは削除対象リスト22に出力される。また、属性
[2]のデータテーブルはファイル41、42、43に
も出力される。次に、属性[5]のデータテーブルが読
み込まれるが、これは冗長属性として検出されず、その
ままファイル41、42、43に出力される。
【0104】次に、属性[6]のデータテーブルが読み
込まれる。属性[6]は、図18、19、20のいずれ
の処理においても冗長属性として検出されず、また、図
21のステップS65の判定においても、いずれの上位
属性とも配置面が一致しない。したがって、次に、図2
2のステップS73において、属性[6]の配置面を持
つ属性[5]の情報が取得され、ステップS74、S7
5において、属性[6]と属性[5]の高さhが取得さ
れる。
【0105】これらの属性の配置面は一致していないの
で、次に、ステップS79において、得られた2つの高
さhが加算され、加算結果が0になるかどうかがチェッ
クされる。ここでは、属性[6]の高さhが5であり、
属性[5]の高さhが−5であるので、加算結果は0と
なる。
【0106】そこで、次に、ステップS81、S82に
おいて、属性[6]と属性[5]の断面積が算出され
る。ここでは、属性[6]の断面形状は、一辺の長さが
30の正方形であるので、その面積Anは900とな
り、属性[5]の断面形状は、一辺の長さが50の正方
形であるので、その面積Aeは2500となる。したが
って、ステップS83において、An<Aeが成り立
つ。
【0107】そこで、ステップS84において、チェッ
ク中の属性[6]の頂点座標データが上位属性[5]の
追加情報として修正対象リスト23に出力され、属性
[6]は属性[5]に集約される。これにより、属性
[6]のデータテーブルは不要となるため、ステップS
85において、削除対象リスト22に出力される。こう
して、図16、17に示したような削除対象リストと修
正対象リストが作成される。
【0108】ところで、構造解析等に設計モデルを活用
する場合は、各属性の配置の基準位置を表す配置基準が
変更されても、特に問題はない。このような場合は、必
要に応じて配置基準を変更して、モデルを再構築する。
図14の例では、属性[3]の配置基準が属性[2]を
含んでいるため、このままでは属性[2]を削除するこ
とができない。しかし、配置基準を変更することで、属
性[2]と属性[4]を同時に削除することが可能にな
り、データ量をより圧縮できる。
【0109】新たな配置基準としては、例えば、削除さ
れない既存の属性を配置基準として用いたり、作業用の
擬似平面を定義したりすることが考えられる。図14に
おいては、ベース属性である属性[1]は削除されない
ので、これを属性[3]の配置基準として用いることが
できる。
【0110】また、図14において、XY平面、YZ平
面、およびZX平面を配置基準の擬似平面として用いる
場合は、これらの3つの平面を最初の3つの属性として
定義する。そして、後続するすべての属性の配置基準を
これらの擬似平面に設定すれば、属性間の依存関係(親
子関係)を完全に解除することができる。
【0111】構造最適化部14は、図16の削除対象リ
ストと図17の修正対象リストを参照しながら図13の
処理を行って、ソリッドモデルデータの属性番号順に属
性を再生する。まず、属性[1]は、どちらのリストに
も記述されていないので、そのまま再生され、属性
[2]は、削除対象リストに記述されているので、その
データはスキップされて、再生されない。
【0112】次に、属性[3]は、どちらのリストにも
記述されていないので、再生の対象となる。しかし、配
置基準である属性[2]が削除されているため、そのま
までは配置位置を設定することができない。
【0113】そこで、演算部15は、削除対象リストに
ある属性[2]の配置位置データと頂点座標データを用
いて、属性[3]の配置基準となっている属性[2]の
エッジと、既存の属性[1]のエッジとの距離を自動算
出する。そして、構造最適化部14は、計算結果を用い
て、配置基準を属性[2]のエッジから属性[1]のエ
ッジに変更する。このとき、属性番号が3から2に変更
される。
【0114】次に、属性[4]は、削除対象リストに記
述されているので再生されず、属性[5]は、修正対象
リストに記述されているので、そのままでは再生されな
い。ここでは、属性[5]自身の頂点座標データに、修
正対象リストに記述されている追加頂点データが付加さ
れ、変更された形状が再生される。このとき、属性番号
が5から3に変更される。
【0115】次に、属性[6]は、削除対象リストに記
述されているので、再生されない。したがって、最終的
には、図23に示すような3つの属性が残される。図2
3において、属性[1]は元の属性[1]に対応し、属
性[2]は配置位置が修正された元の属性[3]に対応
し、属性[3]は頂点座標が修正された元の属性[5]
に対応する。
【0116】ここでは、属性[3]の配置基準を属性
[1]に変更して再生しているが、上述のような作業平
面を配置基準として用いることもできる。この場合、演
算部15は、XYZ座標系の原点を基準として、3つの
擬似的な作業平面を自動的に定義し、これらの作業平面
と属性[3]の距離を自動算出する。そして、構造最適
化部14は、計算結果を用いて、属性[3]の配置基準
を作業平面に変更する。例えば、XY平面、YZ平面、
およびZX平面は、それぞれ、Z=0、X=0、Y=0
という簡単な情報により定義することができる。
【0117】この方法によれば、3つの作業平面が3つ
の擬似的な属性として追加されるため、最終的には6つ
の属性から成るソリッドモデルデータが出力される。し
かし、作業平面の属性は、頂点座標データ、配置位置デ
ータ、定義情報データを必要とせず、そのデータ量は非
常に小さいため、再生されたソリッドモデルのデータ量
は大幅に削減されている。
【0118】このように配置基準を変更することでソリ
ッドモデルデータを最適化することができるが、配置基
準が変更できない場合もあり得る。例えば、数値制御加
工装置(NCマシン)による製品加工において、製品の
形状を表すNCデータ作成用に設計モデルを活用する場
合は、配置基準が変更されると、装置の動作に問題が発
生する。
【0119】このような場合は、削除対象の属性と形状
/配置が同じ擬似的な補助線(カーブ)を定義し、この
補助線からの距離を設定して、配置基準を保持したまま
でモデルを再生することが望ましい。この方法では、本
来削除すべき属性を補助線で置き換えるため、上述の再
生例ほどのデータ圧縮率は望めない。しかし、補助線自
身のデータ量は元の属性に比べて少ないため、ある程度
のデータ圧縮が実現される。
【0120】この場合、構造最適化部14は、図16の
削除対象リストと図17の修正対象リストを参照しなが
ら、次のようにしてソリッドモデルデータを再生する。
まず、属性[1]は、どちらのリストにも記述されてい
ないので、そのまま再生され、属性[2]は、削除対象
リストに記述されているので、再生されない。
【0121】次に、属性[3]は、どちらのリストにも
記述されていないので、再生の対象となる。しかし、配
置基準である属性[2]が削除されているため、そのま
までは配置位置を設定することができない。
【0122】そこで、演算部15は、削除対象リストに
ある属性[2]の配置位置データと頂点座標データを用
いて、属性[3]の配置基準となっている属性[2]の
エッジを含む補助線を自動生成する。そして、構造最適
化部14は、計算結果を用いて、配置基準を属性[2]
のエッジから補助線に変更する。
【0123】これにより、図24に示すような補助線6
1が生成され、そのデータテーブルは、属性[2]の属
性番号を用いて、例えば、図25に示すように設定され
る。図25のデータテーブルと図15の属性[2]のデ
ータテーブルを比較すると、図25では頂点座標データ
の数が削減され、定義情報データが削除されていること
が分かる。補助線61は、属性[3]の配置基準として
必要な情報を保持しているため、属性[3]の配置位置
データは変更されない。
【0124】次に、属性[4]は、削除対象リストに記
述されているので再生されず、属性[5]は、修正対象
リストに記述されているので、そのままでは再生されな
い。ここでは、属性[5]自身の頂点座標データに、修
正対象リストに記述されている追加頂点データが付加さ
れ、変更された形状が再生される。このとき、属性番号
が5から4に変更される。また、属性[6]は、削除対
象リストに記述されているので、再生されない。したが
って、最終的には、補助線61を含めて4つの属性が残
される。
【0125】以上説明した実施形態においては、3次元
モデルの例としてソリッドモデルを用いているが、ワイ
ヤーフレームモデルやサーフェスモデル等の他の任意の
モデルについても、本発明を適用することが可能であ
る。また、削除対象リスト22には、必ずしも削除対象
の属性のデータテーブルを出力する必要はなく、その属
性の属性番号を出力するのみでもよい。
【0126】図2のモデル最適化装置は、例えば、図2
6に示すような情報処理装置(コンピュータ)を用いて
構成することができる。図26の情報処理装置は、CP
U(中央処理装置)71、メモリ72、入力装置73、
出力装置74、外部記憶装置75、媒体駆動装置76、
およびネットワーク接続装置77を備え、それらはバス
78により互いに接続されている。
【0127】メモリ72は、例えば、ROM(read onl
y memory)、RAM(random access memory)等を含
み、処理に用いられるプログラムとデータを格納する。
CPU71は、メモリ72を利用してプログラムを実行
することにより、必要な処理を行う。
【0128】図2の不要属性検出部12、構造最適化部
14、および演算部15は、プログラムにより記述され
たソフトウェアコンポーネントに対応し、メモリ72内
の特定のプログラムコードセグメントに格納される。ま
た、図2の記憶部13は、メモリ72内の特定の記憶領
域に対応する。
【0129】入力装置73は、例えば、キーボード、ポ
インティングデバイス、タッチパネル等であり、ユーザ
からの指示や情報の入力に用いられる。出力装置74
は、例えば、ディスプレイやプリンタ等であり、ユーザ
への問い合わせ、処理結果等の出力に用いられる。
【0130】外部記憶装置75は、例えば、磁気ディス
ク装置、光ディスク装置、光磁気ディスク(magneto-op
tical disk)装置等である。この外部記憶装置75に、
上述のプログラムとデータを保存しておき、必要に応じ
て、それらをメモリ72にロードして使用することもで
きる。また、外部記憶装置75は、ソリッドモデルデー
タを格納するデータベースの役割も果たす。
【0131】媒体駆動装置76は、可搬記録媒体79を
駆動し、その記録内容にアクセスする。可搬記録媒体7
9としては、メモリカード、フロッピーディスク、CD
−ROM(compact disk read only memory )、光ディ
スク、光磁気ディスク等、任意のコンピュータ読み取り
可能な記録媒体が用いられる。この可搬記録媒体79に
上述のプログラムとデータを格納しておき、必要に応じ
て、それらをメモリ72にロードして使用することもで
きる。
【0132】ネットワーク接続装置77は、LAN(lo
cal area network)等の任意のネットワーク(回線)を
介して外部の装置と通信し、通信に伴うデータ変換を行
う。また、必要に応じて、上述のプログラムとデータを
外部の装置から受け取り、それらをメモリ72にロード
して使用することもできる。
【0133】図27は、図26の情報処理装置にプログ
ラムとデータを供給することのできるコンピュータ読み
取り可能な記録媒体を示している。可搬記録媒体79や
外部のデータベース80に保存されたプログラムとデー
タは、メモリ72にロードされる。そして、CPU71
は、そのデータを用いてそのプログラムを実行し、必要
な処理を行う。
【0134】
【発明の効果】本発明によれば、データ量が小さく編集
自由度が高いソリッドモデルを自動的に構築することが
可能となる。これにより、ハードディスク等の資源の有
効活用が図られ、ディスプレイ上での表示速度も改善さ
れる。また、編集自由度が高いため、設計者が交替した
場合や第三者がモデルを用いた他の作業を行う場合で
も、モデルを容易に変更することができる。
【0135】さらに、埋め込み等の二重属性が自動的に
削除されるため、解析用のメッシュデータを作成する際
に、メッシュ分割の確実性が高まると同時に、微小形状
の生成を未然に防止することができる。したがって、解
析作業の作業時間が大幅に削減される。
【図面の簡単な説明】
【図1】本発明のモデル最適化装置の原理図である。
【図2】モデル最適化装置の構成図である。
【図3】第1の属性を示す図である。
【図4】第2の属性を示す図である。
【図5】ソリッドモデルデータの構造を示す図である。
【図6】第1の埋め込みを示す図である。
【図7】深さの変更を示す図である。
【図8】断面形状の変更を示す図である。
【図9】第2の埋め込みを示す図である。
【図10】高さが同じ複数の属性を示す図である。
【図11】不要属性検出部の処理のフローチャート(そ
の1)である。
【図12】不要属性検出部の処理のフローチャート(そ
の2)である。
【図13】構造最適化部の処理のフローチャートであ
る。
【図14】ソリッドモデルの例を示す図である。
【図15】第1のソリッドモデルデータを示す図であ
る。
【図16】削除対象リストを示す図である。
【図17】修正対象リストを示す図である。
【図18】検出処理のフローチャート(その1)であ
る。
【図19】検出処理のフローチャート(その2)であ
る。
【図20】検出処理のフローチャート(その3)であ
る。
【図21】検出処理のフローチャート(その4)であ
る。
【図22】検出処理のフローチャート(その5)であ
る。
【図23】第2のソリッドモデルデータを示す図であ
る。
【図24】補助線を示す図である。
【図25】補助線のデータを示す図である。
【図26】情報処理装置の構成図である。
【図27】記録媒体を示す図である。
【符号の説明】
1 検出手段 2 削減手段 3 構築手段 11 ソリッドモデル最適化装置 12 不要属性検出部 13 記憶部 14 構造最適化部 15 演算部 21 ソリッドモデルデータ 22 削除対象リスト 23 修正対象リスト 24 最適化ソリッドモデルデータ 25、26、27、28、31、32、33、34、3
5、37、38、39属性 36 配置面 41 頂点座標データファイル 42 配置位置データファイル 43 定義情報データファイル 51 頂点座標データバッファ 52 配置位置データバッファ 53 定義情報データバッファ 61 補助線 71 CPU 72 メモリ 73 入力装置 74 出力装置 75 外部記憶装置 76 媒体駆動装置 77 ネットワーク接続装置 78 バス 79 可搬記録媒体 80 データベース

Claims (13)

    (57)【特許請求の範囲】
  1. 【請求項1】 物体の3次元モデルを構成する複数の形
    状から1つ以上の冗長な形状を検出し、前記1つ以上の
    冗長な形状のうち削除すべき形状のリストである削除対
    象リストと、該1つ以上の冗長な形状のうち修正すべき
    形状のリストである修正対象リストとを生成する検出手
    段と、 前記1つ以上の冗長な形状に関する形状情報のうち、前
    記削除対象リストに含まれる形状の形状情報を削除し、
    前記修正対象リストに含まれる形状の形状情報を修正す
    ることで、該1つ以上の冗長な形状に関する形状情報
    削減する削減手段と、修正された形状情報と前記1つ以上の冗長な形状以外の
    形状の形状情報と を用いて、前記物体の3次元モデルを
    再構築する構築手段とを備えることを特徴とするモデル
    最適化装置。
  2. 【請求項2】 前記検出手段は、前記複数の形状から前
    記3次元モデルの外形に不要な形状を検出し、該不要な
    形状を前記削除対象リストに出力することを特徴とする
    請求項1記載のモデル最適化装置。
  3. 【請求項3】 前記検出手段は、外形情報が同じで互い
    に打ち消し合う2つの形状を検出し、該2つの形状を
    記削除対象リストに出力することを特徴とする請求項2
    記載のモデル最適化装置。
  4. 【請求項4】 前記検出手段は、外形情報が異なり互い
    に打ち消し合う2つの形状を検出し、該2つの形状を
    記削除対象リストに出力することを特徴とする請求項2
    記載のモデル最適化装置。
  5. 【請求項5】 前記検出手段は、前記複数の形状から1
    つの形状で表現できる2つ以上の形状を検出し、該2つ
    以上の形状のうちの1つを前記修正対象リストに出力
    し、該2つ以上の形状のうちの残りを前記削除対象リス
    トに出力することを特徴とする請求項1記載のモデル最
    適化装置。
  6. 【請求項6】 前記検出手段は、断面形状情報が同じ2
    つの形状を検出し、該2つの形状のうち一方の形状を前
    記削除対象リストに出力し、もう一方の形状を前記修正
    対象リストに出力することを特徴とする請求項5記載の
    モデル最適化装置。
  7. 【請求項7】 前記検出手段は、高さ情報が同じ2つの
    形状を検出し、該2つの形状のうち一方の形状を前記削
    除対象リストに出力し、もう一方の形状を前記修正対象
    リストに出力することを特徴とする請求項5記載のモデ
    ル最適化装置。
  8. 【請求項8】 前記検出手段は、配置面情報が同じで高
    さ情報が同じ2つ以上の形状を検出し、該2つ以上の形
    状のうちの1つを前記修正対象リストに出力し、該2つ
    以上の形状のうちの残りを前記削除対象リストに出力
    ることを特徴とする請求項5記載のモデル最適化装置。
  9. 【請求項9】 前記削減手段は、削除された形状情報に
    含まれる頂点座標情報と高さ情報のうち少なくとも一方
    を用いて、前記修正対象リストに含まれる形状の形状情
    報を修正することを特徴とする請求項記載のモデル最
    適化装置。
  10. 【請求項10】 前記構築手段は、前記残された形状情
    報に含まれる配置基準情報を必要に応じて変更する手段
    を含み、変更された配置基準情報を用いて前記3次元モ
    デルを再構築することを特徴とする請求項1記載のモデ
    ル最適化装置。
  11. 【請求項11】 前記構築手段は、前記残された形状情
    報に含まれる配置基準情報に対応する擬似的な形状を生
    成する手段を含み、該配置基準情報を変更することな
    く、該擬似的な形状を用いて前記3次元モデルを再構築
    することを特徴とする請求項1記載のモデル最適化装
    置。
  12. 【請求項12】 コンピュータのためのプログラムを記
    録した記録媒体であって、 物体の3次元モデルを構成する複数の形状から1つ以上
    の冗長な形状を検出し、前記1つ以上の冗長な形状のう
    ち削除すべき形状のリストである削除対象リストと、該
    1つ以上の冗長な形状のうち修正すべき形状のリストで
    ある修正対象リストとを生成するステップと、 前記1つ以上の冗長な形状に関する形状情報のうち、前
    記削除対象リストに含まれる形状の形状情報を削除し、
    前記修正対象リストに含まれる形状の形状情報を修正す
    ることで、該1つ以上の冗長な形状に関する形状情報を
    削減するステップと、修正された形状情報と前記1つ以上の冗長な形状以外の
    形状の形状情報と を用いて、前記物体の3次元モデルを
    再構築するステップとを含む処理を前記コンピュータに
    実行させるためのプログラムを記録したコンピュータ読
    み取り可能な記録媒体。
  13. 【請求項13】 検出手段、削減手段、および構築手段
    を備えるモデル最適化装置によるモデル最適化方法であ
    って、 前記検出手段が、 物体の3次元モデルを構成する複数の
    形状から1つ以上の冗長な形状を検出して、前記1つ以
    上の冗長な形状のうち削除すべき形状のリストである削
    除対象リストと、該1つ以上の冗長な形状のうち修正す
    べき形状のリストである修正対象リストとを生成し、前記削減手段が、 前記1つ以上の冗長な形状に関する形
    状情報のうち、前記削除対象リストに含まれる形状の形
    状情報を削除し、前記修正対象リストに含まれる形状の
    形状情報を修正することで、該1つ以上の冗長な形状に
    関する形状情報を削減し、前記構築手段が、修正された形状情報と前記1つ以上の
    冗長な形状以外の形状の形状情報と を用いて、前記物体
    の3次元モデルを再構築することを特徴とするモデル最
    適化方法。
JP19845398A 1998-07-14 1998-07-14 3次元モデルの最適化装置および方法 Expired - Fee Related JP3370605B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP19845398A JP3370605B2 (ja) 1998-07-14 1998-07-14 3次元モデルの最適化装置および方法
US09/731,799 US7103516B2 (en) 1998-07-14 2000-12-08 Apparatus and method for optimizing three-dimensional model

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP19845398A JP3370605B2 (ja) 1998-07-14 1998-07-14 3次元モデルの最適化装置および方法

Publications (2)

Publication Number Publication Date
JP2000030085A JP2000030085A (ja) 2000-01-28
JP3370605B2 true JP3370605B2 (ja) 2003-01-27

Family

ID=16391367

Family Applications (1)

Application Number Title Priority Date Filing Date
JP19845398A Expired - Fee Related JP3370605B2 (ja) 1998-07-14 1998-07-14 3次元モデルの最適化装置および方法

Country Status (2)

Country Link
US (1) US7103516B2 (ja)
JP (1) JP3370605B2 (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6992680B1 (en) * 1998-06-01 2006-01-31 Autodesk, Inc. Dynamic positioning and alignment aids for shape objects
JP3564371B2 (ja) * 2000-09-01 2004-09-08 日本電気株式会社 図形編集装置及び方法
KR100507778B1 (ko) * 2002-09-19 2005-08-17 한국전자통신연구원 셀룰러 토폴로지 기반의 프로그레시브 솔리드 모델 생성장치 및 그 방법
JP4533056B2 (ja) * 2004-09-08 2010-08-25 株式会社ブリヂストン タイヤモデル、車体モデル、タイヤの挙動解析方法、プログラム及び記録媒体
JP4654020B2 (ja) * 2004-12-21 2011-03-16 富士通株式会社 メッシュデータ作成装置,メッシュデータ作成プログラム,同プログラムを記録したコンピュータ読取可能な記録媒体及びメッシュデータ作成方法並びに構造解析装置
US7853940B1 (en) * 2006-01-30 2010-12-14 Dassault Systemes Solidworks Corporation Creating a reference using tracking data
JP2010009394A (ja) * 2008-06-27 2010-01-14 Toshiba Corp 設計履歴修正装置、および設計履歴修正方法
US8250482B2 (en) * 2009-06-03 2012-08-21 Smart Technologies Ulc Linking and managing mathematical objects
US20130046511A1 (en) * 2011-08-15 2013-02-21 Honeywell International Inc. Method, apparatus and computer program product for simplifying a representative of a computer-aided design model
US10176291B2 (en) * 2012-07-06 2019-01-08 Siemens Product Lifecycle Management Software Inc. Ordering optional constraints in a variational system
GB2569342B (en) * 2017-12-14 2019-12-11 Imagination Tech Ltd Multi-view Primitive blocks
JP7397203B2 (ja) 2020-07-20 2023-12-12 株式会社Fuji 設計支援装置および設計支援システム

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR920006291B1 (ko) * 1988-04-07 1992-08-03 마쓰시다 덴끼 산교오 가부시끼가이샤 솔리드. 모델링(Solid. modeling)방법
US5452238A (en) * 1989-06-13 1995-09-19 Schlumberger Technology Corporation Method for solving geometric constraint systems
JPH03194656A (ja) * 1989-12-22 1991-08-26 Nec Corp Cad装置
US5448696A (en) * 1990-11-30 1995-09-05 Hitachi, Ltd. Map information system capable of displaying layout information
US5448652A (en) * 1991-09-27 1995-09-05 E. I. Du Pont De Nemours And Company Adaptive display system
US6058209A (en) * 1991-09-27 2000-05-02 E. I. Du Pont De Nemours And Company Method for resolving redundant identifications of an object
US5617520A (en) * 1992-07-10 1997-04-01 Fujitsu Limited Three-dimensional pattern editing apparatus having moving distance calculator and/or a dragging pattern holding unit
JPH0660153A (ja) 1992-08-12 1994-03-04 Nippon Steel Corp 3次元図形データの生成方法
EP0621545A3 (en) * 1993-04-21 1995-12-13 Hitachi Ltd Computer-aided design and manufacturing system for component arrangement and pipe laying planning.
JP3059867B2 (ja) * 1993-08-06 2000-07-04 トヨタ自動車株式会社 ソリッドモデル修正方法およびソリッドモデル生成装置
CA2129477C (en) * 1993-08-06 1999-07-06 Koichi Nishizaka Method of generating or modifying solid model of an object and apparatus suitable for practicing the method
JP3599360B2 (ja) * 1993-08-25 2004-12-08 キヤノン株式会社 形状モデリング装置及び形状モデリング方法
JPH0773341A (ja) * 1993-09-06 1995-03-17 Sekisui Chem Co Ltd 3次元ソリッドモデリング装置
JPH07200873A (ja) * 1993-12-27 1995-08-04 Mutoh Ind Ltd 3次元モデルの作成方法
US5506947A (en) * 1994-09-22 1996-04-09 International Business Machines Corporation Curve and surface smoothing without shrinkage
GB2295701B (en) * 1994-11-29 1997-06-25 Honda Motor Co Ltd Method for machining a product die
US5694484A (en) * 1995-05-15 1997-12-02 Polaroid Corporation System and method for automatically processing image data to provide images of optimal perceptual quality
JPH08335279A (ja) * 1995-06-08 1996-12-17 Olympus Optical Co Ltd 設計支援システム
US5764814A (en) * 1996-03-22 1998-06-09 Microsoft Corporation Representation and encoding of general arbitrary shapes
US5806521A (en) * 1996-03-26 1998-09-15 Sandia Corporation Composite ultrasound imaging apparatus and method
JPH09282486A (ja) * 1996-04-12 1997-10-31 Mitsubishi Electric Corp 画像処理装置
US5894310A (en) * 1996-04-19 1999-04-13 Visionary Design Systems, Inc. Intelligent shapes for authoring three-dimensional models
US5982951A (en) * 1996-05-28 1999-11-09 Canon Kabushiki Kaisha Apparatus and method for combining a plurality of images
US5754738A (en) * 1996-06-07 1998-05-19 Camc Corporation Computerized prototyping system employing virtual system design enviroment
US5970490A (en) * 1996-11-05 1999-10-19 Xerox Corporation Integration platform for heterogeneous databases
US6208347B1 (en) * 1997-06-23 2001-03-27 Real-Time Geometry Corporation System and method for computer modeling of 3D objects and 2D images by mesh constructions that incorporate non-spatial data such as color or texture
US6020972A (en) * 1997-11-14 2000-02-01 Xerox Corporation System for performing collective symbol-based compression of a corpus of document images
CN1214614C (zh) * 1998-04-10 2005-08-10 株式会社理光 图像处理方法、图像处理装置及记录媒体
US6285372B1 (en) * 1998-05-08 2001-09-04 Lawrence C. Cowsar Multiresolution adaptive parameterization of surfaces
US6583813B1 (en) * 1998-10-09 2003-06-24 Diebold, Incorporated System and method for capturing and searching image data associated with transactions
JP4332649B2 (ja) * 1999-06-08 2009-09-16 独立行政法人情報通信研究機構 手の形状と姿勢の認識装置および手の形状と姿勢の認識方法並びに当該方法を実施するプログラムを記録した記録媒体
JP4034583B2 (ja) * 2002-03-28 2008-01-16 富士通株式会社 Cad用解析結果データ処理装置及びcad用解析結果データ処理方法並びにcad用解析結果データ処理プログラム

Also Published As

Publication number Publication date
US7103516B2 (en) 2006-09-05
US20010000963A1 (en) 2001-05-10
JP2000030085A (ja) 2000-01-28

Similar Documents

Publication Publication Date Title
US7751917B2 (en) Optimisation of the design of a component
JP3241266B2 (ja) 3次元cadシステム
US6727898B2 (en) Numerical analysis mesh generating method and apparatus
US5844563A (en) Method and system for indexing three-dimensional solid model data based upon modification history
JP3370605B2 (ja) 3次元モデルの最適化装置および方法
Choi et al. A tolerant slicing algorithm for layered manufacturing
KR20140139984A (ko) 3d 모델링된 오브젝트의 압축 및 압축해제
US7054800B2 (en) Analysis model data creating method and apparatus, and recording medium having analysis model data creating program recorded theron
JP3759356B2 (ja) 3次元モデル管理装置
US5812137A (en) Compliant sectioning facility for interactive sectioning of solid geometric objects using a graphics processor
JP3265879B2 (ja) 3次元直交格子データの生成装置
JP3391250B2 (ja) 型設計システムおよび記憶媒体
JP3310335B2 (ja) 3次元グラフイック表示機能を有する数値制御装置
JP2000194881A (ja) 解析モデルを作成する方法および装置並びに解析モデルデータ作成用プログラム若しくは解析モデルデータを記憶した記憶媒体
JP2660490B2 (ja) 図面候補線分抽出装置、図面候補線分抽出方法、ソリッド・モデル合成装置及びソリッド・モデル合成方法
Cignoni et al. Zeta: A resolution modeling system
JP4680364B2 (ja) 設計支援システム
JP2800708B2 (ja) Fem解析モデルのメッシュ修正方法
JP2002207777A (ja) 中立面モデルの生成方法
JP2004272820A (ja) 部品をリバースエンジニアリング及びリエンジニアリングする方法及びシステム
JP3815909B2 (ja) 有穴ポリゴンのブリッジ生成システム、有穴ポリゴンのブリッジ生成方法およびその方法を実行させるための記録媒体
JPH0798774A (ja) 3次元オブジェクト表示装置
JP4133727B2 (ja) 図形データ変換方法及びプログラム、並びにデータ構造
JPH0744734A (ja) 三次元cadシステムにおける要素集合体編集方式
JPH0668217A (ja) 数値解析用メッシュ作成システム

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20021105

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081115

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081115

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091115

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101115

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101115

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111115

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111115

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121115

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121115

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131115

Year of fee payment: 11

LAPS Cancellation because of no payment of annual fees