`
lovecontry
  • 浏览: 1095186 次
文章分类
社区版块
存档分类
最新评论

C#GDI+图元组态和IronPython脚本应用之LED影像系统

 
阅读更多

这段时间一直进行LED影像系统紧张的开发工作,目前成绩还是非常“斐然”的,终于有了一点透气的机会:)

该系统从技术角度来说包括三点:一是图元组态(这点和普通的组态软件没有什么区别,由于面对的用户技术层次相对较低,所以把原来嵌入式组态修改属性的属性列表,修改为属性面板,以直观的方式修改组件属性);二是图片特效制作,图片特效主要是淡入淡出、旋转、晶格、移动、放缩等等;三是IronPython脚本,该脚本为C#语言开发,是作者为了证明C#效率不行而开发的代码,没有想到事与愿违,效率反而出奇的好,被微软收编后,推出了开源的IronPython脚本,该脚本最大的特点就是和C#无缝集成,可以引用C#所有的库,就如C#本身引用一样,此外还能直接引用C#自己开发的库(其实和系统库的引用没有本质区别),本系统就采用了该脚本进行特效处理,这样系统的特效完全实现了定制,并且接口丰富,应对能力极强。

这是脚本特效编辑器(下图)

这是特效具体的一个脚本代码:

defprocess():
ifthis.RunState==0:
Init()
this.RunState
=1
this.Image
=this.Data.BmpImage

this.Total
=80/(this.Rate+1)
this.Current
=this.Current+1
dw
=BitmapProcess.GetDiagonalWidth(this.Image.Width,this.Image.Height)
ds
=(float)(dw)/this.Total
width
=ds*(this.Current+this.Total/2)

bmp
=BitmapProcess.OpenBevel(this.Image,Orientation_Bevel.TopLeft,width,Color.Black)
bmp
=BitmapProcess.OpenBevel(bmp,Orientation_Bevel.BottomRight,width,Color.Black)
bmp
=BitmapProcess.OpenBevel(bmp,Orientation_Bevel.TopRight,width,Color.Black)
bmp
=BitmapProcess.OpenBevel(bmp,Orientation_Bevel.BottomLeft,width,Color.Black)
this.Data.BmpImage
=bmp

ifwidth>=dw:
this.Current
=this.Total+1

defInit():
importclr
clr.AddReferenceByPartialName(
"System.Windows.Forms")
clr.AddReferenceByPartialName(
"System.Drawing")
clr.AddReferenceToFile(
"BitmapProcess.dll")

fromSystem.Windows.Formsimport*
fromSystem.Drawingimport*
fromLBxSoft.Drawingimport*

try:
process()
except:
print"Error"
分享到:
评论

相关推荐

    基于GDI+的 图元绘制拾取 C#实现

    在本文中,我们将深入探讨如何使用C#语言和GDI+库来实现图元绘制及拾取功能。GDI+(Graphics Device Interface Plus)是Windows应用程序中用于图形绘制的一个强大工具,它允许开发者创建丰富的2D图形、图像处理以及...

    GDI+图像程序设计(PDF & 源码 -电子工业出版社)

    本书适合于开发GDI+图形应用程序的初、中级程序员阅读,书中给出了大量用C#语言编写的可重用示例代码,可以使读者更快地掌握书中所介绍的各种知识和概念。本书也可以作为大专院校相关课程的重要辅导教材。 【编辑...

    C#GDI+图形程序设计源码

    c#图形书中最经典的一本书当中包括饼图,条形图,绘图板制作等 第1章 GDI+ ——下一代图形接口 1.1 理解GDI+ 1.2 探索GDI+ 的功能 1.3 从GDI的角度学习GDI+ 1.4 .NET中的GDI+ 名称空间和类 总结 第2章 第一个...

    用GDI+在panel上画圆,随意托动

    在本主题中,我们将深入探讨如何利用C#语言和GDI+在Panel控件上绘制可随意拖动的圆,并通过双缓冲技术解决在拖动过程中可能出现的闪烁问题。 首先,我们需要了解GDI+的基本概念。GDI+提供了一个Graphics类,它是...

    GDI+ SDK参考(翻译版本高清)

    GDI+(Graphics Device Interface Plus)是Windows操作系统中用于图形绘制和图像处理的一个高级API,它是GDI(Graphics Device Interface)的升级版。GDI+提供了丰富的2D图形、图像和文字渲染功能,广泛应用于软件...

    C#流程图编程演示(用GDI+实现鼠标绘制流程图的Demo).rar

    通过学习这个Demo,开发者可以了解到如何在C#中利用GDI+进行图形编程,为自己的应用程序添加更丰富的视觉元素和交互体验。 请注意,这个压缩包中的示例代码可能包括一个Windows Forms应用程序,包含了必要的控件和...

    GDI+教程(C++中文版).pdf

    GDI+是微软公司提供的一套图像处理和图形输出的编程接口,它是基于类的应用程序编程接口(API),专门针对C/C++开发者使用。GDI+的全称为Graphical Device Interface Plus,是在GDI基础上的增强版,用于管理Windows...

    GDI+SDK参考 GDI+SDK参考

    - **目标**:Microsoft Windows GDI+ 是一个专为 C/C++ 开发者设计的基于类的应用程序编程接口(API),其主要目的是让应用程序能够高效地在视频显示器和打印机上呈现图形和格式化文本。 - **适用范围**:适用于...

    C# GDI GDI+编程小结

    ### C# GDI GDI+编程小结 #### 一、引言 GDI+ (Graphics Device Interface Plus) 是微软为了提升 Windows 平台上的图形处理能力而在 Windows XP 和 Windows Server 2003 中引入的一项重要技术。作为 .NET 框架的...

    C#编写的用GDI绘制的图片显示、拖动、缩放自定义控件

    在本文中,我们将深入探讨如何使用C#编程语言与GDI+(图形设备接口)来创建一个自定义控件,该控件具有显示、拖动和缩放图片的功能,特别是支持BMP格式的图片。GDI+是.NET Framework中的一部分,提供了一套丰富的...

    GDI+ SDK参考手册

    在学习过程中,对比GDI与GDI+的区别,如GDI的点阵图形和有限的色彩管理,有助于更好地理解GDI+的优势和应用场景。 总之,GDI+ SDK为开发者提供了强大的图形处理工具,是构建具有高质量图形和用户界面的Windows应用...

    GDI介绍、GDI+的SDK及SDK 教程

    GDI(Graphics Device Interface)是微软Windows操作系统提供的一种图形设备接口,它允许应用程序与系统进行图形绘制和设备处理。GDI使得开发者无需关心底层硬件细节,就能高效地创建和管理图形输出,包括文本、图像...

    gdi+ 学习资料

    - **发展历程**:GDI+作为Windows早期版本中提供的图形设备接口GDI的后续版本,是基于GDI之上构建的一个更高级别的图形子系统。 - **技术特点**: - **API形式**:GDI+提供了一套C++类和一套托管代码类,分别称为...

    Visual C++.NET进行GDI+编程

    在本文中,我们将深入探讨如何使用Visual C++.NET进行GDI+编程,涵盖GDI+的基础,字体和文本绘制,以及图像处理等关键知识点。 **一、GDI+概述** GDI+(Graphics Device Interface Plus)是Windows API的一个扩展,...

    GDI+编程.pdf

    GDI+(Graphics Device Interface Plus 图形设备接口加)是微软为Windows XP和Windows Server 2003操作系统设计的一个子系统,并且作为.NET框架的重要组成部分。GDI+主要用于在屏幕和打印机上绘制图形图像和显示信息...

    GDI+SDK参考(中文版)(pdf)

    文档阐述了如何管理和应用这些坐标系统,以实现精确的图形定位和缩放。 #### 字体与文本 GDI+增强了对字体和文本的支持,包括字体系列和字体的构造、文本的绘制和格式化、字体的枚举和管理等。文档还介绍了如何...

    GDI+ SDK参考(翻译版本)

    - **定义与功能**:Microsoft Windows GDI+ 是一种专为 C/C++ 开发者设计的应用程序编程接口(API),它允许开发者在视频显示器和打印机上使用图形和格式化文本。此 API 提供了基于类的接口,使得应用程序可以通过它...

    VC++使用GDI++绘图参考(翻译版本).

    由于基于 Microsoft Win32 的应用程序无法直接访问图形硬件,因此 GDI+ 在其中扮演了关键角色,作为设备驱动和程序动作之间的协调者。 ##### 适用范围 GDI+ 主要适用于以下方面: - 在显示器或打印机上绘制图形和...

    GDI+说明文档

    - **贝塞尔样条**:贝塞尔样条是GDI+中非常重要的图形元素之一,广泛用于创建复杂的曲线和形状。 - **路径**:路径是由一系列连接的线条和曲线组成,可以填充或描边。 - **画刷和填充图形**:介绍了不同类型的画刷...

    GDI+ for VCL

    GDI+ for VCL 是一个专门为 Delphi 和 C++Builder 开发者设计的库,它允许程序员利用 GDI+(图形设备接口加)的功能在这些编程环境中创建丰富的图形和图像处理应用。GDI+ 是微软提供的一种图形绘制技术,比传统的 ...

Global site tag (gtag.js) - Google Analytics