在宅ワークのリアルをベテランとビギナーにインタビュー>>

等角螺旋(らせん)の数式表現について教えてください

ひょんなことから等角螺旋形状のモデリングらしきことをすることになったのですが、
これの3次元的な表現方法がよくわかりません。
例えば、牛や羊の角は3次元の等角螺旋構造ではないかと思うのですが、
これを球座標表現、ひいてはxy座標で表現する場合、どのような数式であらわせるのでしょうか?

2次元平面内での表現は 極座標だと
 r = exp(θ)
このとき、螺旋上の点(x,y)は
x = r*cosθ
 y = r*sinθ

とあらわせると思うのですが、
これを3次元空間内で表現する方法がよくわかりません

ご教授いただければ幸いです
よろしくお願いします

このQ&Aに関連する最新のQ&A

A 回答 (4件)

「螺旋」には、大別して2種類あります。

2次元平面曲線の渦巻き模様であるspiralと、3次元空間曲線であってねじ山のようなhelixです。等角螺旋はspiralの方。描きたいと仰っているのはどうもhelixの方ですから、話が食い違っています。よく「等角らせんは、オウム貝やかたつむり などの殻,ヤギの角などの形」と説明されるのは、モノを2次元図形と見たときの大雑把な話ですから、そのまんま真に受けちゃいけません。

 spirialが等角であるということを2次元極座標(r,θ)で書けば、
dr/dθ= aθ
つまり、仰る通り
r(θ) = exp(aθ)
です。(aは巻きの強さを変える係数です。)
 これを、例えばタニシやでんでん虫やツノの形に立体化するにはどうするか。
 まずは、円筒座標(r,θ,z)を考えると便利そうです。(3次元の極座標じゃだめです。)z軸の方向が螺旋の「軸」になるわけですね。直交座標(x,y,z)に直すにはもちろん、
x = r cosθ
y = r sinθ
とすれば良い。
 さて、θを決めて断面を考える(つまりz軸を含む平面でタニシを切る)と、タニシの「身」が入ってる部分の断面がいっぱい現れますが、どれも相似形をしているでしょう。すると、タニシの「身」が入ってる部分の断面のr方向の寸法は、helixを一周したときのrの増分
r(θ+2π) - r(θ)
に比例すると考えられます。ということは、helixは一周する間に,
タニシの「身」が入ってる部分の断面のz方向の寸法のぶんだけz軸方向にずれていなくてはいけません。ですから、
z = b r(θ)
にしとけば大丈夫です。てことはz = b rですから、このhelixは円錐面の上に存在することがわかります。また、このhelixは、r,zを共に同じ倍率で大きくしたとき、元のhelixと同じである(自己相似)という性質を持っています。

 もちろん、これだけではタニシの「身」が入ってる部分の「中心線」になっているhelixを描いただけですから、この周りにカラを作ってやらなくちゃいけません。
 ここまでのr, zはhelix上の点の座標の意味でしたが、ここからはカラの表面上の点、という意味で使います。

 θ=0におけるカラの断面形状(z軸を通る平面で切った形状)を媒介変数tを使って表した平面曲線
r=f(t)
z=g(t)
で与えたとします。(例えば円形にするならf(t)= A cos t + 1, g(t)=A sin t + b、ここにAは半径。1とbが出て来たのは、helix上の点(1,0,b)を中心とする円にしたからです。)そうすると、角度θにおける断面形状のサイズはexp(aθ)に比例しているわけだから、媒介変数tとθを使って、
r(θ,t)= f(t)exp(aθ)
z(θ,t) = b g(t)exp(aθ)
と表せます。
 カラの断面の大きさを小さくすれば角のようになるし、大きくすればタニシになる。b=0ならアンモン貝の形です。aを小さくするとぐるぐる巻きに、大きくすると鳥の爪のように、と言う風に、いろんな形が作れますね。
    • good
    • 1
この回答へのお礼

