Python graphics库详解

4008人阅读 评论(2) 收藏 举报
分类:


graphics库可以从http://mcsp.wartburg.edu/zelle/python/graphics.py下载,下载后的graphics.py放到python的安装文件夹下即可

GraphWin对象常用方法

方法名称 方法含义
plot(x, y, color) 在窗口中(x,y)位置绘制像素。 颜色参数可选, 默认值为黑色。
plotPixel(x, y, Color) 在 “原 始 ” 位 置 (x,y)处 绘 制 像 素 , 忽 略setCoords()方法设置的坐标变换。
setBackground(color) 将窗口背景颜色设为指定颜色, 默认值为灰色。
close() 关闭屏幕上的窗口。
getMouse() 程序等待用户在窗口内点击鼠标, 返回值为点击处的位置, 并以Point对象返回。
setCoords(xll, yll, xur,yur) 设置窗口的坐标系。 左下是(xll,yll), 右上角是(xur,yur)。 所有后面的绘制都以这个坐标系做参照(plotPexil除外)


图形对象通用方法
方法名称 方法含义
setFill(color) 设置对象内部填充颜色。
setOutline(color) 设置对象边框颜色。
setWidth(pixels) 设置对象的宽度(Point类不起用)
draw(aGraphWin) 在指定的窗口中绘制对象。
undraw() 从窗口中删除该对象。如该对象没有在窗口中画出将会报错。
move(dx,dy) 将对象沿x轴和y轴分别移动dxdy单位长度。
clone() 返回该对象的副本。


Point对象方法
方法名称 方法含义
Point(x,y) 以指定坐标的值(x, y)构造一点
getX() 返回该点的x坐标值
getY() 返回该点的y


Line对象方法
方法名称 方法含义
Line(point1, point2) 构造一个从点point1到点point2的线段
setArrow(string) 设置线段的箭头样式。箭头可以绘制在左端,右端,或者两端都有string
数值为
’first’, ’last’, ’both’,’none’
认值为
’none’
getCenter() 返回线段中点的坐标值。
getP1(), getP2() 返回线段相应端点的坐标值。


Circle对象方法:
方法名称 方法含义
Circle(centerPoint,radius) 根据给定圆心和半径构建圆
getCenter() 返回圆心的值
getRadius() 返回圆的半径长度
getP1(), getP2() 返回值为该圆边框对应点, 对应点指的是该圆外接正方形的对角点。


Rectangle对象方法
方法名称 方法含义
Rectangle(point1, point2) point1point2为对角点创建一个矩形。
getCenter() 返回矩形的中心点的克隆值。
getP1(), getP2() 返回构造矩形的对角点的克隆


Oval对象方法
方法名称 方法含义
Oval(point1, point2) 在点point1point2指定的边界框中创建一个椭圆。
getCenter() 返回椭圆的中心点的坐标值
getP1(), getP2() 返回构造椭圆的对角点的坐标值


Polygon 对象方法
方法名称 方法含义
Polygon(point1, point2,point3, ...) 根据给定的顶点构造一个多边形。 也可以只用一个顶点列表作为参数
getPoints() 返回构造多边形的顶点值的列表


Text 对象方法
方法名称 方法含义
Text(anchorPoint, string) anchorPoint点的位置为中心, 构建了一个内容为string的文本对象。
setText(string) 设置文本对象的内容
getText() 返回当前文本内容。
getAnchor() 返回文本显示中间位置点anchor的坐标值。
setFace(family) 设置文本字体。 family可选值为:’helvetica’,’courier’, ’times
roman’,
以及 ’arial’.
setSize(point) 设置字体大小为给定点point的大小。 合法数值为5-36
setStyle(style) 设置字体的风格。 可选值为’normal’, ’bold’, ’italic’,以及’bold italic’
setTextColor(color) 设置文本颜色。 与setFill效果相同。


color_rgb(red,green,blue)函数
设定颜色数值获得颜色
三个参数为0-255范围内的整数
返回一个字符串
color_rgb(255,0,0) 亮红色,
color_rgb(130,0,130) 中度洋红色。


graphics库使用:

# -*- coding: utf-8 -*-
from math import *
from turtle import *
from graphics import *


def main():
    #创建窗口对象,默认为200*200px,(0,0)表示屏幕左上角
    win=GraphWin()

    #画点
    p1=Point(100,100)
    p1.draw(win)

    #画圆,以p1为圆心,半径为100
    circ=Circle(p1,100)
    circ.draw(win)
    circ.setOutline("red")#外围轮廓颜色
    circ.setFill("yellow")#填充颜色

    #画线
    line=Line(Point(650,100),Point(250,100))
    line.draw(win)

    #在p1点上显示文字
    message=Text(p1,"圆心")
    message.draw(win)
    done()

