收藏本站 劰载中...网站公告 | 吾爱海洋论坛交流QQ群:835383472

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

[复制链接]
* X- t9 Q; Q" | Q/ x
% z! f9 R0 Y' o
* q7 i* b* W8 w; C* _
' ^3 \7 y3 c* Y# b
01:51
9 w2 o) U8 L: \6 L+ l
1 H) L9 Q5 {) y4 R' H7 i" W
9 j) G2 Q8 U0 ^& }# k8 b
4 x; ]' y1 o1 q' y, g4 ^
& C- o$ {4 Y m2 T' Y4 O4 {9 A

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

# G; V$ _1 @$ J& a# k
1 z7 ~; P: R8 M3 Z$ x" b
* {# H9 H, K4 Q7 X `8 I0 }% C
用python画绚丽的渐变色立体漂亮图案
! }7 |) \; V: c" L {0 h/ F
" h$ @- z) D) [9 N
# b8 v$ x) H7 n: A" |6 \& @

import turtle as tu 调用turtle库

% H+ H/ F7 x: D2 b
# c' k0 _7 @& u; h4 t
/ C2 e0 Q- m9 H* F1 E* N5 @) o: O

import colorsys 调用颜色

+ A7 P# b9 l/ i
7 L, @+ R9 F- g5 N! z- R
( ]" l( V! @# Y9 d( B0 e

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

) B7 G, W; X- H2 Q; p3 I
' K% a* }% |; ~$ f1 v
& N8 k* H! a A& F7 F

t=tu.Turtle() 设置tu

+ J) ^. |# y1 M0 N: C9 p' _; G
" }0 ? O+ g/ Z
3 c! A+ e* Q$ E; v, m0 R

t.speed(0) 设置速度

# m3 ~1 z( e) f
9 T$ m m" T, P; h$ l6 \/ ?2 V/ \
* x0 [8 E# |* q7 w$ S, x* R& r6 a

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

/ C3 W" Z+ X; {2 D* z2 ?( T- C3 ~+ `* t
q( F+ A/ j8 M2 k
$ ?# _: p$ M4 w3 p' I: O$ e

t.penup() 起笔

& g5 V; @1 ^* ~ x
* w( d7 j) P# G! h
. F$ C1 C9 ]+ ?/ A4 P$ x# K

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

9 s: X5 L: R- N a
# ~5 n( [. |" v( L2 [# O
0 w1 T6 P+ }. q n3 W: E" f( r) C

t.pendown() 落笔

* k* |' l1 o8 l5 g: P8 J# h
* }: f! F7 O8 T0 x8 V- P' K' x
% C1 M D9 i% x( B2 \* A, a

h=0.6 设置色相

* a: y8 ?! Y7 [, y8 x! e$ E
- d8 c8 S* s8 a* b" c
3 ]( d7 I! j3 k7 i% J; x9 h+ n8 f

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

/ H( G& J2 O. i6 M/ f
. P" D1 L, g9 K% t: ~2 P
& l6 c6 x n: ~" s

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

( r. ?' B9 l8 i n
7 J1 e) Y( A h
( T( B+ _7 s7 ^$ u, }; I

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

; U! S8 L1 d" W a
) k) E5 p" U3 V/ q
0 P b% L3 L3 h5 o+ r1 U

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

2 J" {0 ]2 N* ~' z$ |! q, } w
& e3 X/ w [8 O/ M- |7 \/ @
4 M, \6 t, X2 ~! L' p

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

' Q2 s0 A; H" S
+ I- q7 r6 C' l9 B/ H4 Z
% Y+ V4 B& |8 R1 r- n/ M1 r

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

" L+ [% w/ c5 _0 x( ]0 Z1 f
# X- t( O+ [" W& k# W; \
0 B w8 q: m4 n: L

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

4 J/ v! I k" | Y; y C3 s' @
# B- N0 s0 d- d" m3 {5 f
- z, t$ ?/ a, k

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

2 z) R) V- _8 c3 q$ t$ o1 j1 q
; i8 k9 u3 f/ R# M x% O: r
: N7 I- `! r* r) z8 C

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

% O4 V6 l% j- i; i! e J+ c% N5 F
9 m' }4 M# o; q3 L7 k0 q5 P) J
% L) c' g; s" p; | Y# M b- s& \

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

& G8 D. `7 b( L' k& d O1 p" E( x
7 I1 |* P4 w. [! z7 P
* H+ m _$ K, S/ N

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

! T, G8 ^" T% ~" o* K: l$ s
% o' _+ @ \, ^6 A) D2 N8 b
# G) M: Y) @0 J" o% z! C

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

4 Q2 Y8 y6 q0 h; O( r4 p
4 z/ x1 z2 v/ j* y5 f
0 m* {& x, ]8 u

h+=0.006 设置色相变化

; p6 q" v' p* ^" I$ E; j
- z2 ?' M1 @$ _, G% u
# H9 z6 N7 @: K9 O9 A/ B

t.ht() 隐藏画笔

, ]; I. B% K& v* V4 S3 p
) H$ y1 U8 ~" O' w* v% g
8 J' G9 R1 Z6 _' v3 ~$ y- `) G2 B

tu.done() 结束

( u' M, K8 \6 V( b1 g3 q
/ v0 w7 ?& [- ]8 m, `* I
9 F4 ]. a3 Q2 c0 R* V6 T( }& S, L+ F
. I6 [+ X* ?% O
: G% {# }, I% I' E& o
5 u9 e `# l+ ?/ ^& Q/ `9 j* k

源码如下:

" ?+ I" t) N( N1 H d2 I
R2 J a3 K8 h) _" L( @: N- `
' @1 Q. A, I, k5 G5 W0 `$ @

import turtle as tu

2 R4 I0 K1 s- }0 r8 Q! e- h; t
$ u- q5 J/ u5 I! s) n9 T5 S/ P9 H& P1 ?
, y7 b- Z8 M$ e0 D& f6 c

import colorsys

\* \5 \: m8 a5 R8 Q4 \1 c8 Q
9 G, z1 z. P8 d* b
# W9 O% i7 ]1 n* P9 C$ `5 g8 m

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

( I. k: q2 a9 D* N k0 L+ q
' z" u& R0 J! ] ]% N0 N
$ b- c* B f5 B M

t=tu.Turtle()

z# d6 u5 a! p @) ?- Z' i
3 V1 F' f0 c) K; v1 U# E U
, G/ \2 ]5 y: f# m, m$ b- D

t.speed(0)

0 ~. W- S" M% @
; e# Q8 u" G; a4 o" y
3 b$ u0 j3 G" }0 ?8 a5 {

t.pensize(5)

/ c# Y4 R* U q8 g
. y q: R+ ]5 D. O/ z
7 _1 V" E+ [. k& K