投稿に長い間気づかず、回答遅くなってすいません。
大変丁寧なご説明をいただきありがとうございました。

ご説明の通りに数式を設定して、
なんとか所望の空間図形を得ることができました。

大変助かりました。どうもありがとうございました

お礼日時:2006/10/01 11:39

> ところで、極座標導入時の数式なのですが



極座標を取り入れると、直線の定義が難しくなるような?
式は、らせんの中心を原点に取った場合のように見えます。


> あっているでしょうか?

プロットするか、数点検算すると確認できるかと。
この式ではaとαの定義が不明なので加減がわかりませんが、らせんっぽい特徴はあります。
等角らせんか?っていうと、No.1のようなプロットに比べて発散しすぎの気も。
    • good
    • 0

> 等角螺旋ってのはちとわかりませんが。



こちらは、辞書などにも「等角螺旋」って定義が無いので、何の角度を等しくしたいのか?不明瞭って事です。

No.1では、螺旋を円錐と見なした際の、母線の角度は一定ですが。
巻貝みたいに。

--
> また、球座標で φ を導入して表現する必要が
> あるような気がするのですが、
> そうすると元の θ はどう扱うのか・・・

球座標(極座標?)でφを導入しないと、平面になります。

蚊取り線香みたいな平面図形も螺旋です。
No.1は巻貝ですが、朝顔の弦みたいな円筒状の螺旋もあるし。

この回答への補足

等角らせんとは、らせんの中心点とらせん上の任意の点とを結ぶ直線がその点での接線となす角度が常に等しくなるらせんをいうようです。
英語ではequiangle spiralとよばれ、
対数らせん logarithmic spiralとか ベルヌーイのらせんとも呼ばれているようです。
下記ページに概要が書いてありました。
http://www.geocities.co.jp/Technopolis-Mars/2607 …

ところで、極座標導入時の数式なのですが
 r=a*exp(θ*cotα) として
x = r*cosφ*cosθ
y = r*cosφ*sinθ
z = r*sinφ

とするのであっているでしょうか?
らせん中心からの距離rはθをつかって表現されるので
徐々に大きくなるらせんっぽい式ですが
上記のような数式で表される3次元空間内での点(x,y,z)において、
上記の「等角条件」は満足されるのでしょうか?
それとも3次元的な等角らせん(接平面の角度が一定?)自体が存在しないのでしょうか?

補足日時:2006/09/19 22:35
    • good
    • 0

> x = r*cosθ


> y = r*sinθ

に、

z = θ

なんかの条件をつけると、とりあえずの螺旋になります。
等角螺旋ってのはちとわかりませんが。

この回答への補足

ご回答ありがとうございます。

ただ、形状としてきちんと等角螺旋にしたいので、
上記の例が「とりあえずの」螺旋だと
ちょっと良くないです。

また、球座標で φ を導入して表現する必要が
あるような気がするのですが、
そうすると元の θ はどう扱うのか・・・
という感じで悩んでおります。

なにか良いアドバイスがあればお願いいたします。

補足日時:2006/09/19 01:04
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q螺線(らせん)の長さ(ピッチ)と半径の関係式について

螺線の方向をz軸、半径方向をx、y軸として一定長の螺線をz軸方向に引っ張って伸ばした場合、半径(r)は、短くなり、反対にピッチl(エル)は長くなります。この半径とピッチの関係式について教えてください。
 なお、ピッチlとは螺線がx-y平面で見たとき、1回転するときのz軸方向の距離です。

Aベストアンサー