main()



Text对象方法:getText(),setText()

Entry对象方法:getText(),setText(),Entry是创建一个对话框

交互式的多边形程序,可由用户点击5个点并生成多边形

# -*- coding: utf-8 -*-
from math import *
from turtle import *
from graphics import *


def main():
    #创建窗口对象,默认为200*200px,(0,0)表示屏幕左上角
    win=GraphWin("Draw a polygon",300,300)
    message=Text(Point(150,50),"click on five points")
    message.draw(win)
    #获得多边形的5个点
    p1=win.getMouse()#等待鼠标点击
    p1.draw(win)
    p2=win.getMouse()
    p2.draw(win)
    p3=win.getMouse()
    p3.draw(win)
    p4=win.getMouse()
    p4.draw(win)
    p5=win.getMouse()
    p5.draw(win)
    #绘制多边形
    polyon=Polygon(p1,p2,p3,p4,p5)
    polyon.setOutline("green")
    polyon.setFill("yellow")
    polyon.draw(win)
    #等待鼠标响应,退出程序
    message.setText("Click anywhere to quit")
    win.getMouse()

main()


用Entry求和实例:

# -*- coding: utf-8 -*-
from math import *
from turtle import *
from graphics import *


def main():
    win=GraphWin("Calculate the sum of two numbers",300,300)
    Text(Point(100,50),"数1:").draw(win)
    input1=Entry(Point(150,50),5)
    input1.setText(0.0)
    input1.draw(win)
    Text(Point(100, 100), "数2:").draw(win)
    input2=Entry(Point(150,100),5)
    input2.setText(0.0)
    input2.draw(win)
    Text(Point(80, 150), "两数之和:").draw(win)
    input3 = Entry(Point(150, 150), 5)
    input3.draw(win)
    #点击屏幕求和,求和运算必须是点击鼠标之后,否则参加计算的是默认值
    win.getMouse()
    sum = eval(input1.getText()) + eval(input2.getText())
    input3.setText(sum)
    win.getMouse()
    win.close()


main()


查看评论

python3.6 Graphics库的安装

使用Python进行图像编程,要使用到Graphics库。Graphics库可以从http://mcsp.wartburg.edu/zelle/python/graphics.py获取(将这些代码,直...
  • weixin_36340947
  • weixin_36340947
  • 2017-10-06 09:45:45
  • 3099

Python最简单的图形编程

使用Python进行图像编程,要使用到Graphics库。Graphics库可以从http://mcsp.wartburg.edu/zelle/python/graphics.py获取。在Window...
  • vernice
  • vernice
  • 2015-06-07 23:53:46
  • 14460

python的graphics库的简单用法

from graphics import * #设置画布窗口名和尺寸 win = GraphWin('CSSA', 700, 700)  #画点 pt = Point(100,...
  • Pain_Love
  • Pain_Love
  • 2017-06-23 16:55:21
  • 376

python学习--graphics模块安装与学习

graphics 是一个简单的面向对象的图形库, 旨在使新手程序员能够很容易地以面向对象的方式试验计算机图形。 python没有内置graphic模块,需要单独下载安装。经尝试不能通过pip下载安装...
  • kun_dl
  • kun_dl
  • 2018-01-23 14:56:36
  • 441

python graphics图形库

  • 2012年06月19日 14:02
  • 27KB
  • 下载

python的graphics库

  • 2017年11月14日 20:22
  • 19KB
  • 下载

【python学习】graphics模块

import graphicsfrom graphics import *注:graphics不是python的内置模块,需要下载并导入Lib库中窗口类方法win=graphics.GraphWin(...
  • leftAright
  • leftAright
  • 2018-04-16 21:06:30
  • 19

graphics.py python的一个简单图形库

  • 2013年11月15日 12:30
  • 27KB
  • 下载

安装PyGraphics

打开python自带的IDLE,输入import media,会提示ImportError: No module named ‘media’。 要编辑和使用PyGraphics,你需要一个编辑器。官方...
  • u011331383
  • u011331383
  • 2015-04-04 14:17:13
  • 1882

Python绘图Turtle库详解

Turtle库是Python语言中一个很流行的绘制图像的函数库,想象一个小乌龟,在一个横轴为x、纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行...
  • zengxiantao1994
  • zengxiantao1994
  • 2017-08-02 17:36:45
  • 31004
    个人资料
    持之以恒
    等级:
    访问量: 13万+
    积分: 4272
    排名: 8852
    赞助一下
    如果您觉得我的文章对您有帮助的话,不妨小额赞助一下,激励我写出更多的好文章,谢谢大家!

    以下是我的支付宝和微信账户