1. <form id='5d40m'></form>
        <bdo id='5d40m'><sup id='5d40m'><div id='5d40m'><bdo id='5d40m'></bdo></div></sup></bdo>

            切换到宽版
          • 广告投放
          • 稿件投递
          • 繁體中文
          • 若何编写用户自定义外面

            作者:Zemax China 来源:投稿 时光:2019-03-07 18:16 浏览:1126 [投稿]
            这篇文章介绍了: 1.甚么是用户自定义外面 (User-Defined Surfaces); 2.若何利用Microsoft Visual Studio 2017 (VS2017) 编写用户自定义外面;3.若何利用其他编译器。

            概述

            这篇文章介绍了:

            1.甚么是用户自定义外面 (User-Defined Surfaces)

            2.若何利用Microsoft Visual Studio 2017 (VS2017) 编写用户自定义外面

            3.若何利用其他编译器

            您可之前去以下链接查看并下载VS2017

            https://visualstudio.microsoft.com/zh-hans/vs/community/

            用户自定义外面

            外面用来定义不合澳门金沙娱乐官方网站介质之间的界面。外面可以定义为透射、反射或是衍射的。OpticStudio 18.9版本支撑78种外面类型,个中包含异常通用的外面类型,例如多项式外面 (Polynomial surface) 和双锥Zernike (Biconic Zernikes) 外面等。

            但有些时刻,用户会须要满足特定请求的外面类型,这也是用户自定义外面类型发挥感化的时刻。您可以随时将您对新外面的需求发送给support@zemax.com,但OpticStudio也为您供给了本身实现新外面设置的门路。

            用户自定义外面是一个编译好的函数(严格意义上是Windows的DLL),它可以根据您的须要实现随便任性外面外形、相位、透过率函数、梯度折射率或这几种类型的组合。在定义用户自定义外面时,您可以自行输入外面参数,或根据已有的数据库进行定义。

            本文以OpticStudio中自带的示例文件为基本,介绍了编译用户自定义外面的根本步调。本文不触及构建特定外面的办法,这将在其他文章中介绍。

            假设您已具有基本的编程经验并且对想要构建的外面已有了清楚的数学描述规范,那末定义用户自定义外面是异常轻易的。经过过程示例文件,本文将带您快速知道若何定义用户自定义外面,然则肯定所须要的数学函数常常是最难的部份。

            我们要做的第一步就是肯定外面的定义规范。起首,在OpticStudio已供给的外面中寻觅一个最切近您需求的外面,浏览用户手册中关于该外面的描述。然后以该描述为基本,写出一份符合您需求的定义规范。用文本描述的方法对您要定义的外面进行描述,给出所需的外面矢高表达式及相位表达式等,给出透镜数据编辑器中额外参数的用处。最后,我们要肯定初次调用该外面时额外参数的初始值。例如,当您第一次在透镜数据编辑器中插入一个标准面 (Standard surface) 时,曲率半径的初始值为无穷大年夜,厚度的初始值为零,圆锥系数的初始值为零。您须要肯定甚么初始参数是最“安然”的。

            回得手册中查看关于用户自定义外面的描述。您将看到我们供给的多个示例。找到和您的需求最切近的示例文件,并将其作为构建用户自定义外面的出发点。在示例文件的基本上进行修改的好处在于,您不须要编写所有的代码来使文件与OpticStudio进行通信,我们在示例文件中已替您完成了这部份工作。您只须要专注于编写外面即可。

            当您在示例文件中找到了和您的需求最切近的示例文件时,将源文件(扩大名为xxx.c的文件)复制并重定名。在本文中,我们将利用示例中的us_arrayeven.c文件进行演示,该文件位于Zemax根目次/DLL/Surfaces文件夹中。该文件定义了一个矩形的非球面阵列外面。我们将把这一文件重定名为myarray.c。

            利用VS2017编译外面

            起首启动Microsoft Visual Studio 2017,点击文件 (File) - 新建 (New) – 项目 (Project)新建一个项目,在Visual C++中建立一个空项目 (Empty Project)。将项目定名为My_asphere并保存在随便任性路径下,点击肯定生成一个空项目:


            分享到:
            扫一扫,存眷光行世界的微信定阅号!
            【温馨提示】本频道经久接收投稿,内容可所以:
            1.行业消息、市场分析。 2.新品新技巧(最新研发出来的产品技巧介绍,包含产品性能参数、感化、利用范畴及图片); 3.解决筹划/专业论文(针对问题及需求,提出一个解决问题的履行筹划); 4.技巧文章、白皮书,澳门金沙娱乐官方网站软件利用技巧(光电行业内技巧文档);
            假设想要将你的内容涌如今这里,迎接接洽我们,投稿邮箱:service@opticsky.cn
            文章点评