この条件だけでは決まりません。ここで言う「螺線」とは平面図形の螺旋(spiral)ではなく、つるまきばねの形(helix)のようです。  (1)半径rの筒に巻き付いていて、筒の軸にそって一周ごとにlだけ進むねじになっています。半径r、全長Lの円筒にN回巻き付いているこのようなバネを一本持って来ると、ばねを構成している長さはD=sqrt{(2πrN)^2 + L^2}で、つる自体は伸び縮みしないものとすればDは不変です。ここでピッチlはl=L/Nですね。  (2)さて、バネを引っ張って延ばすやりかたは一通りではない。2つの自由度があるんです。 (a) 頭としっぽをつまんで、これを長さLは同じのまま、頭だけをz軸の周りでねじることができる。こうすると当然半径r、ピッチlも変わります。もともとN回巻き付いていたのが、N’回になったとすると、D=sqrt{(2πrN)^2 + L^2}=sqrt{(2πr’N’)^2 + L^2}という関係式を満たすようにrがr’に変化します。そして今度のピッチl’はl’=L/N’ですね。 (b)次に巻き付き回数を維持したまま、ぐいと引っ張って、全長をL’に変化させることができる。するとD=sqrt{(2πrN)^2 + L^2}=sqrt{(2πr’N’)^2 + L^2}=sqrt{(2πr”N’)^2 + L’^2}という関係式を満たすように、半径がr”に変化する。今度のピッチl”はl”=L’/N’になります。
(3) 実際の鋼鉄製のバネでも、端が自由に回転するようになっている(Nを変えられる)場合と、Nが不変の場合とでは振る舞いが違います。前者の場合、バネを作っている針金に掛かる曲げと捻れ(バネの巻き付きではありません)のエネルギーの和が最小になるように落ち着きます。「でも後者なら、半径は一意的に決められる」と思ったら大間違いで、バネの半径が何処でも同じ、というのはエネルギー的に最小ではない。むしろこっちの方が解析が難しいです。ここから先は機械工学の教科書を見た方が良いでしょう。

この条件だけでは決まりません。ここで言う「螺線」とは平面図形の螺旋(spiral)ではなく、つるまきばねの形(helix)のようです。  (1)半径rの筒に巻き付いていて、筒の軸にそって一周ごとにlだけ進むねじになっています。半径r、全長Lの円筒にN回巻き付いているこのようなバネを一本持って来ると、ばねを構成している長さはD=sqrt{(2πrN)^2 + L^2}で、つる自体は伸び縮みしないものとすればDは不変です。ここでピッチlはl=L/Nですね。  (2)さて、バネを引っ張って延ばすやりかたは一通りではない。2つの自由...続きを読む

Q螺旋の周長の求め方

半径rの円筒に巻きつけた糸をもどしながらできる螺旋上のある点から別の点までの周長の算出方法を知りたいのですが、どなたかご教示ください。なお、当方、高校程度の数学しか知識がありません。できるだけ、やさしくおねがいしたいのですが。

Aベストアンサー

No.2 の mame594 さんが正しい答を出しておられると思います.

これはいわゆる伸開線(インボリュート,involute)と呼ばれる問題です.
糸を巻き付ける図形は円
(質問文では円筒になっていますが,2次元平面で考えればよいので円で十分です)
だけでなくて,いろいろな図形が可能です.

さて,mame594 さんの長さの式
(1)  s = ∫[0→α] {(1+3θ^2+θ^4) / (1+θ^2)}^(1/2)} dθ
は正しい式(私も同じ答になりました)と思いますが,
積分結果は初等関数の組み合わせでは表せません.
この種の積分は一般に楕円積分と呼ばれる積分の組み合わせで表現されます.

ちょいと数値積分をしてみました.
α=π/2  s = 2.26449
α=π   s = 6.54664
α=2π   s = 22.0094
です.円の半径を1としてあります.
半径 a なら,上の数値を a 倍して下さい.

今の螺旋はアルキメデスの螺旋とは違います.
アルキメデスの螺旋は
(2)  r = bθ
であらわされます.
LP レコードの溝がほぼアルキメデスの螺旋になっています.

他に,対数螺旋(ベルヌーイ螺旋)
(3)  r = e^(cθ)
や,双曲線螺旋
(4)  r = d/θ
があります.

No.2 の mame594 さんが正しい答を出しておられると思います.

