12 2012 档案

摘要:Basic primitivesPoint最简单的几何对象是一个点。它是一个窗口上平面的点。DrawPoint(int x, int y)#!/usr/bin/python# -*- coding: utf-8 -*-import wximport randomclass Points(wx.Frame): def __init__(self, parent, id = -1, title = 'points club'): wx.Frame.__init__(self, parent, id, title, size=(250, 150)) self.Bin... 阅读全文

posted @ 2012-12-30 16:44 |残阳|露 阅读(1361) 评论(0) 推荐(0)

摘要:GDI (图形设备接口) 是与图形界面交互的接口。它用于与图形设备如显示器、 打印机或文件进行交互。GDI 允许程序员在屏幕或打印机上显示数据,而不必关心特定设备的详细信息。GDI 可以使程序开发隔离于硬件。从程序员的角度来看,GDI 是一组用于处理图形的类和方法。GDI 包括二维矢量图形、 字体和图像。在开始绘制图形前,我们必须先创建一个设备上下文 (DC) 对象。在 wxPython中, 这个设备上下文叫wx.DC。可以在其上绘制的图形和文本。它一般方式表示设备的数量。相同的代码片段可以用不同种类的设备来实现。Wx.DC 不直接使用。相反,程序员应该选择派生类之一。每个派生的类的目的是要在 阅读全文

posted @ 2012-12-30 10:08 |残阳|露 阅读(3804) 评论(0) 推荐(0)