t.penup()

# S/ P, O5 J' [- [% {, p; M/ ^
3 i- G' L! u3 Y6 | h1 a" ` B
5 y5 Z& E9 i" x4 n. h4 d

t.goto(0,-100)

4 p6 C" L2 o# X: R* _$ v% ^2 L, C
1 e' ~' P2 b& q5 A% L& A
! S1 O4 b2 ~. O3 ^2 ~2 _$ K

t.pendown()

* b0 k& r& o l
7 g- X1 n" s, q# y) ?. M$ m
4 x7 U* {3 A8 J0 t. s* ^" T( V

h=0.6

$ g: a4 {5 K7 m9 u. e! p
4 u2 R0 K5 N) W* ~+ B
1 l* t7 w. c0 G0 g

def design(n,ang):

1 C2 N& b* ^1 ` a
3 A+ t7 z& i' t: k8 Q G' z
2 m* y9 h; g/ k( q3 |" h

t.circle(60+n,90)

# I1 d2 J+ K$ c) f
3 {5 w$ _& o$ T5 i, K3 T
4 i2 B1 x- ]2 x

t.left(ang)

c# S) k9 ^0 c: j
+ I0 q; D5 F7 o& M
( G- c; c( ~( W6 x; _3 {0 T- N

t.circle(60+n,90)

/ y; i. q/ ^# |1 w. R# G, R0 Y
. X+ H5 V/ k" \# A0 |# u ?
) p1 P& R7 ~5 w/ Y# S' v' v9 o

for i in range(80):

2 k( T- |" h$ J% m C3 @, w: E
# x6 n7 t3 L, L( j6 u2 U1 _
- v3 y' w- s' |" f2 p: j

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

7 {) I+ L4 X0 c" R+ X( q1 ]6 D
2 i7 m7 ~9 G& l1 e0 n% S7 X8 r
* ^- o! H) j5 Z6 E3 m+ @! _

t.pencolor(c)

/ ~" u3 r" j; f2 U8 y6 Y# p& T
; M. B9 @0 C2 ^
$ V5 M+ p! u/ t; N* T

design(i,60)

$ b0 r0 w4 Y+ }( _( E
0 z2 L' T- a: d* F9 p3 ~% q
; j( f+ d6 r3 v L* k( ]

design(i,90)

9 T# b$ ~, l3 h" \
# T& {! [$ P" O6 k: v9 v' G
v; N" \6 t- D

design(i,120)

- ]* W: a) f! f7 R& i+ D
% S( {! S* r/ G6 O& P B
- |; m Y6 N2 O3 z4 E5 X. y1 }9 l3 r6 K

design(i,90)

m0 ]2 P2 [. O& n
. b( l+ x- z+ G
; n% d9 w8 o1 q% Y3 X

design(i,60)

0 [/ t! a" O4 W7 \5 l: O9 K, C
7 w5 S( w3 F3 W+ T
( ?9 m! l& s# j k# g

h+=0.006

, @9 j+ a0 L' X! y
5 N$ |) i2 ?2 J+ p" |
3 Q- t" u* v6 ~3 ]

t.ht()

8 g! }8 s, ?& T
9 M7 E& L! @& m2 L3 P: b$ Q2 W
% d# o5 y; i0 Y' i6 t }

tu.done()

* d. ^# ^8 f( }) T! ^* U
& w% u X. @# |; v2 o. L
& a6 f1 R1 R1 L( Y5 s% W
/ i7 x1 b3 q2 \- b
/ b, I+ ]) f( N, ]& Y4 n, M9 Z# y
4 W, b; A- f- b3 ~/ c
举报/反馈
8 A+ B* a. w' `7 k- L/ \8 N( h7 {
6 s+ y* z* s. R8 X2 l) s' n$ X* v8 R $ n6 `) [ }$ ?9 p0 j+ k( r- [9 V0 q1 O; V) E; T6 H9 T * _$ U/ C) _. t, g7 V$ \& d! ~, P2 d e0 j% u& l( d
回复

举报 使用道具

相关帖子

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