これはいわゆる伸開線(インボリュート,involute)と呼ばれる問題です.
糸を巻き付ける図形は円
(質問文では円筒になっていますが,2次元平面で考えればよいので円で十分です)
だけでなくて,いろいろな図形が可能です.

さて,mame594 さんの長さの式
(1)  s = ∫[0→α] {(1+3θ^2+θ^4) / (1+θ^2)}^(1/2)} dθ
は正しい式(私も同じ答になりました)と思いますが,
積分結果は初等関数の組み合わせでは表せません.
この種の積分は一般に...続きを読む

Q螺旋の計算方法

ど素人で恐縮です。
3次元CADで螺旋を作成したいです。
このCADで入力できるのは
・螺旋円の中心点と端点
・螺旋ステップ数
・螺旋の総高さ
の3点です。

今ある条件が
・直径230mm
・螺旋角度15度
の2点です。

この条件をステップ数と高さに置き換える計算方法が全くわかりません。。。もう20年近く算数から遠のいていて…
どなたか教えてください(;_;)

Aベストアンサー

すみませんが、何周巻くあるいは、全長何cmとかが分からないと図面にならないと思うのですが・・

角度15度ですと、1cmあたり2.68mmということになります(tan15°)
一周の長さは、直径×円周率で求めるとして
230×3.14159=722.566
したがって、一周で
722.566×0.268=193.65mm
高くなります
あとは、何周巻くかで高さが決まりますので、それを用いればよいのでは?

Qエクセルで、渦巻きを作りたい。

エクセルできれいな渦巻きを作る方法はないでしょうか??キテレツ大百科のべんぞうさんのめがねみたいなのが、いいのですが・・・無理でしょうか??わかる方がいましたら教えてください。よろしくお願いいたします。

Aベストアンサー

#1さんの「アルキメデスの螺旋」では、思ったものは見つかりませんでしたね。「螺旋 VBA」と、インターネット検索してみて、ヒットした以下にあったものを、加工してみました。

http://backno.mag2.com/reader/BackBody?id=200311201630000000119526000

なお、細かな設定については割愛しますが、<標準モジュール>に設定しておけば間違いないはずです。


Sub Archimedean_Spiral()
 Const Pi = 3.1415
 Const X = 200 '螺旋の位置 X
 Const Y = 200 '螺旋の位置 Y
 Const R = 15 '15が最低値 巻きの大きさに関係
 Const IncNum = 0.1 '巻きの大きさに関係
 Dim Spiral As Shape
 Dim Ratio As Single
 Dim i As Long
 With ActiveSheet.Shapes
  With .BuildFreeform(msoEditingAuto, X, Y + R)
   Ratio = 1
   For i = 30 To 360 * 5 Step 30
    .AddNodes msoSegmentCurve, msoEditingAuto, _
      X + Sin(i * Pi / 180) * R * Ratio, _
      Y + Cos(i * Pi / 180) * R * Ratio
    Ratio = Ratio + IncNum
   Next
   Set Spiral = .ConvertToShape
     With Spiral
        .Line.Weight = 2#  '2以下にすると消えることがある。
        .Line.ForeColor.RGB = RGB(255, 0, 0) '色は赤
     End With
  End With
 End With
End Sub

#1さんの「アルキメデスの螺旋」では、思ったものは見つかりませんでしたね。「螺旋 VBA」と、インターネット検索してみて、ヒットした以下にあったものを、加工してみました。

http://backno.mag2.com/reader/BackBody?id=200311201630000000119526000

なお、細かな設定については割愛しますが、<標準モジュール>に設定しておけば間違いないはずです。


Sub Archimedean_Spiral()
 Const Pi = 3.1415
 Const X = 200 '螺旋の位置 X
 Const Y = 200 '螺旋の位置 Y
 Const R = 15 '15が最低...続きを読む

Q立体的な散布図を描く方法

散布図で分散の傾向を見ているのですが、同じ(X,Y)が何度も出現しており、ポイントが重なる点を立体的に山高く視覚的に表現し
たいと考えています。良い方法があれば教えてください。
データとして

