本文介绍了ZOS-API结构的基础知识和应用于ZOS-API的面向对象编程的概念。尽管ZOS-API面向对象的本质在很大程度上是“隐藏的”,但它可以帮助您更好地理解ZOS-API的词汇和结构。
本文将重点介绍一些关于面向对象编程的关键概念,以及如何在ZOS-API中使用它。您不需要成为开发人员就可以使用ZOS-API,同时,掌握一些基础知识将使得ZOS-API的使用变得更加简单。
什么是面向对象编程?
面向对象语言(Object-Oriented Languages)使用了高效的方法进行编程。使用对象(Objects)和种类(Classes)来组织数据,使代码可以在不同的工程中重复使用,而不是每次都从头开始编写。这个概念易于用来定义OpticStudio文件。
每个.zmx文件代表一个不同的序列和(或)非序列模式下的光学系统,这些光学系统中可以设置不同数量的物体和(或)表面,…
在面向对象程序中,每个光学系统都被看作一个API“对象(Object) ”。光学系统有共同的特征,如波长、表面、…
在面向对象编程中,具有共同特征的对象被分组到一个主列表中。具有这个特征的主列表被称为类(Class)或接口(Interface)。
这些类被进一步分组到称为名称空间(Namespaces)的库中。如下为代码结构的总结:
Namespace (Library containing Classes and Interfaces)
Class / Interface: group (template with attributes)
Functions (action)
Property (set or get a value)
如果您想要获得更多信息,请查看链接: https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/inside-a-program/general-structure-of-a-csharp-program
ZOS-API的结构
ZOS-API是被称为名称空间的接口层次结构。使用ZOS-API意味着创建API“对象”,作为是接口类型的一种。接口决定对象的哪些特性可用。
特性是指属性或函数:
属性表示定义或者读取设置、已存储的值。
函数为命令,表示对象可以执行的操作。
调用对象的函数或属性总是会执行返回。可以进行返回的类型包括:
数值(双精度型、整数型、…)、文本(字符串)、布尔(Boolean) (是或否)。
int value = Object1.NumberOfFields;新对象,作为一种接口。
IField New_Object = Object1.GetField(1);一种属性是获取( [get] ),一种是获取、设置( [get, set] )。
可用于获取数值的语句是:value = Object1.Normalization;
可用于设置数值的语句是: Normalization = value;
接口的层次结构
让我们打开示例文件,看看代码是如何构成的。
打开示例文件 "\Zemax\ZOS-API Sample Code\C#\CSharpStandalone_01_new_file_and_quickfocus.cs",这个示例文件可以用文本编辑器打开。
该示例文件是用c#编写的,但是面向对象编程的概念对于ZOS-API中使用的所有语言都是通用的。
打开语法帮助文件(Syntax Help File)
在帮助文件
(Help File)中,主接口被称为IOpticalSystem,它相当于一个单独的ZMX文件。
通过单击 IOpticalSystem,你将具有访问该界面所有特性的权限。
Ansys Zemax国内可靠代理商
光研科技南京有限公司是国内可靠的光学软件和仪器光电供应商,提供企业定制化上门培训服务,承接各类光学设计项目,并有一系列自主编写出版的光学设计书籍。公司拥有一支高素质、高水平、实战经验丰富的管理,销售以及研发团队,从成立到现在已经为广大企业,研究所以及高校提供了很多优秀的产品和服务,是光电圈内值得信赖的企业。追光逐梦,研以致用!以用户的需求为起点,为客户提供有价值的光学产品和服务一直都是光研科技南京有限公司的宗旨。
AnsysZemax光学软件咨询与订购联系方式
联系人:南京光研 徐保平
手机号:15051861513
微信号:13627124798您也可以扫一扫下面的二维码直接咨询