前のトピック     次のトピック

第 5 章 数式を用いた図形座標の制御

セクション 4   シェイプの曲線の制御

角の丸いシェイプを作成するには、角の丸みスタイルを使用するか、あるいは円弧を使用します。どちらを使用するかは、シェイプのサイズ変更の方法によって決まります。次の図は、これらの方法を使用して作成した角の丸いシェイプです。

 



異なる種類の角を持つシェイプのサイズ変更

  1. 角を丸めた四角形は、角の曲線に影響を及ぼすことなく引き伸ばすことができます。
  2. 真円弧を使用したシェイプはサイズ変更で歪むことがあります。
  3. 楕円弧はシェイプとともに滑らかにサイズ変更できますが、角の形状が意図しない形状になる場合があります。

えんぴつ、線、円弧、あるいは四角形ツールでシェイプを描画すると、直線部分を楕円弧とつなぐことができます。シェイプを引き伸ばすと、通常、曲線の始点と終点は、シェイプの引き伸ばしの比率に応じて移動します。また、円弧は線または角のスタイルから独立しているので、円弧を使用すると、シェイプを制御しやすくなります。その上、円弧は数式を使用して制御できます。

楕円弧は滑らかさを保ちながら偏心度を変更することができます。真円弧を使用すると、始点と終点間に円をはめ込もうとするので、曲線と線との間のつなぎ目がふくらんだり、丸みが足りなることがあります。このような歪みを避けるには、数式を用いて円弧の弓部を調節します。この方法で角の丸いシェイプを作成すると、シェイプの角は設定した角度で丸められるので、角はなめらかにサイズ変更されます。

このセクションの内容...

角の丸みスタイルの使用

円弧とはどのようなものか

直線と円弧の変換

便利な円弧数式

角の丸みスタイルの使用

[書式] メニューから [角] を使用すると、角の丸みスタイルが直線の角に適用できます。線と円弧を使用する代わりに、直線を使用してシェイプを作成することができます。角の丸いスタイルはシェイプの図形座標を変えません。画面に描画される方法だけが変わります。

 



元の多角形 (A)、角を丸めた多角形 (B)、それをサイズ変更した多角形 (C)

角の丸いスタイルのシェイプは思い通りにサイズ変更できますが、別の角の属性 (または属性なし) を新しい線のスタイルに適用すると、その丸い角のスタイルは簡単に上書きされてしまいます。そのため、 [LockFormat] セルを TRUE に設定して、あるいは [線の書式] セクションの [Rounding] セルの数式をガードして、シェイプの書式を保護する必要がある場合もあります。スタイルの詳細については、「第 10 章 スタイル、書式、色の管理」を参照してください。

TOP へ

円弧とはどのようなものか

「真円弧」は円の一部です。「楕円弧」は楕円の一部です。円は楕円の特殊なケースなので、楕円弧は、円のように見える場合があります。

円弧ツールを用いて描画した円弧は、楕円の 1/4 になり、[えんぴつツール] を使用して描画した円弧は、円の一部になります。ただし、[図形座標] セクションではどちらも楕円弧として表され、[EllipticalArcTo] 要素によって定義されます。真円弧を描画するには、[図形座標] セクションで図形要素の種類を [ArcTo] に変更する必要があります。

真円弧

真円弧では、次の図に示すように、弓部の大きさは円弧の中心点から弦の中心点までの距離です。

 



真円弧

  1. コントロール ポイント

円弧が反時計方向に描画される場合は、弓部の値は正ですが、それ以外は負の値になります。選択された円弧には中間点にコントロール ポイントがあり、必ず、弦の垂直二等分線上の位置になります。[えんぴつツール] でコントロール ポイントを移動しようとすると、ポイントは自由に移動できますが、コントロール ポイントは垂直二等分線上の位置に戻ります。

円弧のサイズを変更する場合は、円弧がその一部である、円自体の半径を変更します。円弧は扁平したり、膨らんだりする場合があります。これは円のサイズ変更をする場合には妥当な動作ですが、シェイプの動作としては予期しないものになります。(同じ比率でサイズを変更するには、このトピックで説明するように、楕円弧を使用する必要があります。)

 



円弧のサイズ変更

  1. コントロール ポイントをドラッグすると、円弧の弓部の値が変更されます。

デフォルトでは、円弧はすべて、Visio® の描画ツールを使用して作成されます。円弧を作成するには、[図形座標] セクションで図形要素の種類を変更する必要があります。

円弧を作成するには、

  1. シェイプを選択して、[ウィンドウ] メニューから [シェイプシートを表示] を選択します。
  2. [図形座標] セクションで、円弧にしたい、[LineTo] または [EllipticalArcTo] 要素を選択します。
  3. [編集] メニューから [図形要素の変更] を選択します。
  4. [ArcTo] を選択して、[OK] をクリックします。

次の表は、[ArcTo] 行のセルが何を表すかを示します。

[図形座標] セクションでの円弧の表現

セル
[ArcTo] 行の前の行* X 始点の x 座標
  Y 始点の y 座標