X,Y
13,209
11,211
9,213
7,215
5,217
3,219
1,221
0,224
0,224
0,224
0,224
0,224
……

のようにあり、0,244を高く表現したいという感じです。
データ数が多く自力でカウントするには大変です。

Excel2007は手元にありますので、Excelかその他のソフト、もしくはjava言語でのプログラムで解決できると助かります。

よろしくお願いします。

Aベストアンサー

データをマトリックスで表すことで,等高線グラフを用いて立体的に表すことができますよ。行にX,列にY,度数としてZを書き込んだ表をエクセルで作成します。

tacchonさんのデータを例に取りますと,データを表す(X, Y)に度数を表すZを加えて,
  209 211 213 215 217 219 221 224
13 1
11    1
9       1 
7          1
5            1
3               1
1                 1
0                    5

これを全部選択して,3Dの等高線を選べば3次元表示になるはずです。

また,kgu-2さんが書かれておられますが,エクセル2007ですとバブルで表現ができますよ(他のバージョンは未確認)。

tacchonさんのデータを例に取りますと,データを表す(X, Y)に度数を表すZを加えて
X, Y, Z
13, 209, 1
11, 211, 1
9, 213, 1
7, 215, 1
5, 217, 1
3, 219, 1
1, 221, 1
0, 224, 5
といった表をつくり,(X,Y)に対して散布図をまず作成し,グラフの種類の変更でバブルを選択してZの列をサイズとして指定することで,散布図のマーカーの大きさがZの値に依存したグラフをつくることができるはずです。

データをマトリックスで表すことで,等高線グラフを用いて立体的に表すことができますよ。行にX,列にY,度数としてZを書き込んだ表をエクセルで作成します。

tacchonさんのデータを例に取りますと,データを表す(X, Y)に度数を表すZを加えて,
  209 211 213 215 217 219 221 224
13 1
11    1
9       1 
7          1
5            1
3               1
1                 1
0                    ...続きを読む

Qインボリュート曲線の式

インボリュート曲線の式が
x=a(cosθ+θsinθ)
y=a(sinθ-θcosθ)
とどのようにして導けるのか教えてください。

Aベストアンサー

インボリュート(伸開線)
半径aの円に伸び縮みしない糸が巻かれていると考える。
円周上の点P(acosθ,asinθ)を取る。
円の中心をOとして、円周とOx軸との交点Aからこの糸をほぐしていくものとする。
このとき、ほぐしていく点Q(x,y)の座標は角POA=θとすれば、PQ=弧PAとなる。弧PA=aθだから
x=acosθ+aθ・sinθ=a(cosθ+θsinθ)
y=asinθ-aθ・cosθ=a(sinθ-θcosθ)
で表される

Qエクセルで渦巻きが描きたい

表題のとおりですが教えてgoo内を検索していました所ほぼ同じような内容を見つけました。目標としては七つの層になっているシートをぐるぐると丸めていった時の図形を描きたいので、回答にもあったアルキメデスの螺旋(r=aθ)のaの値を1から7としてやればいいのかな?と考えているのですが、θをエクセル上でどのように表現したらよいのかがわかりません。ご指導ください。よろしくお願いします。

Aベストアンサー

この

・r = aθ 

は、極座標系なので、これを Excel で扱えるようにするには直交座標系に変換する必要があります。
すなわち、

 ・x = r cosθ
 ・y = r sinθ

の関係になります。

Qエクセルで計算すると2.43E-19などと表示される。Eとは何ですか?

よろしくお願いします。
エクセルの回帰分析をすると有意水準で2.43E-19などと表示されますが
Eとは何でしょうか?

また、回帰分析の数字の意味が良く分からないのですが、
皆さんは独学されましたか?それとも講座などをうけたのでしょうか?

回帰分析でR2(決定係数)しかみていないのですが
どうすれば回帰分析が分かるようになるのでしょうか?
本を読んだのですがいまいち難しくて分かりません。
教えてください。
よろしくお願いします。

