顯然,任何可以用其他方式繪製的形狀都可以由海龜繪製。圓形和方形容易用海龜繪製超橢圓形
rt 1 fd .0
和
if ticks mod 100 = 0 [rt 90]
fd 1
超橢圓沒有這麼多。 (正則省略也不是微不足道的。) The Wikipedia article on super-ellipses如果您需要刷新主題。
任何輸入表示讚賞。
使用倒吊的烏龜是否有辦法使烏龜運動中出現超橢圓?
顯然,任何可以用其他方式繪製的形狀都可以由海龜繪製。圓形和方形容易用海龜繪製超橢圓形
rt 1 fd .0
和
if ticks mod 100 = 0 [rt 90]
fd 1
超橢圓沒有這麼多。 (正則省略也不是微不足道的。) The Wikipedia article on super-ellipses如果您需要刷新主題。
任何輸入表示讚賞。
使用倒吊的烏龜是否有辦法使烏龜運動中出現超橢圓?
我有它的1/4,我想你可以將其他三個拼在一起。這裏沒有測試n的其他值。 (使用Wiki標記,加上phi作爲旋轉整個事物的一個角度)。我知道,重置刻度的位置是筆直的,筆直下降。
to go2
clear-all
reset-ticks
let a 6
let b 5
let phi 0
let n 3.5
create-turtles 1 [
let iNdx 1
repeat 90 [
show iNdx
show cos(iNdx)
if cos(iNdx) > 0 and sin(iNdx) > 0 [
let tx (a * (cos(iNdx)^(2/n)))
let ty (b * (sin(iNdx)^(2/n)))
let tx2 tx * cos(phi) - ty * sin(phi)
let ty2 tx * sin(phi) + ty * cos(phi)
setxy tx2 ty2
]
pen-down
set iNdx iNdx + 1
]
]
end
橢圓看起來簡單,但你是法官
to go
clear-all
reset-ticks
let a 6
let b 5
let phi 45
create-turtles 1 [
let iNdx 1
repeat 360 [
let tx (a * cos(iNdx))
let ty (b * sin(iNdx))
let tx2 tx * cos(phi) - ty * sin(phi)
let ty2 tx * sin(phi) + ty * cos(phi)
setxy tx2 ty2
pen-down
set iNdx iNdx + 1
]
]
end
一個概括和簡化的程序。
to Super-ellipse [x y a b m n]
create-turtles 1 [
let iNdx 1
repeat 360 [
setxy (x + (abs cos iNdx)^(2/m) * a * (sgn cos iNdx))
(y + (abs sin iNdx)^(2/n) * b * (sgn sin iNdx))
pendown
set iNdx iNdx + 1]
]
end
Very很好,我搞砸了一下,並做了一個使你的許可完整的橢圓,我將它添加到你的答案。 –
你好。我的答案尖叫改進! –
我添加了它並刪除了我的競爭答案。 –
另一個答案的廣義形式似乎產生了我想到的那種東西。筆開始越靠近其中一個焦點,畫圖越接近正方形。沒有實現超橢圓。
globals[c]
breed [pens pen]
breed [foci focus]
foci-own [dist distx disty]
to setup
ca
create-pens 1 [set heading 45 fd 10 pendown set C self]
;create-foci 1 [setxy (random-xcor/2) (random-ycor/2)]
create-foci 1 [setxy 10 10]
create-foci 1 [setxy 10 -10]
create-foci 1 [setxy -10 -10]
create-foci 1 [setxy -10 10]
end
to go
repeat 5100
[
ask foci [
set dist distance c
set distx xcor - [xcor] of c
set disty ycor - [ycor] of c
]
ask c
[
set heading 90 + atan (sum [distx/dist] of foci/sum [dist] of foci)
(sum [disty/dist] of foci/sum [dist] of foci)
FD .0125
]
]
end
你說定期的省略號不是微不足道的,你知道它們是如何繪製的嗎? – gue
很喜歡lon的答案。 –
使用setpos做什麼問題?你有方程。 –