ArcTo X 終点の x 座標
  Y 終点の y 座標
  A 円弧の弓部のサイズ

* [図形座標] セクションの前の行の X セルと Y セルによって、円弧の始点が決まります。

楕円弧

楕円弧を引き伸ばすと、偏心度は引き伸ばされた比率に合わせて変更され、弧は滑らかな曲線を維持します。「偏心度」は、非対称 (不均衡な) 円弧の表示方法を調整します。

 



楕円弧

  1. 長軸
  2. 短軸
  3. コントロール ポイント
  4. 角度

円弧の偏心度は、長軸を短軸で割った値です。

真円弧はサイズ変更時に円を維持するように動作するため、ほとんどの場合、シェイプでは真円弧ではなく楕円弧を使用することになります。

  旧バージョンの Visio 製品では、楕円は 2 つの [EllipticalArcTo] 行で表されていました。Visio 2000 では、楕円は [Ellipse] 行ひとつで表されます。

楕円弧を作成するには、次のいずれかを実行します。

次の表に示すように、楕円弧の図形座標は [EllipticalArcTo] 行に記述されます。

[図形座標] セクションでの楕円弧の表現

セル
[EllipticalArcTo] の前の行* X 始点の x 座標
  Y 始点の y 座標
EllipticalArcTo X 終点の x 座標
  Y 終点の x 座標
  A コントロール ポイントの x 座標位置
  B コントロール ポイントの y 座標位置
  C 弧の角度
  D 弧の偏心度

* [図形座標] セクションの前の行の X セルと Y セルによって、楕円弧の始点が決まります。

楕円弧のコントロール ポイントを移動して、円弧の偏心度を変更できます。偏心度 1 は、円弧を表し、1 より大きい、あるいは 1 より小さい値はそれぞれ、偏心度が大きい円弧あるいは小さい円弧を表します。たとえば、2cm 幅で、1cm の高さの楕円では、楕円弧の偏心度は 2 です。1cm 幅で、2cm の高さの楕円では、楕円弧の偏心度は 1/2 です。

楕円弧の偏心度を変更するには、

円弧の偏心度ハンドルを移動すると、[EllipticalArcTo] 行の [C] セルと [D] セルに数式が生成されます。これらの数式は楕円弧の現在の向きと形を記録します。楕円弧を含むシェイプが引き伸ばされると、必要に応じて、円弧の偏心度と角度が調整され、シェイプの残り部分と合うように弧のサイズが変更されます。

TOP へ

直線と円弧の変換

[図形座標] セクションの対応する図形要素の種類を変更することによって、直線あるいは楕円弧を円弧に変換できます。さまざまな描画ツールを使用して、直線と円弧を変更することもできます。

直線あるいは楕円弧をシェイプシート ウィンドウで円弧に変更するには、

図面ぺージ上の直線を楕円弧に変更するには、

図面ぺージ上の楕円弧あるいは円弧を直線に変更するには、


  図形要素の種類を変更すると、シェイプの幅・高さボックスが変更され、比例数式あるいは高さを基準にした数式が上書きされます。そのため、図形要素の種類を変更する前に [保護] セクションで [LockCalcWH] を TRUE に設定する場合があります。


TOP へ

便利な円弧数式

円弧の弓部と半径を計算する数式を使用して、円弧の動作範囲のサイズ変更を調整することができます。

半径と角度からの弓部の計算

[ArcTo] によって範囲が決められる円弧の半径と角度を把握している場合は、次の公式を使用して弓部を計算することができます。

|弓部| = 半径 * (1 - COS(角度/2))

弓部がゼロの場合は、この円弧は直線です。この等式は、開いているシェイプ、閉じているシェイプを問わず、あらゆるシェイプに使用でき、次の図に示すように、設定角度を補って丸い角を作ります。円弧を使用する利点は、角のサイズ変更が滑らかに行えることです。たとえば、半径が 2cm、角度が 45 度の場合は、この数式を [図形座標] セクションの [ArcTo] 行に入力してください。

Geometryn.An = 2 cm. * (1 - COS(45 deg. /2))

 



丸い角に円弧を使用

  1. 90°
  2. 半径

「角度」の値が変化しない (常に 90 度) 四角形などのシェイプでは、数式の部分を少なくして定数にすることができます。「角度」が常に 90 度の場合は、「(1-COS(angle/2)) = 0.2929」となります。そこで、数式は次のように入力できます。

Geometryn.An = <半径> * 0.2929

この定数を使用すると、処理は高速になりますが、後から角度を常に 90 度にしないことにした場合、柔軟性に問題が発生します。丸い角にする方法の詳細については、「角の丸みスタイルの使用」を参照してください。

弓部からの半径の計算

円弧の弓部を把握している場合は、半径を計算できます。それには、弦の大きさ、つまり、円弧の始点と終点の距離を調べます。次の数式では、X1、Y1 は、円弧の始点を表し、X2、Y2 は円弧の終点を表します。弦の長さは、次のようになります。

そして、半径は次のようになります。

Top