Aベストアンサー

★回答
・最初に『回帰分析』をここで説明するのは少し大変なので『E』のみ説明します。
・回答者 No.1 ~ No.3 さんと同じく『指数表記』の『Exponent』ですよ。
・『指数』って分かりますか?
・10→1.0E+1(1.0×10の1乗)→×10倍
・100→1.0E+2(1.0×10の2乗)→×100倍
・1000→1.0E+3(1.0×10の3乗)→×1000倍
・0.1→1.0E-1(1.0×1/10の1乗)→×1/10倍→÷10
・0.01→1.0E-2(1.0×1/10の2乗)→×1/100倍→÷100
・0.001→1.0E-3(1.0×1/10の3乗)→×1/1000倍→÷1000
・になります。ようするに 10 を n 乗すると元の数字になるための指数表記のことですよ。
・よって、『2.43E-19』とは?
 2.43×1/(10の19乗)で、
 2.43×1/10000000000000000000となり、
 2.43×0.0000000000000000001だから、
 0.000000000000000000243という数値を意味します。

補足:
・E+数値は 10、100、1000 という大きい数を表します。
・E-数値は 0.1、0.01、0.001 という小さい数を表します。
・数学では『2.43×10』の次に、小さい数字で上に『19』と表示します。→http://ja.wikipedia.org/wiki/%E6%8C%87%E6%95%B0%E8%A1%A8%E8%A8%98
・最後に『回帰分析』とは何?下の『参考URL』をどうぞ。→『数学』カテゴリで質問してみては?

参考URL:http://ja.wikipedia.org/wiki/%E5%9B%9E%E5%B8%B0%E5%88%86%E6%9E%90

★回答
・最初に『回帰分析』をここで説明するのは少し大変なので『E』のみ説明します。
・回答者 No.1 ~ No.3 さんと同じく『指数表記』の『Exponent』ですよ。
・『指数』って分かりますか?
・10→1.0E+1(1.0×10の1乗)→×10倍
・100→1.0E+2(1.0×10の2乗)→×100倍
・1000→1.0E+3(1.0×10の3乗)→×1000倍
・0.1→1.0E-1(1.0×1/10の1乗)→×1/10倍→÷10
・0.01→1.0E-2(1.0×1/10の2乗)→×1/100倍→÷100
・0.001→1.0E-3(1.0×1/10の3乗)→×1/1000倍→÷1000
・になります。ようするに 10 を n 乗すると元の数字になるた...続きを読む

Qオートシェイプでうずまきを描くには?

パワーポイントなどのオートシェイプで、うずまきを描く方法を教えてください。
かなり雑であってもかまいません。

よろしくおねがいします。

Aベストアンサー

ExcelでA列連番、B列角度、C列-X、D列-Y
C2セル =$A2*COS($B2/180*PI())
D2セル =$A2*SIN($B2/180*PI())
下へオートフィル

C,D列のみ範囲選択してグラフウィザード
データポイントを平滑線でつないだマーカーなしの散布図
 グラフタイトル、軸、目盛線、凡例を消す
プロットエリアの背景をクリア

グラフをコピーしてPowerPointに貼り付け
参考まで

Q渦巻きの数式を教えてください。basicで描画命令psetで描きたいの

渦巻きの数式を教えてください。basicで描画命令psetで描きたいのですが、以前教えてもらったことがあるのですが、不明となっていまいました。理系の方よろしくお願いします。

Aベストアンサー

2次元平面での渦巻きなら次の様になります。

極座標で
r=a*θ (a=0.1,θ=0~b*2π,b:整数(>>1))

あるいは

x,y座標の媒介変数表示なら
x=aθ*cos(θ), y=aθ*sin(θ)
a=0.1, θ=0~2kπ(k>>1)

なお.aは渦巻きのピッチ、bは渦巻きの巻き数の半分の値です。

それとも3次元の渦巻きの式が必要ですか?


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング