用python画绚丽的渐变色立体漂亮图案01:51

[复制链接]
4 P Y9 a# E; y, t* s* w4 E) x
& Z; }/ T5 u$ Y( [& I2 f9 _
4 T6 o' z. @* @0 P
- s! k2 e) t1 i: ?+ C) N
01:51
* F& {! s8 @% o! @, g* v1 f6 c
; x+ E. g, M: Y8 t5 O
, W' W0 ~0 g$ B, L g( V2 j
- y9 H/ D9 M# g" |; c
1 \ S: J2 I- w- c

用python画绚丽的渐变色立体漂亮图案,源码解释如下:

. ?; m8 m7 a1 ^$ k. y' H7 C, ?
+ L5 |* K5 I) |- _
$ c; s- C6 U- [( I
用python画绚丽的渐变色立体漂亮图案
7 s$ _9 R3 |1 b6 t, ~4 d
! W7 w) |) Q; X! L* u6 v' v6 |
5 M) T' i7 `) a# G

import turtle as tu 调用turtle库

$ B( L: ]2 E8 M! i
; t3 ~! ?+ q8 J4 j4 _# ]
9 ] b4 k0 g' @6 u/ `; ]

import colorsys 调用颜色

7 V: U+ W7 s8 O9 x2 u; @
4 `- @; K! N0 Q$ k3 f
: K! c7 A( z" J7 | m9 Q7 o# [4 u

tu.Screen().bgcolor("white") 设置背景颜色

3 ?7 ^1 ?1 U0 B6 a6 i) P
3 e; e7 L1 f) T
1 H2 H* p! E5 q

t=tu.Turtle() 设置tu

# T# d* u0 Q: {
) y" t. d* c: O; H) r
! z- g1 o1 Z+ x! A# ]

t.speed(0) 设置速度

. u5 Q% Q$ |( s% j) u3 H$ ?1 o
3 ^* ]6 E& m) x7 ^8 f+ F+ c
) p: D" e( V8 r, F+ x1 W

t.pensize(5) 设置画笔粗细

/ ?( \& M/ a$ Y2 Y
5 ~& N& [ y% f% v2 k
; N9 O( I n- [& v

t.penup() 起笔

+ G: @0 Q/ _- @- s9 L
. q, _0 p8 P B- f5 O
' n7 ^# a0 i3 o5 c

t.goto(0,-100) 走到这个坐标点

; K" Z9 g" h6 O( G/ n
% z! n$ _' l0 e" o1 ]
8 r$ o1 K( h9 z0 y* L

t.pendown() 落笔

+ z. F5 `/ @# o' v
4 h) k& m% w4 x1 v
* k' R: a. P$ r- j/ v

h=0.6 设置色相

