![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c#
普罗旺斯D先生
这个作者很懒,什么都没留下…
展开
-
代理设计模式
代理,顾名思义,就是一个中间层,中介。proxy这里借用大话设计模式的例子,再回顾巩固一下代理模式。例子:一个男孩想要送给一个女孩礼物,但是不好意思。怎么办,只能找一个中间的男孩,帮忙把礼物送给女孩,这个中间的男孩其实就是代理。上代码,首先写一个女孩的类,很简单,只有一个名字就够了。这样女孩就确定了 public class Girl { public string Name { get; set; } }定义一个公共的接口,规范两个男原创 2022-03-13 22:56:27 · 423 阅读 · 0 评论 -
装饰器模式
装饰器模式开始看着确实挺复杂的,通过例子来解释,能清楚一点。解决的问题: 需要再现有的对象上,添加功能,可以添加很多功能,运行时候的顺序要求。顺序可以调整。创建一个情景,有一个课程,有免费的学员和Vip学员,两个学生都有学习的方法。这时候添加一个需求,有的学生会先看视频,再写作业,有的先写作业,再看视频。要求不破坏学生类的封装,添加功能。装饰器模式的角色:1.学生类,可能有学生的抽象类;2.装饰器的基类,他去继承学生类,或者学生类的父类;3.装饰器的具体实现类,继承于装饰原创 2022-03-13 17:12:13 · 409 阅读 · 0 评论 -
简单工厂模式
据说简单工厂模式不算是Gof中的的设计模式。。。例子:计算器,计算加减乘除,后期可方便的添加其他运算类型1.一般上来可能不考虑面向对象,直接一顿if else,类似这种,可以考虑一下,如果为了方便拓展,一定看一下判断里面有没有相同的类似的类型。2.考虑抽象要下面是不考虑面向对象,面向过程: public enum OperationType { jia, jian, cheng, chu }原创 2022-02-27 22:24:33 · 135 阅读 · 0 评论 -
NXOPEN/UG二次开发C#---投影(等弧长投影为例)
/// <summary> /// 等弧长投影函数底层 /// </summary> /// <param name="lines"></param> /// <param name="faces"></param> /// <param name="layer"></param> /// <param ...原创 2022-02-27 00:05:18 · 841 阅读 · 0 评论 -
NXOPEN/UG二次开发C#---类型转换封装
/// <summary> /// TaggedObject转tag /// </summary> /// <param name="taggedObject"></param> /// <returns></returns> public static Tag[] TaggedObjectToTag(TaggedObject[] tag...原创 2022-02-27 00:03:20 · 561 阅读 · 0 评论 -
NXOPEN/UG二次开发C#---获取当前DLL的目录
/// <summary> /// 获取当前DLL的目录 /// </summary> /// <param name="removeBackslash">结尾不带反斜杠,默认为true</param> /// <returns></returns> public static string GetDllPath(bool removeB...原创 2022-02-27 00:02:13 · 873 阅读 · 0 评论 -
NXOPEN/UG二次开发C#---获取NX的版本
/// <summary> /// 获取NX的版本 /// </summary> /// <param name="fullName">是否需要全名:NX V8.5,默认为false</param> /// <returns></returns> public static string GetNXEdition(bool fullName...原创 2022-02-27 00:01:24 · 841 阅读 · 0 评论 -
NXOPEN/UG二次开发C#---创建点沿着曲线移动一定距离
/// <summary> /// 创建点沿着曲线移动一定距离 /// </summary> /// <param name="line"></param> /// <param name="point"></param> /// <param name="value"></param> /// ...原创 2022-02-27 00:00:24 · 770 阅读 · 0 评论 -
NXOPEN/UG二次开发C#---设置图层分类名称
public static void SetLayerName(int layerNum, string layerName) { Session theSession = Session.GetSession(); Part workPart = theSession.Parts.Work; Category category = workPart.LayerCategories.CreateCate...原创 2022-02-26 23:59:32 · 576 阅读 · 0 评论 -
NXOPEN/UG二次开发C#---获得图层的类别名字
/// <summary> /// 获得图层的类别名字 /// </summary> /// <param name="layer"></param> /// <returns></returns> public static string[] GetLayerName(int layer) { Session ...原创 2022-02-26 23:58:33 · 495 阅读 · 0 评论 -
NXOPEN/UG二次开发C#---导入igs文件,获得导入的TaggedObject
/// <summary> /// 导入igs文件,获得导入的TaggedObject /// </summary> /// <param name="igsPath">需要导入的igs路径</param> /// <param name="layer">需要导入的图层</param> /// <param name="settingsFile"&g.原创 2022-02-26 23:57:28 · 783 阅读 · 0 评论 -
NXOPEN/UG二次开发C#---通过百分比参数获得曲线上一个点的坐标
/// <summary> /// 通过百分比参数获得曲线上一个点的坐标 /// </summary> /// <param name="curveTag"></param> /// <param name="parameter">0.0-1.0</param> /// <returns></returns> ...原创 2022-02-26 23:54:09 · 835 阅读 · 0 评论 -
NXOPEN/UG二次开发C#---获取曲线的长度
/// <summary> /// 获取曲线的长度 /// </summary> /// <param name="line"></param> /// <param name="toNXJingDu">精度设置,保留小数点后9位,这是nx中的精度</param> /// <returns></returns> ...原创 2022-02-26 23:53:17 · 1055 阅读 · 1 评论 -
C#的AutoGui,功能类似Python的pyautogui
C#版本的pyautogui原创 2022-02-07 22:57:45 · 2827 阅读 · 5 评论