VB6.0用掲示板の過去のログ(No.2)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [管理用]

投稿日: 2004/12/15(Wed) 10:16
投稿者ダンボ
URL
タイトル楕円でなく滑らかな曲線で囲む場合(完成)

ボタンn個に対して4n個の点の「一番外側」の点を決めてベジェ曲線で繋ぐと言うのも1方法です。

基本方法:中心点を求めて、原点移動・極座標化までは他と同じ。
注目する1個のボタンの4端点のうち、中心点からの距離が一番遠いものをそのボタンの描画点とする。

具体的方法:
・中心点を、(4n個のX座標の単純平均、4n個のY座標の単純平均)とする。
・中心点を(0,0)とした座標系に平行移動する。
・各ボタンiに付き、4個の点を新座標系の極座標で表す。(R,T)=(root(X*X+Y*Y),arccos(X,R))
・各ボタンiに付き、Rが最大の点の座標を記録する。
・後は座標系を戻して行って、n個の端点をベジェ曲線で繋ぐ。


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- VBレスキュー(花ちゃん) - - Web Forum -