3 |- G. ^& ~* G$ L
& p9 \! B% ]( N$ G3 S* p. N' a, }' e
9 v3 Q; Y: e, c9 U* M

def design(n,ang): 定义design函数

- { i9 i' c) ^# @7 A4 U
2 S9 L0 U# E9 ]
. O( K% `. ^' {% Z+ ~3 q

t.circle(60+n,90) 画圆

1 F0 D! x b! C& L! n8 V% Y" ^. ?, ?
/ d; {6 i9 K; J) } w4 ~
# V; C. a1 F5 j9 e

t.left(ang) 向左转ang个度数

# U' n5 F. C9 ~: \0 S% O8 v
8 D' ]- y+ L; k
3 E+ p" z# f2 d" \5 k' p

t.circle(60+n,90) 画圆

+ d3 G6 O$ b3 ]9 z0 M0 M0 m) q
, a' T% x ~* }- W! W; j, C
; D9 B9 u' B' r( I7 Y

for i in range(80): 设置i循环

% U! D+ F7 \/ ~& {6 _4 a; {& B
& m8 h' ?% Q" Z+ C
. I1 [3 a" q- r$ d. \1 h- i# t

c=colorsys.hsv_to_rgb(h,0.8,1) 设置颜色变化

4 T5 K a5 k' M1 }3 }& R9 ~! X
: s1 G- v s! c d6 J+ J. ~ F0 Q
( ~0 _9 A* U! c9 r

t.pencolor(c) 设置画笔颜色

) w- W% C6 _% q% U/ R
& {& `; W- e( @ |9 u
4 s# m* }: M t2 N4 a* g

design(i,60) 设置第一个design

+ E" T; w, P8 _4 { {# x9 B
* C K7 m# ~1 x3 u3 I$ S1 h9 X1 C
8 @# }- S: p7 A" K1 ]

design(i,90) 设置第二个design

7 R6 ~" t9 g+ _( N5 O& H
+ E+ H, T7 }! V6 u+ g
$ R0 ?. D b* Q( V/ Y6 K1 c G

design(i,120) 设置第三个design

( ]; x: s" E6 P; I$ m' Y+ K% ^5 i
# z# e a- {6 E Q
' W6 Q2 {! ~$ R X3 ]* o8 f

design(i,90) 设置第四个design

c9 V/ T- Y( A& t
5 j6 b( D0 a: Y0 S6 a( s$ [
' y# w( b- ^. Q9 U9 O

design(i,60) 设置第五个design

9 s4 U" X* D- A; T; P% n" k
7 D! q% t8 Q% U
; u+ \2 Y9 w& P0 `5 k8 L) D

h+=0.006 设置色相变化

: W; E. {0 F1 Y' |
) U6 O; ~0 x% u$ b
6 G+ e" q0 w6 ^ v) C( K

t.ht() 隐藏画笔

2 G% u# r3 ]5 a
' U7 S/ p2 _" b7 G/ D
4 Z( \: _5 a# t% V

tu.done() 结束

8 t& y- j: i" ~0 s" g# M
; L# N9 m+ l, p) }
s8 M9 P1 R* W, l% }
2 Y, g9 f- }. n
1 O9 F; f2 y: I- ?, _9 _5 f
6 m+ }$ R2 v. ^- E0 U$ x- y

源码如下:

! }* {; d; ^% p1 K- r2 p& ^% h
6 S( y' W. w- [
9 G& ]- a, x# a# A* G, r n

import turtle as tu

# v# r" G8 S- q& |( T' B; O# W( v
s- f1 p/ x2 M3 J; K/ x. @$ G* Z
$ o/ s+ O3 T. Q' s2 L* k8 q1 ^2 b4 U

import colorsys

a6 u7 O; q! Z
+ w3 N# J1 y0 W4 N5 D/ ^
0 z9 s7 Q! p/ A- L8 B

tu.Screen().bgcolor("white")

% K' J% m2 `5 y
. U- a1 k9 h+ b* S4 A
* V3 H' O) X2 A/ r- }: l. k+ H9 W

t=tu.Turtle()

+ m4 U- D( k$ p% E) a
# r& L# e3 U) m2 C9 C' a' G
# @0 I" B' e% N" H

t.speed(0)

4 s5 i1 |1 L& e1 N' Q
8 t4 w, E6 a- g( H5 s2 a/ Y1 e* n
: i9 e' L9 b( u# N; g8 A

t.pensize(5)

. C ~$ e% b5 I( e* y9 f, f
5 K" I; Y1 w) U: c6 Z1 A& b$ M
& Z) |" s: x9 L9 |9 e+ K

t.penup()

, ]7 z# G' U3 x* j1 m' _* R
( N5 _* B3 N! s4 i: n
+ h& G$ W$ m9 y. g( N( B9 l

t.goto(0,-100)

: v# W3 N* V% Z: U" A' b
- q7 w3 L4 k; m8 P, v- G* `
* {6 j! {% ^5 A9 R4 n1 O" ?

t.pendown()

& @0 H/ y( B7 u& z, c' L# a
& a) @# [! y, v/ M e5 o k
. C/ j' u! q4 ]" s, q; \- [, o( i

h=0.6

7 j" K$ r: S* u% n1 C
; I6 ]6 R; }1 o
0 i/ n1 t: w; q4 V2 x

def design(n,ang):

# g c$ @* r3 W5 ~6 T8 V$ ]
: E4 _* Z# o3 b2 x" O. r9 p$ G
/ V5 y0 v: P$ Y Y

t.circle(60+n,90)

- v( K, k/ ]. V7 `0 q
. I' ^0 F; ]5 Y6 V* Z# ]$ D' B
' c% Y! }- B2 o1 G# Y

t.left(ang)

6 J& _. c3 A% b/ g7 ~* L1 I6 t2 i
8 l; T8 c g+ D+ Z; k
0 Z% q# Y' ?3 m- g1 q

t.circle(60+n,90)

8 ?) Q& e! v. {; a m' b' I7 g
: H ?( ^# j1 r
; y: K& Q( f0 S

for i in range(80):

% x, h2 a4 g6 }+ E6 b
# v6 J2 r! X/ _( o9 s% l
9 a9 F. M& I J* s- P

c=colorsys.hsv_to_rgb(h,0.8,1)

0 {. x2 ]; M- ?% u4 }& s* ~
9 Y$ \* f. }0 n; p3 K* w
& A' z1 Q. E. J, @

t.pencolor(c)

9 C7 ~ y1 S% q/ [: D( J
" {5 t/ Z" V: s! _
( P0 q/ P8 X0 L! L

design(i,60)

4 b8 H# b+ X- l- K, n* O- j
+ \4 h$ t* s; F2 m6 s: x
; ~$ R; m4 f3 ]

design(i,90)

' }' _, p/ X2 \5 t! x! W y" [; w6 A6 H
9 q4 K4 S# {% b8 ?; b, ^) S
9 x) m$ @# i1 Z" w6 F" }- X

design(i,120)

' o' W$ S/ n/ n( {0 l# y
; I H9 i7 q; G4 ~8 o$ n; `
8 x" b4 C0 ~) b5 ~: ]* E

design(i,90)

G$ t" a7 f* e- n
$ v7 Y2 h% ]* p# y
" Z8 F& f p& a! D- L' x

design(i,60)

( V/ M! Y4 x6 t# `. r
) |+ R; s) K+ ?/ s; \+ S' C
1 |7 T- h% u! u k. u" I

h+=0.006

% e# g6 o; ?; y0 i$ l8 _
; M3 V: z7 D; F
. B b5 b9 s7 H, U p- _- l

t.ht()

& I) x9 F& L% L/ P+ {8 N# Y
: Z& ~$ K# |- S" }* Y& S1 i
8 V3 _; A5 h# e" j

tu.done()

5 ~7 e6 Y9 L) H3 l5 b. z z
0 L8 ^' d: @# k1 M. Z& f8 E
0 d( G' F: l% G( d. P
+ ?' [; `9 q3 m" Z0 s+ P
. E) f6 d) G- \" r2 D: _/ X) m9 i
% P0 u- [) Q4 q& c+ X# q
举报/反馈
/ U7 B, v" x" i; S
8 r% A- V# F; b2 R& C0 }) ^ U; r" Y% w5 O3 n& b8 s1 D, J* a1 B3 V. R% A8 X & [, N9 g3 o' w * R0 Q: P5 I& t1 F, T: d0 L
回复

举报 使用道具

相关帖子

全部回帖
暂无回帖,快来参与回复吧
懒得打字?点击右侧快捷回复 【吾爱海洋论坛发文有奖】
您需要登录后才可以回帖 登录 | 立即注册
盖好我的小被子
活跃在2024-9-12
快速回复 返回顶部 返回列表