Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
1_bit
draw_pixel
提交
e752ca3f
D
draw_pixel
项目概览
1_bit
/
draw_pixel
通知
15
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
draw_pixel
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
e752ca3f
编写于
2月 13, 2021
作者:
1_bit
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
basice core file version 0.1 demo
上级
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
196 addition
and
0 deletion
+196
-0
core.py
core.py
+196
-0
未找到文件。
core.py
0 → 100644
浏览文件 @
e752ca3f
from
turtle
import
*
class
Core
:
'''
设置
'''
#填充颜色色值
#@fcolor=点填充颜色
def
fillcolor_set
(
self
,
fcolor
=
"black"
):
fillcolor
(
fcolor
)
#笔杆颜色设置
#@fcolor=点填充颜色
#@pcolor=线颜色
def
pencolor_set
(
self
,
fcolor
=
"black"
,
pcolor
=
"1"
):
if
pcolor
==
"1"
:
pcolor
=
fcolor
pencolor
(
pcolor
)
else
:
pencolor
(
pcolor
)
#笔杆尺寸
#@psize=线尺寸
def
pensize_set
(
self
,
psize
=
1
):
pensize
(
psize
)
'''
other func
'''
#跳转
def
loc_goto
(
self
,
movepos
):
penup
()
goto
(
pos
()
+
movepos
)
pendown
()
def
goto_
(
self
,
pos_
):
penup
()
goto
(
pos_
)
pendown
()
#line方法的绘图跳转控制
def
line_control_func_draw_move
(
self
,
cout_i
,
direction
,
lenght
,
plenght
):
if
cout_i
!=
(
lenght
-
1
):
if
direction
==
"right"
:
self
.
loc_goto
((
plenght
,
0
))
elif
direction
==
"left"
:
self
.
loc_goto
((
-
plenght
,
0
))
elif
direction
==
"up"
:
self
.
loc_goto
((
0
,
plenght
))
elif
direction
==
"down"
:
self
.
loc_goto
((
0
,
-
plenght
))
elif
cout_i
==
(
lenght
-
1
):
if
direction
==
"left"
:
self
.
loc_goto
((
plenght
,
0
))
if
direction
==
"up"
:
self
.
loc_goto
((
0
,
-
plenght
))
#step方法的绘图跳转控制
#@lenght=总长
#@blenght=bit一个位长度
#@plenght=点长度
#@direction1=横线绘制方向
#@direction2=竖线绘制方向
#@fcolor=填充颜色
#@pcolor=笔颜色
#@psize=笔大小
#@gotopos=如何跳转pos位置
#@cout_i=循环控制变量i
def
step_control_func_draw_move
(
self
,
lenght
,
blenght
,
plenght
,
direction1
,
direction2
,
fcolor
,
pcolor
,
psize
,
gotopos1
,
gotopos2
,
cout_i
,
height
):
print
(
'-----------'
,
blenght
)
posdict
=
{}
posdict
[
'line'
+
str
(
cout_i
)]
=
self
.
line
(
lenght
=
blenght
,
plenght
=
plenght
,
direction
=
direction1
,
fcolor
=
fcolor
,
pcolor
=
pcolor
,
psize
=
psize
)
self
.
loc_goto
(
gotopos1
)
posdict
[
'vline'
+
str
(
cout_i
)]
=
self
.
line
(
lenght
=
height
,
plenght
=
plenght
,
direction
=
direction2
,
fcolor
=
fcolor
,
pcolor
=
pcolor
,
psize
=
psize
)
if
cout_i
!=
(
lenght
-
1
):
self
.
loc_goto
(
gotopos2
)
return
posdict
'''
绘制
'''
#绘制点
#@plenght=点长度
#@fcolor=点填充颜色
#@pcolor=线颜色
#@psize=线尺寸
def
point
(
self
,
plenght
=
10
,
fcolor
=
"black"
,
pcolor
=
"1"
,
psize
=
1
):
poslist
=
[]
self
.
fillcolor_set
(
fcolor
)
self
.
pencolor_set
(
fcolor
,
pcolor
)
self
.
pensize_set
(
psize
)
begin_fill
()
for
i
in
range
(
0
,
4
):
poslist
.
append
(
pos
())
fd
(
plenght
)
right
(
90
)
end_fill
()
return
poslist
#绘制线段
#@lenght=线长度
#@plenght=点长度
#@fcolor=点填充颜色
#@pcolor=线颜色
#@psize=线尺寸
def
line
(
self
,
lenght
=
1
,
plenght
=
10
,
direction
=
"right"
,
fcolor
=
"white"
,
pcolor
=
"1"
,
psize
=
1
,
symmetrical
=
"f"
,
symmetrical_direction
=
"right"
):
posdict
=
{}
symmetrical_point
=
"f"
if
symmetrical
!=
"f"
:
if
symmetrical_direction
==
"right"
:
symmetrical_point
=
pos
()
+
(
int
(
symmetrical
)
*
plenght
,
0
)
elif
symmetrical_direction
==
"left"
:
symmetrical_point
=
pos
()
+
(
-
int
(
symmetrical
)
*
plenght
,
0
)
elif
symmetrical_direction
==
"up"
:
symmetrical_point
=
pos
()
+
(
0
,
int
(
symmetrical
)
*
plenght
)
elif
symmetrical_direction
==
"down"
:
symmetrical_point
=
pos
()
+
(
0
,
-
int
(
symmetrical
)
*
plenght
)
for
i
in
range
(
0
,
lenght
):
posdict
[
'point'
+
str
(
i
)]
=
self
.
point
(
plenght
=
plenght
,
fcolor
=
fcolor
,
pcolor
=
pcolor
,
psize
=
psize
)
self
.
line_control_func_draw_move
(
i
,
direction
,
lenght
,
plenght
)
if
symmetrical
!=
"f"
:
self
.
goto_
(
symmetrical_point
)
posdict
[
'symmetrical_point'
]
=
self
.
line
(
lenght
=
lenght
,
plenght
=
plenght
,
direction
=
direction
,
fcolor
=
fcolor
,
pcolor
=
pcolor
,
psize
=
psize
,
symmetrical
=
"f"
)
self
.
goto_
(
posdict
[
'point'
+
str
(
lenght
-
1
)][
3
])
return
posdict
#绘制线段
#@lenght=线长度
#@height=线高度
#@blenght=bit一个位长度
#@plenght=点长度
#@fcolor=点填充颜色
#@pcolor=线颜色
#@psize=线尺寸
def
step
(
self
,
lenght
=
1
,
height
=
1
,
blenght
=
1
,
plenght
=
10
,
direction
=
"right"
,
fcolor
=
"black"
,
pcolor
=
"1"
,
psize
=
1
,
symmetrical
=
"f"
,
symmetrical_direction
=
"right"
):
posdict
=
{}
symmetrical_point
=
"f"
symmetrical_draw_direction
=
''
if
symmetrical
!=
"f"
:
if
symmetrical_direction
==
"right"
:
symmetrical_point
=
pos
()
+
(
int
(
symmetrical
)
*
plenght
,
0
)
if
direction
==
"right"
:
symmetrical_draw_direction
=
"left"
elif
direction
==
"left"
:
symmetrical_draw_direction
=
"right"
elif
direction
==
"rightdown"
:
symmetrical_draw_direction
=
"leftdown"
elif
direction
==
"leftdown"
:
symmetrical_draw_direction
=
"rightdown"
elif
symmetrical_direction
==
"left"
:
symmetrical_point
=
pos
()
+
(
-
int
(
symmetrical
)
*
plenght
,
0
)
if
direction
==
"right"
:
symmetrical_draw_direction
=
"left"
elif
direction
==
"left"
:
symmetrical_draw_direction
=
"right"
elif
direction
==
"rightdown"
:
symmetrical_draw_direction
=
"leftdown"
elif
direction
==
"leftdown"
:
symmetrical_draw_direction
=
"rightdown"
elif
symmetrical_direction
==
"rightdown"
:
symmetrical_point
=
pos
()
+
(
0
,
int
(
symmetrical
)
*
plenght
)
if
direction
==
"right"
:
symmetrical_draw_direction
=
"left"
elif
direction
==
"left"
:
symmetrical_draw_direction
=
"right"
elif
direction
==
"rightdown"
:
symmetrical_draw_direction
=
"leftdown"
elif
direction
==
"leftdown"
:
symmetrical_draw_direction
=
"rightdown"
elif
symmetrical_direction
==
"leftdown"
:
symmetrical_point
=
pos
()
+
(
0
,
-
int
(
symmetrical
)
*
plenght
)
if
direction
==
"right"
:
symmetrical_draw_direction
=
"left"
elif
direction
==
"left"
:
symmetrical_draw_direction
=
"right"
elif
direction
==
"rightdown"
:
symmetrical_draw_direction
=
"leftdown"
elif
direction
==
"leftdown"
:
symmetrical_draw_direction
=
"rightdown"
for
i
in
range
(
0
,
lenght
):
if
direction
==
"right"
:
posdict
[
"step"
+
str
(
i
)]
=
self
.
step_control_func_draw_move
(
lenght
,
blenght
,
plenght
,
direction
,
"up"
,
fcolor
,
pcolor
,
psize
,(
plenght
,
plenght
),(
plenght
,
plenght
*
2
),
i
,
height
)
elif
direction
==
"left"
:
posdict
[
"step"
+
str
(
i
)]
=
self
.
step_control_func_draw_move
(
lenght
,
blenght
,
plenght
,
"left"
,
"up"
,
fcolor
,
pcolor
,
psize
,(
-
plenght
*
2
,
plenght
),(
-
plenght
,
plenght
*
2
),
i
,
height
)
elif
direction
==
"rightdown"
:
posdict
[
"step"
+
str
(
i
)]
=
self
.
step_control_func_draw_move
(
lenght
,
blenght
,
plenght
,
"right"
,
"down"
,
fcolor
,
pcolor
,
psize
,(
plenght
,
-
plenght
),(
plenght
,
-
plenght
),
i
,
height
)
elif
direction
==
"leftdown"
:
posdict
[
"step"
+
str
(
i
)]
=
self
.
step_control_func_draw_move
(
lenght
,
blenght
,
plenght
,
"left"
,
"down"
,
fcolor
,
pcolor
,
psize
,(
-
plenght
*
2
,
-
plenght
),(
-
plenght
,
-
plenght
),
i
,
height
)
#对称
if
symmetrical
!=
"f"
:
self
.
goto_
(
symmetrical_point
)
posdict
[
'symmetrical_step'
]
=
self
.
step
(
lenght
=
lenght
,
height
=
height
,
blenght
=
blenght
,
plenght
=
plenght
,
direction
=
symmetrical_draw_direction
,
fcolor
=
fcolor
,
pcolor
=
pcolor
,
psize
=
psize
)
print
(
posdict
)
self
.
goto_
(
posdict
[
'step'
+
str
(
lenght
-
1
)][
'vline'
+
str
(
lenght
-
1
)][
'point'
+
str
(
height
-
1
)][
0
])
return
posdict
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录