JPH07104961B2 - 3次元図形処理方法及びその装置 - Google Patents
3次元図形処理方法及びその装置Info
- Publication number
- JPH07104961B2 JPH07104961B2 JP62009333A JP933387A JPH07104961B2 JP H07104961 B2 JPH07104961 B2 JP H07104961B2 JP 62009333 A JP62009333 A JP 62009333A JP 933387 A JP933387 A JP 933387A JP H07104961 B2 JPH07104961 B2 JP H07104961B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- cell
- shape
- storage device
- dimensional
- 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 - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three-dimensional [3D] modelling for computer graphics
- G06T17/10—Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/60—Analysis of geometric attributes
- G06T7/62—Analysis of geometric attributes of area, perimeter, diameter or volume
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Geometry (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Generation (AREA)
Description
【発明の詳細な説明】 産業上の利用分野 本発明は計算機を用いた数値解析、特に流体解析などに
おいて解析空間内における形状データが必要とされる
が、このような形状データの生成を自動化する3次元図
形処理方法および装置に関する。
おいて解析空間内における形状データが必要とされる
が、このような形状データの生成を自動化する3次元図
形処理方法および装置に関する。
従来の技術 近年、流体解析は航空・宇宙,自動車,空調などの分野
において重要な位置を占めつつある。そして、そのニー
ズも急速に拡大しつつある。このようなニーズに答える
ためにいろいろな流体解析ソフトウェアが発表・提供さ
れている。
において重要な位置を占めつつある。そして、そのニー
ズも急速に拡大しつつある。このようなニーズに答える
ためにいろいろな流体解析ソフトウェアが発表・提供さ
れている。
ところで、差分法を用いた流体解析では次に示すような
手順で解析空間内における形状データ(固体形状)を作
成する必要がある。この手順を第2図を用いて順をおっ
て説明する。
手順で解析空間内における形状データ(固体形状)を作
成する必要がある。この手順を第2図を用いて順をおっ
て説明する。
(手順1) はじめに、解析しようとする空間内における固体形状
(形状データ)10をなんらかの形で定義する(第2図
a)。
(形状データ)10をなんらかの形で定義する(第2図
a)。
(手順2) 次に、この解析空間を適当な間隔で格子分割する(第2
図b)。この格子分割により生成される直方体11を解析
セルあるいは単にセルと呼ぶ。また、このセルである直
方体を構成する6つの面12,13,14をセル面と呼び、この
セル面のうちx軸,y軸,z軸に垂直なものをそれぞれセル
x面12,セルy面13,セルz面14と呼ぶ。
図b)。この格子分割により生成される直方体11を解析
セルあるいは単にセルと呼ぶ。また、このセルである直
方体を構成する6つの面12,13,14をセル面と呼び、この
セル面のうちx軸,y軸,z軸に垂直なものをそれぞれセル
x面12,セルy面13,セルz面14と呼ぶ。
(手順3) 次に、このそれぞれのセル11およびセル面12,13,14に形
状10がどれくらいかかっているかを計算する。すなわ
ち、セル(直方体)内部11に形状10が占める体積の比
率、およびセル面(長方形)12,13,14に形状10が交わっ
ている部分の面積の比率を求める。これらの体積比・面
積比を開口率と呼ぶ。
状10がどれくらいかかっているかを計算する。すなわ
ち、セル(直方体)内部11に形状10が占める体積の比
率、およびセル面(長方形)12,13,14に形状10が交わっ
ている部分の面積の比率を求める。これらの体積比・面
積比を開口率と呼ぶ。
以上が、差分法を用いた流体解析における形状データの
作成手順である。このように流体解析ではすべての解析
セルにおける開口率の算出が前処理として必要である。
作成手順である。このように流体解析ではすべての解析
セルにおける開口率の算出が前処理として必要である。
従来このような開口率を求めるためには、第2図cのよ
うなセル断面図を作成して一つ一つのセルの開口率を作
業者がその形状の状態を判断して個別に手計算している
のが現状であった。あるいは、形状が直方体,円柱の重
ね合せで構成されているといった比較的単純なあるいは
規則性のある場合は専用の処理プログラムにより開口率
が自動計算されてきた。
うなセル断面図を作成して一つ一つのセルの開口率を作
業者がその形状の状態を判断して個別に手計算している
のが現状であった。あるいは、形状が直方体,円柱の重
ね合せで構成されているといった比較的単純なあるいは
規則性のある場合は専用の処理プログラムにより開口率
が自動計算されてきた。
解析セルとしては、直交メッシュにより生成される直方
体セルに関して述べてきたが、このほかにも、第3図
(a)に示すような円筒座標系上でメッシュ分割されて
生成されるセルもある。
体セルに関して述べてきたが、このほかにも、第3図
(a)に示すような円筒座標系上でメッシュ分割されて
生成されるセルもある。
このような場合のセルの形状は第3図(b)に示すよう
な円筒セル15となる。この円筒セル15を構成する表面の
なかで、z軸と垂直な扇形の平面をセルz面16,z軸を回
転の中心とする円筒面をセルr面17,z軸と平行な平面を
セルθ面18とそれぞれ呼ぶ。
な円筒セル15となる。この円筒セル15を構成する表面の
なかで、z軸と垂直な扇形の平面をセルz面16,z軸を回
転の中心とする円筒面をセルr面17,z軸と平行な平面を
セルθ面18とそれぞれ呼ぶ。
このような円筒セル15における開口率を求めることは直
方体セルに比べて一段とむずかしく手間のかかる作業と
なる。このように円筒セルに対しても、開口率計算にお
いて汎用性のある有効なツールは発表・提供されていな
い。
方体セルに比べて一段とむずかしく手間のかかる作業と
なる。このように円筒セルに対しても、開口率計算にお
いて汎用性のある有効なツールは発表・提供されていな
い。
発明が解決しようとする問題点 このように、従来は開口率をどのような形状でも自動計
算のできる汎用性のある方法がなく、ある特定の比較的
単純な形状の開口率しか自動算出できなかった。
算のできる汎用性のある方法がなく、ある特定の比較的
単純な形状の開口率しか自動算出できなかった。
そこで、本発明はどのような形状においても対応でき、
開口率を精度よく自動計算できる3次元図形処理方法お
よびそれを用いた装置を提供するものである。
開口率を精度よく自動計算できる3次元図形処理方法お
よびそれを用いた装置を提供するものである。
また、解析の精度を向上させるためには解析セルを小さ
くする必要があるが、このような場合には解析空間内に
おける解析セルの数は非常に多くなる。このような場合
には、開口率を求める計算時間も大きな課題である。上
記したように、手作業や個別の専用処理プログラムにた
よっていると、非常に手間がかかりデータ作成効率が悪
いという欠点を有していた。
くする必要があるが、このような場合には解析空間内に
おける解析セルの数は非常に多くなる。このような場合
には、開口率を求める計算時間も大きな課題である。上
記したように、手作業や個別の専用処理プログラムにた
よっていると、非常に手間がかかりデータ作成効率が悪
いという欠点を有していた。
問題点を解決するための手段 本発明は、上記問題点を解消するため、3次元形状を所
定の空間座標系に基づいて、所定の3次元要素形状の集
合体として形成し、これらの要素形状を記憶装置に記憶
するステップ、前記記憶装置から前記3次元要素形状デ
ータを順次読み出すステップ、前記空間座標系上の適当
な位置に格子分割された基準平面を設定し、それぞれの
格子点においてこの基準平面との垂線を作成し、この垂
線が前記3次元要素形状と交わる交線データを求めるス
テップ、前記交線データを前記3次元要素形状の形状表
現データとして交線データ記憶装置に順次記憶するステ
ップ、前記交線データにおいて複数の交線データが重な
っている場合にこれらの直線を結合して1つの交線デー
タを生成するステップ、前記3次元形状を含む空間を適
当なセルに分割してセルデータとして記憶装置に記憶す
るステップ、前記交線データと前記セルデータを記憶装
置から順次読み出し、このセルと交線データが交わって
いる部分の線分の長さを求め順次加算していくことによ
り、このセル内部に交線データの集合体として表現され
ている前記3次元形状が占める体積および体積比を求
め、これらの値を記憶装置に記憶するステップを備えた
ものである。
定の空間座標系に基づいて、所定の3次元要素形状の集
合体として形成し、これらの要素形状を記憶装置に記憶
するステップ、前記記憶装置から前記3次元要素形状デ
ータを順次読み出すステップ、前記空間座標系上の適当
な位置に格子分割された基準平面を設定し、それぞれの
格子点においてこの基準平面との垂線を作成し、この垂
線が前記3次元要素形状と交わる交線データを求めるス
テップ、前記交線データを前記3次元要素形状の形状表
現データとして交線データ記憶装置に順次記憶するステ
ップ、前記交線データにおいて複数の交線データが重な
っている場合にこれらの直線を結合して1つの交線デー
タを生成するステップ、前記3次元形状を含む空間を適
当なセルに分割してセルデータとして記憶装置に記憶す
るステップ、前記交線データと前記セルデータを記憶装
置から順次読み出し、このセルと交線データが交わって
いる部分の線分の長さを求め順次加算していくことによ
り、このセル内部に交線データの集合体として表現され
ている前記3次元形状が占める体積および体積比を求
め、これらの値を記憶装置に記憶するステップを備えた
ものである。
また、第2の発明では、第1の発明における体積および
体積比を求めるステップにかえて、前記交線データと前
記セルデータを記憶装置から順次読み出し、セルを構成
している面と、形状を表現している交線データとの交点
を求め、この交点の数を加算していくことによって、こ
のセルの表面と交線データとして表現されている形状が
交わっている部分の面積および面積比を求め、これらの
値を記憶装置に記憶するステップを有するものである。
体積比を求めるステップにかえて、前記交線データと前
記セルデータを記憶装置から順次読み出し、セルを構成
している面と、形状を表現している交線データとの交点
を求め、この交点の数を加算していくことによって、こ
のセルの表面と交線データとして表現されている形状が
交わっている部分の面積および面積比を求め、これらの
値を記憶装置に記憶するステップを有するものである。
作用 本発明は上記した構成によって、第4図に図示している
ように、任意の3次元形状(第4図の例では円柱)20
を、格子分割された基準平面上21のすべての格子点に立
てられた垂線(以下スキャニングラインという)22とこ
の形状20との交線(以下ランレングスデータという)23
を求めることにより、この交線の始点24および終点25デ
ータで近似表面することができる。
ように、任意の3次元形状(第4図の例では円柱)20
を、格子分割された基準平面上21のすべての格子点に立
てられた垂線(以下スキャニングラインという)22とこ
の形状20との交線(以下ランレングスデータという)23
を求めることにより、この交線の始点24および終点25デ
ータで近似表面することができる。
このランレングスデータ23と解析セル26およびセル面27
との交線および交点を順次求めることによりセルおよび
セル面の内部に形状が占める部分の体積および面積を求
めることができる。そして、これらの体積および面積の
値をセルの体積およびセル面の面積で除算することによ
り開口率を求めることができる。
との交線および交点を順次求めることによりセルおよび
セル面の内部に形状が占める部分の体積および面積を求
めることができる。そして、これらの体積および面積の
値をセルの体積およびセル面の面積で除算することによ
り開口率を求めることができる。
また、上記の図形処理方法は各セルごとに完全に並列に
処理できるので、複数のマイクロプロセッサーユニット
(以下MPUという)にセルを分配して開口率の計算を並
列に行うことができる(第4図b)。これにより、開口
率の計算時間を大幅に短縮することができる。
処理できるので、複数のマイクロプロセッサーユニット
(以下MPUという)にセルを分配して開口率の計算を並
列に行うことができる(第4図b)。これにより、開口
率の計算時間を大幅に短縮することができる。
実 施 例 本発明の第1の実施例について図面を用いて詳しく説明
する。第1の実施例は解析セルとして直方体を用いる場
合である。
する。第1の実施例は解析セルとして直方体を用いる場
合である。
本発明の第1の実施例におけるシステムの全体構成図は
第1図のようである。このシステムは図示しているよう
に、外部コンピュータなどの外部装置から送られてくる
形状定義データであるプリミティブデータ(直方体,円
柱,円すい,球などの3次元要素形状データ)を受けと
るあるいは本装置により求められた開口率データを外部
装置へ送るための通信インターフェイス1、このシステ
ム全体を管理するメインMPU2、外部から送られてきたプ
リミティブデータを記憶するエレメントバッファ3、セ
ル分割データを記憶するセルデータメモリ4、エレメン
トバッファからプリミティブデータを取り出し割り当て
られた解析空間内における3次元ランレングスデータを
生成しこのランレングスデータから各解析セルにおける
開口率を計算する複数の開口率計算装置5から構成され
ている。また、この開口率計算装置5は演算処理をする
サブMPU6、生成された3次元ランレングスデータを記憶
するランレングスバッファ7、および開口率を記憶する
サブセルデータメモリ8から構成されている。
第1図のようである。このシステムは図示しているよう
に、外部コンピュータなどの外部装置から送られてくる
形状定義データであるプリミティブデータ(直方体,円
柱,円すい,球などの3次元要素形状データ)を受けと
るあるいは本装置により求められた開口率データを外部
装置へ送るための通信インターフェイス1、このシステ
ム全体を管理するメインMPU2、外部から送られてきたプ
リミティブデータを記憶するエレメントバッファ3、セ
ル分割データを記憶するセルデータメモリ4、エレメン
トバッファからプリミティブデータを取り出し割り当て
られた解析空間内における3次元ランレングスデータを
生成しこのランレングスデータから各解析セルにおける
開口率を計算する複数の開口率計算装置5から構成され
ている。また、この開口率計算装置5は演算処理をする
サブMPU6、生成された3次元ランレングスデータを記憶
するランレングスバッファ7、および開口率を記憶する
サブセルデータメモリ8から構成されている。
次に、本装置の機能について詳しく説明する。第5図に
図示しているように解析空間内における固体形状(形状
データ)30はプリミティブ31の集合体あるいはプリミテ
ィブの形状演算により定義される(第5図b)。そし
て、この定義されたプリミティブデータは通信インター
フェイス1を通じてエレメントバッファ3に記憶され
る。また、解析空間を格子分割したセル分割データおよ
びどのセルをどの開口率計算装置5に分配するかといっ
たセル分配データは通信インターフェイス1を通じてセ
ルメモリ4に記憶される。
図示しているように解析空間内における固体形状(形状
データ)30はプリミティブ31の集合体あるいはプリミテ
ィブの形状演算により定義される(第5図b)。そし
て、この定義されたプリミティブデータは通信インター
フェイス1を通じてエレメントバッファ3に記憶され
る。また、解析空間を格子分割したセル分割データおよ
びどのセルをどの開口率計算装置5に分配するかといっ
たセル分配データは通信インターフェイス1を通じてセ
ルメモリ4に記憶される。
本実施例では、たとえば第5図cのように解析空間は空
間分割され各開口率計算装置5に分配される。すなわ
ち、空間1は開口率計算装置1(MPU1)、空間2は開口
率計算装置2(MPU2)、空間3は開口率計算装置3(MP
U3)というふうに順次割り当てられる。
間分割され各開口率計算装置5に分配される。すなわ
ち、空間1は開口率計算装置1(MPU1)、空間2は開口
率計算装置2(MPU2)、空間3は開口率計算装置3(MP
U3)というふうに順次割り当てられる。
したがって、セル分割データとしてはXi(i=0,1,2,
…,nx),Yi(i=0,1,2,…,ny),Zi(i=0,1,2,…,
nz)の値がセルデータメモリ4に送られる。また、セル
分配データとしてはZi(i=0,1,…,n)の値がセルデー
タメモリ4に送られる。
…,nx),Yi(i=0,1,2,…,ny),Zi(i=0,1,2,…,
nz)の値がセルデータメモリ4に送られる。また、セル
分配データとしてはZi(i=0,1,…,n)の値がセルデー
タメモリ4に送られる。
この実施例ではZ軸方向でセル分配したがX軸方向でも
Y軸方向でもあるいはその他の方法でもさしつかえな
い。
Y軸方向でもあるいはその他の方法でもさしつかえな
い。
次に、メインMPU2によって、このセルデータとプリミテ
ィブデータはそれぞれセルデータメモリ4とエレメント
バッファ3から取り出されて各開口率計算装置5へ送ら
れる。このとき、プリミティブデータはすべての開口率
計算装置5へ順次送られるが、セル分割データはセル分
配データにより各開口率計算装置5に必要なセル分割デ
ータのみがメインMPU2により送られる。すなわち、開口
率計算装置j(j=1,2,…,n)にはセル分割データとし
て Xi(i=0,1,2,…,nx),Yi(i=0,1,2,…,ny),Zi(
j-1≦Zi≦j)が送られる。
ィブデータはそれぞれセルデータメモリ4とエレメント
バッファ3から取り出されて各開口率計算装置5へ送ら
れる。このとき、プリミティブデータはすべての開口率
計算装置5へ順次送られるが、セル分割データはセル分
配データにより各開口率計算装置5に必要なセル分割デ
ータのみがメインMPU2により送られる。すなわち、開口
率計算装置j(j=1,2,…,n)にはセル分割データとし
て Xi(i=0,1,2,…,nx),Yi(i=0,1,2,…,ny),Zi(
j-1≦Zi≦j)が送られる。
次に、開口率計算装置5側の処理について詳しく説明す
る。まず、開口率計算装置5にはセル分割データがメイ
ンMPU2から送られてくる。そして、これらのデータはサ
ブセルデータメモリ8に記憶される。これにより各開口
率計算装置が受け持つべき解析空間が決定されたことに
なる。
る。まず、開口率計算装置5にはセル分割データがメイ
ンMPU2から送られてくる。そして、これらのデータはサ
ブセルデータメモリ8に記憶される。これにより各開口
率計算装置が受け持つべき解析空間が決定されたことに
なる。
次に、プリミティブデータが順次エレメントバッファか
らメインMPU2によって取り出され各開口率計算装置5に
送られる。そして、開口率計算装置5ではこれらのプリ
ティブデータをサブMPU6が順次受け取り、3次元ランレ
ングスデータに変換してランレングスバッファ7に記憶
する。このプリミティブ・ランレングスデータ変換の処
理について第6図のフローチャートを用いて詳しく説明
する。この実施例ではスキャニングライン(ランレング
スデータの方向)はY軸方向となっている。
らメインMPU2によって取り出され各開口率計算装置5に
送られる。そして、開口率計算装置5ではこれらのプリ
ティブデータをサブMPU6が順次受け取り、3次元ランレ
ングスデータに変換してランレングスバッファ7に記憶
する。このプリミティブ・ランレングスデータ変換の処
理について第6図のフローチャートを用いて詳しく説明
する。この実施例ではスキャニングライン(ランレング
スデータの方向)はY軸方向となっている。
まず、エレメントバッファ3から順次プリミティブをサ
ブMPU6に読み込む(ステップ40)。このとき、データの
終わりであれば処理を終了する。そうでなければ読み込
んだプリミティブが占めるx座標およびz座標の範囲x
min,xmax,zmin,zmaxを求める(ステップ41)。次に、こ
のxmin,xmax,zmin,zmaxとサブMPU6が担当する解析空間
(形状空間)を比較し、プリミティブが形状空間内にま
ったく存在しないのであれば次のプリミティブを読み込
む処理に移る。一部分でも存在するのであればxmin,x
max,zmin,zmaxが形状空間内におさまるように修正す
る、全部が含まれるのであれば次の処理へ進む(ステッ
プ42,43)。次に、xmin≦x≦xmax,zmin≦z≦zmaxを満
たすすべてのスキャンニングライン(z,x)についてプ
リミティブとの交線(y1,y2)を求め(ステップ44)、
ランレングスバッファ7へ書き込む(ステップ45)。こ
のとき、すでにランレングスバッファ上に書き込まれて
いるランレングスデータと比較して重なり合う場合は結
合して1つのランレングスデータとする。
ブMPU6に読み込む(ステップ40)。このとき、データの
終わりであれば処理を終了する。そうでなければ読み込
んだプリミティブが占めるx座標およびz座標の範囲x
min,xmax,zmin,zmaxを求める(ステップ41)。次に、こ
のxmin,xmax,zmin,zmaxとサブMPU6が担当する解析空間
(形状空間)を比較し、プリミティブが形状空間内にま
ったく存在しないのであれば次のプリミティブを読み込
む処理に移る。一部分でも存在するのであればxmin,x
max,zmin,zmaxが形状空間内におさまるように修正す
る、全部が含まれるのであれば次の処理へ進む(ステッ
プ42,43)。次に、xmin≦x≦xmax,zmin≦z≦zmaxを満
たすすべてのスキャンニングライン(z,x)についてプ
リミティブとの交線(y1,y2)を求め(ステップ44)、
ランレングスバッファ7へ書き込む(ステップ45)。こ
のとき、すでにランレングスバッファ上に書き込まれて
いるランレングスデータと比較して重なり合う場合は結
合して1つのランレングスデータとする。
以上の処理をすべてのプリミティブについて行う。
以上がプリミティブ・ランレングスデータ変換の処理内
容である。このようにして生成されたランレングスデー
タは第7図に示すようなデータ構造でランレングスバッ
ファに記憶される。このように、ランレングスデータは
コンピュータ処理に非常に適した固定長のリスト構造デ
ータとして表現できるので処理が高速で効率よく行なえ
る。
容である。このようにして生成されたランレングスデー
タは第7図に示すようなデータ構造でランレングスバッ
ファに記憶される。このように、ランレングスデータは
コンピュータ処理に非常に適した固定長のリスト構造デ
ータとして表現できるので処理が高速で効率よく行なえ
る。
次の処理ステップはランレングスデータから開口率を求
めることである。この処理内容について第8図のフロー
チャートを用いて詳しく説明する。
めることである。この処理内容について第8図のフロー
チャートを用いて詳しく説明する。
まず、セルiに形状が占める体積Vi(i=0,1,2,…,i
max),セルx面iに形状が交わる面積Sxi(i=0,1,2,
…,jmax),セルy面iに形状が交わる面積Syi(i=0,
1,2,…,kmax),セルz面iに形状が交わる面積Szi(i
=0,1,2,…,lmax)をすべて0に初期設定する(ステッ
プ60)。次にランレングスデータ(z,x,y1,y2)を読み
込む(ステップ61)。このとき、データが終わりであれ
ばステップ77へ処理を移す。そして、ステップ62,63,6
4,65においてすべてのセルi(i=0,1,…,imax)とこ
のランレングスデータ(z,x,y1,y2)との交差関係を判
定し交わるのであればその交線の長さLを求めてViに加
える。次に、ステップ66,67,68,68,69においてすべての
セルx面i(i=0,1,…imax)とランレングスデータ
(z,x,y1,y2)との交差関係を判定し交わるのであれば
その交線の長さLを求めてSxiに加える(セルx面とラ
ンレングスデータは平行である)。次に、ステップ70,7
1,72においてすべてのセルy面i(i=0,1,…,kmax)
とランレングスデータ(z,x,y1,y2)との交差関係を判
定し交わるのであればSyiに1を加える(セルy面とラ
ンレングスデータは垂直である)。次に、ステップ73,7
4,75,76においてすべてのセルz面i(i=0,1,…,
lmax)とランレングスデータ(z,x,y1,y2)との交差関
係を判定し交わるのであればその交線の長さLを求めて
Sziに加える(セルz面とランレングスデータは平行で
ある)。以上のステップ61からステップ76の処理をすべ
てのランレングスデータについて行う。これにより、セ
ルiに形状が占める体積Vi,セルx面iに形状が占める
面積Sxi,モルy面iに形状が占める面積Syi,セルz面i
に形状が占める面積Sziが求められたことになる。次に
セルiの体積i,セルx面iの面積xi,セルy面iの
面積yi,セルz面iの面積ziを求める(ステップ7
7)。次に、ステップ78の式によりセルiの体積開口率
αi,セルx面iの面積開口率βxi,セルy面iの面積開
口率βyi,セルz面iの面積開口率βziを求めることが
できる。
max),セルx面iに形状が交わる面積Sxi(i=0,1,2,
…,jmax),セルy面iに形状が交わる面積Syi(i=0,
1,2,…,kmax),セルz面iに形状が交わる面積Szi(i
=0,1,2,…,lmax)をすべて0に初期設定する(ステッ
プ60)。次にランレングスデータ(z,x,y1,y2)を読み
込む(ステップ61)。このとき、データが終わりであれ
ばステップ77へ処理を移す。そして、ステップ62,63,6
4,65においてすべてのセルi(i=0,1,…,imax)とこ
のランレングスデータ(z,x,y1,y2)との交差関係を判
定し交わるのであればその交線の長さLを求めてViに加
える。次に、ステップ66,67,68,68,69においてすべての
セルx面i(i=0,1,…imax)とランレングスデータ
(z,x,y1,y2)との交差関係を判定し交わるのであれば
その交線の長さLを求めてSxiに加える(セルx面とラ
ンレングスデータは平行である)。次に、ステップ70,7
1,72においてすべてのセルy面i(i=0,1,…,kmax)
とランレングスデータ(z,x,y1,y2)との交差関係を判
定し交わるのであればSyiに1を加える(セルy面とラ
ンレングスデータは垂直である)。次に、ステップ73,7
4,75,76においてすべてのセルz面i(i=0,1,…,
lmax)とランレングスデータ(z,x,y1,y2)との交差関
係を判定し交わるのであればその交線の長さLを求めて
Sziに加える(セルz面とランレングスデータは平行で
ある)。以上のステップ61からステップ76の処理をすべ
てのランレングスデータについて行う。これにより、セ
ルiに形状が占める体積Vi,セルx面iに形状が占める
面積Sxi,モルy面iに形状が占める面積Syi,セルz面i
に形状が占める面積Sziが求められたことになる。次に
セルiの体積i,セルx面iの面積xi,セルy面iの
面積yi,セルz面iの面積ziを求める(ステップ7
7)。次に、ステップ78の式によりセルiの体積開口率
αi,セルx面iの面積開口率βxi,セルy面iの面積開
口率βyi,セルz面iの面積開口率βziを求めることが
できる。
以上が本実施例の内容である。この実施例では解析セル
は直方体セルである。直方体セの場合は、セルを構成す
る表面がすべて平面となるのでランレングスデータとの
交差関係はすべて直線と平面の交差判定により定めるこ
とができる。したがって、開口率は以上述べてきたよう
に非常に単純な処理のくり返しにより求めることができ
る。
は直方体セルである。直方体セの場合は、セルを構成す
る表面がすべて平面となるのでランレングスデータとの
交差関係はすべて直線と平面の交差判定により定めるこ
とができる。したがって、開口率は以上述べてきたよう
に非常に単純な処理のくり返しにより求めることができ
る。
次に第2の実施例について、第9図を用いて詳しく説明
する。この実施例は解析セルが円筒セルの場合である。
システムの構成は第1の実施例と同じく第1図のように
なる。
する。この実施例は解析セルが円筒セルの場合である。
システムの構成は第1の実施例と同じく第1図のように
なる。
本実施例では第9図aのように解析空間は空間分割され
各開口率計算装置5に分配される。すなわち、空間1は
開口率計算装置1(MPU1),空間2は開口率計算装置2
(MPU2),空間3は開口率計算装置(MPU3)といったよ
うに分配される。
各開口率計算装置5に分配される。すなわち、空間1は
開口率計算装置1(MPU1),空間2は開口率計算装置2
(MPU2),空間3は開口率計算装置(MPU3)といったよ
うに分配される。
そして、セル分割データとしてはzi(i=0,1,2,…,
nz),ri(i=0,1,2,…,nr),θi(i=0,1,2,…,n
θ)の値がセルデータメモリ4に送られる。また、セル
分配データとしてはi(i=0,1,…,n)の値がセルデ
ータメモリ4に送られる。
nz),ri(i=0,1,2,…,nr),θi(i=0,1,2,…,n
θ)の値がセルデータメモリ4に送られる。また、セル
分配データとしてはi(i=0,1,…,n)の値がセルデ
ータメモリ4に送られる。
次に、これらのセル分割データおよびセル分配データは
各開口率計算装置5へ送られ処理される。
各開口率計算装置5へ送られ処理される。
各開口率計算装置では、第1の実施例と同じく、各担当
空間におけるプリミティブデータから3次元ランレング
スデータの生成および3次元ランレングスデータから各
セルにおける開口率の算出という2つの処理を行う。し
かしながら、前者の処理は第1の実施例とまったく同じ
であるのでその説明は省略する。後者の円筒セルにおけ
る開口率の算出について、第10図のフローチャートを用
いて詳しく説明する。本実施例では、スキャニングライ
ンは第9図bのようにrθ平面上(z軸に垂直)にとっ
た。したがって、開口率を求めるには直線(ランレング
スデータ)と直線(セルθ面)および円弧(セルr面)
の交差関係を求めればよい。また、スキャニングライン
は上記以外の別の方向に定めても何らさしつかえない。
空間におけるプリミティブデータから3次元ランレング
スデータの生成および3次元ランレングスデータから各
セルにおける開口率の算出という2つの処理を行う。し
かしながら、前者の処理は第1の実施例とまったく同じ
であるのでその説明は省略する。後者の円筒セルにおけ
る開口率の算出について、第10図のフローチャートを用
いて詳しく説明する。本実施例では、スキャニングライ
ンは第9図bのようにrθ平面上(z軸に垂直)にとっ
た。したがって、開口率を求めるには直線(ランレング
スデータ)と直線(セルθ面)および円弧(セルr面)
の交差関係を求めればよい。また、スキャニングライン
は上記以外の別の方向に定めても何らさしつかえない。
まず、セルiに形状が占める体積Vi(i=0,1,2,…,i
max),セルz面iに形状が交わる面積Szi(i=0,1,2,
…,jmax),セルr面iに形状が交わる面積Sri(i=0,
1,2,…,kmax),セルθ面iに形状が交わる面積Sθi
(i=0,1,2,…,lmax)をすべて20に初期設定する(ス
テップ80)。次ランレングスデータ(z,x,y1,y2)をラ
ンレングスバッファから順次読み込む(ステップ81)。
このときデータが終わりであればステップ98へ処理を移
す。そして、ステップ82,83,84,85においてすべてのセ
ルi(i=0,1,2,…,imax)とこのランレングスデータ
(z,x,y1,y2)との交差関係を判定して交わるのであれ
ばその交線の長さLを求めてViに加える。次にステップ
86,87,88,89においてすべてのセルz面i(i=0,1,2,
…,jmax)とランレングスデータ(z,x,y1,y2)との交差
関係を判定し交わるのであればその交線の長さLを求め
てSziに加える(セルz面とランレングスデータは平行
である)。次に、ステップ90,91,92,93においてすべて
のセルr面i(i=0,1,2,…,kmax)とランレングスデ
ータ(z,x,y1,y2)との交差関係を判定し交わるのであ
ればSriに1を加える。次に、ステップ94,95,96,97にお
いてすべてのセルθ面i(i=0,1,2,…,θmax)とラ
ンレングスデータ(z,x,y1,y2)との交差関係を判定し
交わるのであればSθiに1を加える。以上のステップ
81からステップ97までの処理をすべてのランレングスデ
ータについて行う。これにより、すべてのVi,Szi,Sri,S
θiが求まる。
max),セルz面iに形状が交わる面積Szi(i=0,1,2,
…,jmax),セルr面iに形状が交わる面積Sri(i=0,
1,2,…,kmax),セルθ面iに形状が交わる面積Sθi
(i=0,1,2,…,lmax)をすべて20に初期設定する(ス
テップ80)。次ランレングスデータ(z,x,y1,y2)をラ
ンレングスバッファから順次読み込む(ステップ81)。
このときデータが終わりであればステップ98へ処理を移
す。そして、ステップ82,83,84,85においてすべてのセ
ルi(i=0,1,2,…,imax)とこのランレングスデータ
(z,x,y1,y2)との交差関係を判定して交わるのであれ
ばその交線の長さLを求めてViに加える。次にステップ
86,87,88,89においてすべてのセルz面i(i=0,1,2,
…,jmax)とランレングスデータ(z,x,y1,y2)との交差
関係を判定し交わるのであればその交線の長さLを求め
てSziに加える(セルz面とランレングスデータは平行
である)。次に、ステップ90,91,92,93においてすべて
のセルr面i(i=0,1,2,…,kmax)とランレングスデ
ータ(z,x,y1,y2)との交差関係を判定し交わるのであ
ればSriに1を加える。次に、ステップ94,95,96,97にお
いてすべてのセルθ面i(i=0,1,2,…,θmax)とラ
ンレングスデータ(z,x,y1,y2)との交差関係を判定し
交わるのであればSθiに1を加える。以上のステップ
81からステップ97までの処理をすべてのランレングスデ
ータについて行う。これにより、すべてのVi,Szi,Sri,S
θiが求まる。
次に、セルiの体積i(i=0,1,2,…,imax),セル
z面iの面積zi(i=0,1,2,…,jmax),セルr面i
の面積ri(i=0,1,2,…,kmax),セルθ面iの面積
θi(i=0,1,2,…,lmax)求める(ステップ98)。
次に、ステップ99の式によりセルiの体積開口率αi,セ
ルz面iの面積開口率βzi,セルr面iの面積開口率β
ri,セルθ面iの面積開口率βθiを求める。
z面iの面積zi(i=0,1,2,…,jmax),セルr面i
の面積ri(i=0,1,2,…,kmax),セルθ面iの面積
θi(i=0,1,2,…,lmax)求める(ステップ98)。
次に、ステップ99の式によりセルiの体積開口率αi,セ
ルz面iの面積開口率βzi,セルr面iの面積開口率β
ri,セルθ面iの面積開口率βθiを求める。
以上が第2の実施例による開口率の計算処理ステップで
ある。
ある。
発明の効果 以上のように本発明はプリミティブ・ランレングス変換
およびランレングスデータから開口率の算出を複数のMP
Uにより同時に並列処理することができ任意の3次元形
状の開口率を精度よく短かい時間で算出することができ
る。また、この図形処理方法はMPUの数にほぼ比例して
処理時間を短縮することができる。
およびランレングスデータから開口率の算出を複数のMP
Uにより同時に並列処理することができ任意の3次元形
状の開口率を精度よく短かい時間で算出することができ
る。また、この図形処理方法はMPUの数にほぼ比例して
処理時間を短縮することができる。
第1図は本発明の一実施例における全体構成図、第2図
a,b,cは従来例の開口率を求める手順説明図、第3図a,b
は円筒セルの説明図、第4図a,bはランレングスデータ
とランレングスデータを用いた開口率算出方法説明図、
第5図a,b,cは本発明における開口率算出方法説明図、
第6図は本発明の実施例におけるプリミティブデータか
らランレングスデータを生成するフローチャート図、第
7図はランレングスデータの構造図、第8図は本発明の
実施例における直方体セルにおけるランレングスデータ
から開口率を算出するフローチャート図、第9図a,bは
円筒座標系における解析空間分配図と、スキャニングラ
イン説明図、第10図は本発明の一実施例における円筒セ
ルにおけるランレングスデータから開口率を算出するフ
ローチャート図である。
a,b,cは従来例の開口率を求める手順説明図、第3図a,b
は円筒セルの説明図、第4図a,bはランレングスデータ
とランレングスデータを用いた開口率算出方法説明図、
第5図a,b,cは本発明における開口率算出方法説明図、
第6図は本発明の実施例におけるプリミティブデータか
らランレングスデータを生成するフローチャート図、第
7図はランレングスデータの構造図、第8図は本発明の
実施例における直方体セルにおけるランレングスデータ
から開口率を算出するフローチャート図、第9図a,bは
円筒座標系における解析空間分配図と、スキャニングラ
イン説明図、第10図は本発明の一実施例における円筒セ
ルにおけるランレングスデータから開口率を算出するフ
ローチャート図である。
Claims (6)
- 【請求項1】3次元形状を所定の空間座標系に基づい
て、所定の3次元要素形状の集合体として形成し、これ
らの要素形状を記憶装置に記憶するステップ、前記記憶
装置から前記3次元要素形状データを順次読み出すステ
ップ、前記空間座標系上の適当な位置に格子分割された
基準平面を設定し、それぞれの格子点においてこの基準
平面との垂線を作成し、この垂線が前記3次元要素形状
と交わる交線データを求めるステップ、前記交線データ
を前記3次元要素形状の形状表現データとして交線デー
タ記憶装置に順次記憶するステップ、前記交線データに
おいて複数の交線データが重なっている場合にこれらの
直線を結合して1つの交線データを生成するステップ、
前記3次元形状を含む空間を適当なセルに分割しセルデ
ータとして記憶装置に記憶するステップ、前記交線デー
タと前記セルデータを記憶装置から順次読み出し、この
セルと交線データが交わっている部分の線分の長さを求
め順次加算していくことにより、このセル内部に交線デ
ータの集合体として表現されている前記3次元形状が占
める体積および体積比を求め、これらの値を記憶装置に
記憶するステップを備えた3次元図形処理方法。 - 【請求項2】3次元形状を所定の空間座標系に基づい
て、所定の3次元要素形状の集合体として形成し、これ
らの要素形状を記憶装置に記憶するステップ、前記記憶
装置から前記3次元要素形状データを順次読み出すステ
ップ、前記空間座標系上の適当な位置に格子分割された
基準平面を設定し、それぞれの格子点においてこの基準
平面との垂線を作成し、この垂線が前記3次元要素形状
と交わる交線データを求めるステップ、前記交線データ
を前記3次元要素形状の形状表現データとして交線デー
タ記憶装置に順次記憶するステップ、前記データにおい
て複数の交線データが重なっている場合にこれらの直線
を結合して1つの交線データを生成するステップ、前記
3次元形状を含む空間を適当なセルに分割しセルデータ
として記憶装置に記憶するステップ、前記交線データと
前記セルデータを記憶装置から順次読み出し、セルを構
成している面と、形状を表現している交線データとの交
点を求め、この交点の数を加算していくことによって、
このセルの表面と交線データとして表現されている形状
が交わっている部分の面積および面積比を求め、これら
の値を記憶装置に記憶するステップを含む3次元図形処
理方法。 - 【請求項3】3次元形状を構成する3次元要素形状デー
タを記憶する記憶装置と、3次元形状を表現する交線デ
ータを記憶する交線データ記憶装置と、セルデータを記
憶する記憶装置と、各セルにおける形状が占める体積お
よび体積比および面積・面積比を記憶する記憶装置と、
図形処理演算装置からなり、図形処理演算装置が、前記
要素形状データ記憶装置から3次元要素形状データを読
み出し、前記交線データを生成し、前記交線データ記憶
装置へ書き込む処理をすると共に前記セルデータを読み
出し、このセルと前記交線データが交わっている部分の
長さを順次求め、これによりセル内部に交線データの集
合体として表現されている形状が占める体積および体積
比を算出し、これらの値を前記記憶装置へ書き込む処理
をし、さらに前記セルにおける表面と前記交線データが
交わっている交点を順次求めることにより、このセルの
表面と交線データの集合体として表現されている形状が
交わっている部分の面積および面積比を算出し、これら
の値を記憶装置へ書き込む処理をする装置を含むことを
特徴とする3次元図形処理装置。 - 【請求項4】図形処理演算装置は並列処理を可能にする
複数台により構成されている特許請求の範囲第3項記載
の3次元図形処理装置。 - 【請求項5】交線データ記憶装置と図形処理演算装置が
それぞれ複数の装置により構成され並列処理を実現する
形態となっており、それぞれの図形処理演算装置と交線
データ記憶装置が対になっていることを特徴とする特許
請求の範囲第3項記載の3次元図形処理装置。 - 【請求項6】図形処理演算装置が複数のマイクロプロセ
ッサ装置により構成されていることを特徴とする特許請
求の範囲第3項記載の3次元図形処理装置。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP62009333A JPH07104961B2 (ja) | 1987-01-19 | 1987-01-19 | 3次元図形処理方法及びその装置 |
| US07/145,084 US4893260A (en) | 1987-01-19 | 1988-01-19 | Three-dimensional geometry processing method and apparatus therefor |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP62009333A JPH07104961B2 (ja) | 1987-01-19 | 1987-01-19 | 3次元図形処理方法及びその装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS63177270A JPS63177270A (ja) | 1988-07-21 |
| JPH07104961B2 true JPH07104961B2 (ja) | 1995-11-13 |
Family
ID=11717543
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP62009333A Expired - Lifetime JPH07104961B2 (ja) | 1987-01-19 | 1987-01-19 | 3次元図形処理方法及びその装置 |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US4893260A (ja) |
| JP (1) | JPH07104961B2 (ja) |
Families Citing this family (16)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0281271A (ja) * | 1988-09-19 | 1990-03-22 | Oki Electric Ind Co Ltd | コンピュータ援用による設計システム |
| US5398307A (en) * | 1990-07-06 | 1995-03-14 | Matsushita Electric Industrial Co., Ltd. | Mesh generating method and apparatus therefor |
| US5077608A (en) * | 1990-09-19 | 1991-12-31 | Dubner Computer Systems, Inc. | Video effects system able to intersect a 3-D image with a 2-D image |
| JPH0789382B2 (ja) * | 1991-03-14 | 1995-09-27 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 形状モデルを生成する方法及び装置 |
| JPH07120434B2 (ja) * | 1992-01-29 | 1995-12-20 | インターナショナル・ビジネス・マシーンズ・コーポレイション | ボリュームレンダリングを行う方法及び装置 |
| JP2585914B2 (ja) * | 1992-02-19 | 1997-02-26 | 山村硝子株式会社 | 容器容量の計算装置 |
| JP2744888B2 (ja) * | 1993-09-10 | 1998-04-28 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 3−dオブジェクトを領域に区画する方法及びシステム |
| JP2941653B2 (ja) * | 1994-06-29 | 1999-08-25 | 株式会社日立製作所 | 解析用メッシュ作成装置 |
| US6427345B1 (en) * | 1998-11-10 | 2002-08-06 | Veeco Instruments, Inc. | Method and apparatus for a line based, two-dimensional characterization of a three-dimensional surface |
| JP4514287B2 (ja) * | 2000-06-12 | 2010-07-28 | 株式会社富士通長野システムエンジニアリング | 3次元モデル解析装置 |
| JP2004094675A (ja) * | 2002-08-30 | 2004-03-25 | Fujitsu Ltd | メッシュデータ生成方法をコンピュータに実行させるためのプログラム及びメッシュデータ生成装置 |
| JP2005115701A (ja) * | 2003-10-08 | 2005-04-28 | Port & Airport Research Institute | 地形と構造物の電子データを用いた数値解析条件の設定方法 |
| JP4894369B2 (ja) | 2006-06-19 | 2012-03-14 | 富士通株式会社 | 3次元モデルの画像処理装置 |
| JP6213202B2 (ja) * | 2013-12-09 | 2017-10-18 | 富士通株式会社 | 設計プログラム、設計方法、および設計装置 |
| CN111427318B (zh) * | 2020-03-25 | 2021-06-18 | 杭州意能电力技术有限公司 | 分散处理单元超实时计算方法 |
| US12496781B2 (en) * | 2020-07-01 | 2025-12-16 | Peridot Print Llc | Determining that printing a 3D object from a selected build material is expected to result in a defect |
Family Cites Families (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| GB1574706A (en) * | 1976-01-07 | 1980-09-10 | Nat Res Dev | Devices for measuring the length of a curved path |
| US4608709A (en) * | 1983-03-08 | 1986-08-26 | Owens-Illinois, Inc. | Method and apparatus for gauging containers |
| US4730261A (en) * | 1983-10-25 | 1988-03-08 | Ramtek Corporation | Solids modelling generator |
| JPS6091204A (ja) * | 1983-10-26 | 1985-05-22 | Mitsubishi Electric Corp | テレビ画像による面積測定装置 |
| US4766556A (en) * | 1984-11-20 | 1988-08-23 | Matsushita Electric Industrial Co., Ltd. | Three-dimensional solid object manipulating apparatus and method therefor |
| US4736306A (en) * | 1985-04-29 | 1988-04-05 | The United States Of America As Represented By The United States Department Of Energy | System for conversion between the boundary representation model and a constructive solid geometry model of an object |
| US4687107A (en) * | 1985-05-02 | 1987-08-18 | Pennwalt Corporation | Apparatus for sizing and sorting articles |
| US4707859A (en) * | 1985-12-16 | 1987-11-17 | Hughes Aircraft Company | Apparatus for high speed analysis of two-dimensional images |
-
1987
- 1987-01-19 JP JP62009333A patent/JPH07104961B2/ja not_active Expired - Lifetime
-
1988
- 1988-01-19 US US07/145,084 patent/US4893260A/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JPS63177270A (ja) | 1988-07-21 |
| US4893260A (en) | 1990-01-09 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH07104961B2 (ja) | 3次元図形処理方法及びその装置 | |
| US7149668B2 (en) | Visualization of workpieces during simulation of milling processes | |
| JPH05266216A (ja) | ボリュームレンダリングを行う方法及び装置 | |
| US9971335B2 (en) | Hybrid dynamic tree data structure and accessibility mapping for computer numerical controlled machining path planning | |
| US6862560B1 (en) | Machining simulation method and apparatus | |
| US5819070A (en) | Method and apparatus for processing finite element meshing model | |
| WO2022036591A1 (zh) | 增材制造中的打印工艺制定方法及装置 | |
| JP3571564B2 (ja) | 表示方法及び表示プログラムを記録したコンピュータ読み取り可能な記録媒体及び表示装置 | |
| JP3973273B2 (ja) | 画像生成装置および画像生成方法 | |
| JP3770991B2 (ja) | 解析モデルの生成方法および装置ならびに射出成形過程の解析方法 | |
| KR900007163B1 (ko) | 복합곡면 생성방법 | |
| JP3792584B2 (ja) | 工具経路面計算方法、工具経路面計算プログラム及び工具経路面計算プログラムを記録した記録媒体 | |
| CN118506930A (zh) | 一种基于有限元网格的无网格模拟模型构建方法 | |
| JP3535442B2 (ja) | 工具参照面計算方法、工具参照面計算プログラムを記録したコンピュータ読み取り可能な記録媒体及び工具参照面計算装置 | |
| US6856325B2 (en) | Information processing method and apparatus | |
| JP2941248B1 (ja) | オブジェクトをプリミティブに変換する装置 | |
| JPH06231217A (ja) | 有限要素メッシュ生成方法 | |
| Inui et al. | Contour-Type Cutter Path Computation Using Ultra-High-Resolution Dexel Model. | |
| JP4518389B2 (ja) | 三次元データから二次元データを生成し表示するシステムおよびプログラム | |
| JP2657301B2 (ja) | メッシング方法および装置 | |
| Inui et al. | Radial ray representation for fast analysis of optimal cutting direction in 3+ 2 axis milling | |
| Kitamura et al. | A parallel algorithm for octree generation from polyhedral shape representation | |
| JP3071495B2 (ja) | 物体モデル編集装置 | |
| JPH11283050A (ja) | 有限要素データの作成方法およびその装置 | |
| JP2631789B2 (ja) | 3次元物体形状のモデリング方法 |