摘要:执行各种平面计算vtkPlane 提供各种平面计算的方法。这些包括投影点,评估平面方程,和返回平面的法向量。vtkPlane 是抽象类 vtkImplicitFunction 的具体实现。主要用在做体数据上的面的切割(cutter)继承关系基本方法:EvaluateGradient (double x[3], double g[3])评估功能梯度在点 x [3]。Push (double distance) 在方向量的方向上平移distance距离,负值表示沿着法向量相反的方向移动distance距离。EvaluateFunction (double x, double y, double z 阅读全文

posted @ 2012-12-27 10:15 |残阳|露 阅读(2746) 评论(0) 推荐(0)

摘要:simplejsonPython版的简单、 快速、 可扩展 JSON 编码器/解码器编码基本的 Python 对象层次结构:import simplejson as jsonprint json.dumps(['foo', {'bar': ('baz', None, 1.0, 2)}])print json.dumps("\"foo\bar")print json.dumps(u'\u1234')print json.dumps('\\')print json.dumps({" 阅读全文

posted @ 2012-12-25 20:51 |残阳|露 阅读(2867) 评论(0) 推荐(0)

摘要:原理:利用元类型,重新定义类实例化一个新对象的方法(__call__)行为。让其只返回同一个实例。#-*- coding: UTF-8 -*-#-------------------------------------------------------------------------------# Name: ģ��shell# Purpose: Ӧ�ó����main��ں���## Author: ankier## Created: 26-10-2012# Copyright: (c) ankier 2012# Licence: <... 阅读全文

posted @ 2012-12-24 20:41 |残阳|露 阅读(251) 评论(0) 推荐(0)

摘要:metaclass,元类metaclass是这样定义的:In object-oriented programming,a metaclass is a class whose instances are classes.Just as an ordinary class defines the behavior of certain objects,a metaclass defines the behavior of certain classes and their instances.metaclass的实例化结果是类,而class实例化的结果是instance。metaclass是创建 阅读全文

posted @ 2012-12-24 20:03 |残阳|露 阅读(339) 评论(0) 推荐(0)

摘要:首先,需要对上面几篇介绍的2个callHandler (PerformanceCountCallHandler,CacheCallHandler)进行改写。代码如下:#-*- coding: UTF-8 -*-#-------------------------------------------------------------------------------# Name: 模块2# Purpose:## Author: ankier## Created: 22-12-2012# Copyright: (c) Ankier 2012# Licence... 阅读全文

posted @ 2012-12-23 19:51 |残阳|露 阅读(406) 评论(0) 推荐(0)

摘要:Python的functools模块, 提供了3个有趣函数,partial,update_wrapper 和wraps 。partial函数,它可以重新绑定函数的可选参数,生成一个callable的partial对象。update_wrapper函数,把被封装函数的__name__、__module__、__doc__和 __dict__都复制到封装函数去。wraps函数,对update_wrapper更进一步封装。可以利用wraps函数,实现简单的方法拦截机制,来实现自己的ExceptionCallHandler,具体实现:#-*- coding: UTF-8 -*-#----------- 阅读全文

posted @ 2012-12-22 15:10 |残阳|露 阅读(441) 评论(0) 推荐(0)

摘要:Python的functools模块, 提供了3个有趣函数,partial,update_wrapper 和wraps 。partial函数,它可以重新绑定函数的可选参数,生成一个callable的partial对象。update_wrapper函数,把被封装函数的__name__、__module__、__doc__和 __dict__都复制到封装函数去。wraps函数,对update_wrapper更进一步封装。可以利用wraps函数,实现简单的方法拦截机制,来实现自己的PerformanceCountCallHandler,具体实现:#-*- coding: UTF-8 -*-#---- 阅读全文

posted @ 2012-12-22 14:31 |残阳|露 阅读(353) 评论(0) 推荐(0)

摘要:Python的functools模块, 提供了3个有趣函数,partial,update_wrapper 和wraps 。partial函数,它可以重新绑定函数的可选参数,生成一个callable的partial对象。update_wrapper函数,把被封装函数的__name__、__module__、__doc__和 __dict__都复制到封装函数去。wraps函数,对update_wrapper更进一步封装。可以利用wraps函数,实现简单的方法拦截机制,来实现自己的cacheCallHandler,具体实现:#-*- coding: UTF-8 -*-#--------------- 阅读全文

posted @ 2012-12-22 11:39 |残阳|露 阅读(377) 评论(0) 推荐(0)

摘要:收缩构成一个任意的数据集的单元格vtkShrinkFilter 收缩构成对其质心任意数据集的单元格。单元格点的平均位置作为计算单元的质心。萎缩中断开另一个单元格的结果。此筛选器的输出是的一般数据集类型 vtkUnstructuredGrid。警告:它是可能打开细胞里面翻出来,或在特殊情况下造成自我交集。例子:#-*- coding: UTF-8 -*-#-------------------------------------------------------------------------------# Name: 模块2# Purpose:## Author: ... 阅读全文

posted @ 2012-12-18 21:04 |残阳|露 阅读(1345) 评论(0) 推荐(0)

摘要:vtkTransform描述通过一个 4 × 4 矩阵的线性变换VtkTransform 可以用于描述线性的完整范围 (也称为仿射) 坐标转换在三个维度,内部表示为 4 x 4 齐次变换矩阵。当您创建新的 vtkTransform 时,它总是初始化为标识转换。SetInput() 方法允许您设置另一种转换,替换身份转换。有一个管道机制来确保当修改输入,则当前转换将相应更新。这种管道机制也支持由 Concatenate() 方法。在 PostMultiply 模式下,额外的转换将由当前矩阵表示任何转换之后发生。此类执行所有业务在右手坐标系中用右手旋转。剩下的一些图形库使用左手坐标系统和 阅读全文

posted @ 2012-12-18 20:35 |残阳|露 阅读(4056) 评论(0) 推荐(0)

摘要:例子:#-*- coding: UTF-8 -*-#-------------------------------------------------------------------------------# Name: 模块mainFrame# Purpose: 应用程序的主界面## Author: ankier## Created: 16-12-2012# Copyright: (c) ankier 2012# Licence: <your licence>#--------------------------------------... 阅读全文

posted @ 2012-12-16 21:07 |残阳|露 阅读(1116) 评论(0) 推荐(0)

摘要:vtkRotationalExtrusionFilter 是一个建模筛选器。它采用多边形数据作为输入,并生成输出的多边形数据。输入数据集是围绕 z 轴扫描出来的,以创建新的多边形基元。这些基元构成一个"裙边"或扫掠的曲面。例如,扫描一个线作为输入数据,环绕z轴扫描一圈就创建圆环的多边形的数据。此筛选器有许多参数可以设置。您可以控制是否 2D 对象 (即,多边形或三角地带) 的扫描上铺的生成几何通过"旋盖"的实例变量。另外,您可以控制旋转,角度和旋转以及是否执行沿 z 轴的平移。(平移是以创建类似"弹簧"的螺旋样式模型非常有用)。您还可 阅读全文

posted @ 2012-12-13 18:38 |残阳|露 阅读(1161) 评论(0) 推荐(0)

摘要:vtkTexturedSphereSource创建一个中心点在原点球体的。在两个(φ)的纬度和经度(θ)方向上,可以分别设定分辨率(多边形离散化)。它也可以通过指定部分领域最大φ和θ波的角度,创建半球体。基本方法:SetRadius(20) 设置球体直径SetThetaResolution(40) 设置维度上的分辨率 SetPhiResolution(40)设置经度上的分辨率SetTheta(100)设置最大的经度角SetPhi(10)设置最大的维度角例子:#-*- coding: UTF-8 -*-#--------------------------------------------.. 阅读全文

posted @ 2012-12-11 20:10 |残阳|露 阅读(1849) 评论(0) 推荐(0)

摘要:vtkTextSource 转换一个字符串成poly data。基本方法:SetText('Hello, welcome') 设置显示的文本内容SetForegroundColor(0.1, 1.0, 0.5) 设置文本的颜色etBackgroundColor(1.0, 0, 1.0) 设置文本的背景色例子:#-*- coding: UTF-8 -*-#-------------------------------------------------------------------------------# Name: 模块2# Purpose:## Author: ... 阅读全文

posted @ 2012-12-11 19:47 |残阳|露 阅读(1907) 评论(0) 推荐(0)

摘要:vtkSuperquadricSource创建以原点为中心的多边形超二次曲面,可以设置尺寸。可以设置两个(φ)的纬度和经度(θ)方向的分辨率(多边形离散化)。浑圆度参数(纬度浑圆度和经度浑圆度)控制超二次曲面的形状。环形布尔值控制是否产生环形的超二次曲面。如果是的话,厚度参数控制的厚度的环形:0是最薄的环形,和1具有最小尺寸的孔。缩放尺度参数允许超二次曲面,在x,y,和z(在任何情况下,正确地生成法线向量)进行缩放。 尺寸参数控制的超二次曲面的size。原理是基于“刚性基于物理的超二次曲面”,AH巴尔,在“图形宝石III”,大卫柯克,编,科学出版社,1992年。基本方法: SetCenter. 阅读全文

posted @ 2012-12-11 09:13 |残阳|露 阅读(945) 评论(0) 推荐(0)

摘要:vtkPointSource用来创建围绕特定中心点,特定直径的和特定数量点集合组成的球体。默认点是随机分布在球体里面。也可以生产的点只分布在球面上。基本用法:SetRadius()设置球体半径SetCenter()设置球体中心点SetNumberOfPoints()设置球中的点的个数SetDistributionToUniform()设置点的分布在球体内SetDistributionToShell()设置点分布在球面上。例子:#-*- coding: UTF-8 -*-#-------------------------------------------------------------- 阅读全文

posted @ 2012-12-10 21:21 |残阳|露 阅读(2041) 评论(0) 推荐(0)

摘要:vtkPlaneSource创建一个平面的四边形的数组。vtkPlaneSource创建一个m×n阵列表示的一个平面上的四边形。改平面指通过指定一个起点,然后和其他两个点,定义了两个轴的向量。这两个向量不一定是正交的,但是必须不平行的一个四边形。 可以控制的ivars XResolution和YResolution来调节平面的分辨率(即,细分数)。缺省情况下,平面的中心在原点并垂直于z轴,长度为1和分辨率设置为1的宽度和高度。有三种方便的方法,让您可以轻松设置平面。第一,SetNormal(),允许指定平面的法向量。沿着法向量旋转平面。第二,SetCenter(),平移到指定的中心点 阅读全文

posted @ 2012-12-10 19:03 |残阳|露 阅读(3745) 评论(0) 推荐(0)

摘要:vtkOutlineSource创建一个线框的形状盒子。通过SetBounds()方法可以设置边界盒的长高宽。通过SetCorners()方法可以设置边角的弧度形状。例子:#-*- coding: UTF-8 -*-#-------------------------------------------------------------------------------# Name: outlineActorFactory package# Purpose: 通过两个点,创建一条直线## Author: ankier## Created: 08-12... 阅读全文

posted @ 2012-12-08 15:08 |残阳|露 阅读(1157) 评论(0) 推荐(0)

摘要:vtkLineSource 通过两点(x, y, z) 来创建一条线的poly data。基本方法: SetPoint1,SetPoint2设置先的2个端点。virtual voidSetPoint1 (double, double, double)virtual voidSetPoint1 (double[3])virtual double *GetPoint1 ()virtual voidGetPoint1 (double data[3])virtual voidSetPoint2 (double, double, double)virtual voidSetPoint2 (double. 阅读全文

posted @ 2012-12-08 14:18 |残阳|露 阅读(2597) 评论(0) 推荐(0)

摘要:vtkImageCanvasSource2D 数据源,开始创建一个空白的图像. 可以再上面画很多图像,如果线,管子,正方形,圆形等。基本方法: SetScalarTypeToUnsignedChar:设置值类型为无符号字符 SetDrawColor:设置画刷颜色 FillBox(0,511, 0,511)背景方块 FillTube(500,20, 30,400, 5)有宽度的线段 DrawSegment(10,20, 500,510)线段 DrawCircle(400,350, 80.0)园周 FillPixel(450,350)填充 FillTriangle(100,100... 阅读全文

posted @ 2012-12-06 21:30 |残阳|露 阅读(2399) 评论(0) 推荐(0)

摘要:vtkEarthSource 数据源,用圆球形的样式来生产地铁的版块轮廓形状。基本方法:virtual voidSetRadius (double)virtual doubleGetRadius ()virtual voidSetOnRatio (int)virtual intGetOnRatio ()Radius设置地球的半径长度OnRatio设置地球显示的精确程度 0~16, 值越小,显示越精确。例子:#-*- coding: UTF-8 -*-#------------------------------------------------------------------------ 阅读全文

posted @ 2012-12-06 20:22 |残阳|露 阅读(1033) 评论(0) 推荐(0)

导航