Random Thoughts |
I go to bed early. My favorite dream starts at nine.
|
言語 |
|
|
|
フォーラムニュース: 質問、相談カテゴリに「SolidWorks操作方法」に関するフォーラムを追加しました。(2003/11/27) |
いらっしゃい、 ゲストさん. まずはこちら→ ログイン または 登録. 2024/11/23 - 13:13:56 |
|
|
|
著者
|
トピック: フェース間の最小距離の測定について (閲覧数 1596 回) |
|
Sphy
新人さん
オフライン
投稿: 2
I'm a llama!
|
|
フェース間の最小距離の測定について
« 投稿日: 2009/12/03 - 21:34:23 » |
|
こんにちわ。
フェース間の最小距離をチェックするマクロをVBAで作成しているのですが、 下記2つの方法では処理速度が遅くて実用に耐えません。
1. ModelDoc2::ClosestDistance 2. Measure::Caluculate
代替案が思いつかず困っています>< 他の手段をご存知でしたら教えていただけないでしょうか。 (早い遅い関係なく) 試してみたいと思いますので・・・。
以上、よろしくお願いします。
|
|
|
|
hisa
カタマリの王様!?
オフライン
投稿: 507
PANDA-Z!!
|
|
Re:フェース間の最小距離の測定について
« 返信 #1 投稿日: 2009/12/07 - 18:23:17 » |
|
APIヘルプで2つのメソッドのサンプルを参考に試してみましたが、処理速度を どれほど望んでいるか分からないので、的外れかも知れませんが一つだけ コメントを。
とりあえず、最小距離を測るという処理では、ClosestDistanceとCaluculate くらいしか探し出せませんでした・・・ もし、大量の面を2つずつ選択→測定といった流れで処理しているのであれば、 その処理中の描画処理に時間がかかっているのかもしれないので、例えば ModelView::EnableGraphicsUpdateをOFFにして描画の負担を減らせば、 全体的な処理速度の向上が望めるのかも知れません。
測定の処理自体が実用に堪えないのであれば残念ながら手は思いつきません・・・
|
|
|
|
Sphy
新人さん
オフライン
投稿: 2
I'm a llama!
|
|
Re:フェース間の最小距離の測定について
« 返信 #2 投稿日: 2009/12/07 - 21:03:27 » |
|
こんにちわ。
返信いただきありがとうございます。
測定処理自体が遅いのですが、やはりこれが限界かもしれませんね><
フェース総数100くらいのモデルであれば、 全フェースをつき合わせても処理は60秒弱で終わるのですが、 これがフェース総数500になれば、処理には単純に考えて5*5=25倍の時間が かかっちゃいますもんね。
つき合わせ回数を減らすために、例えば隣接フェースを省くにしても、 この「隣接フェースを省く」処理自体に時間をくわれるわけで・・・
C++で組んだら少しは早くなるのかなぁ、 でも関数自体の話だから変わらないのかなぁ、 などと考えながらもいったん切りをつけるとします。
ありがとうございました。
|
|
|
|
|
|
|
|