- 博客(15)
- 资源 (2)
- 收藏
- 关注
原创 代理设计模式
代理,顾名思义,就是一个中间层,中介。proxy这里借用大话设计模式的例子,再回顾巩固一下代理模式。例子:一个男孩想要送给一个女孩礼物,但是不好意思。怎么办,只能找一个中间的男孩,帮忙把礼物送给女孩,这个中间的男孩其实就是代理。上代码,首先写一个女孩的类,很简单,只有一个名字就够了。这样女孩就确定了 public class Girl { public string Name { get; set; } }定义一个公共的接口,规范两个男
2022-03-13 22:56:27 452
原创 装饰器模式
装饰器模式开始看着确实挺复杂的,通过例子来解释,能清楚一点。解决的问题: 需要再现有的对象上,添加功能,可以添加很多功能,运行时候的顺序要求。顺序可以调整。创建一个情景,有一个课程,有免费的学员和Vip学员,两个学生都有学习的方法。这时候添加一个需求,有的学生会先看视频,再写作业,有的先写作业,再看视频。要求不破坏学生类的封装,添加功能。装饰器模式的角色:1.学生类,可能有学生的抽象类;2.装饰器的基类,他去继承学生类,或者学生类的父类;3.装饰器的具体实现类,继承于装饰
2022-03-13 17:12:13 424
原创 简单工厂模式
据说简单工厂模式不算是Gof中的的设计模式。。。例子:计算器,计算加减乘除,后期可方便的添加其他运算类型1.一般上来可能不考虑面向对象,直接一顿if else,类似这种,可以考虑一下,如果为了方便拓展,一定看一下判断里面有没有相同的类似的类型。2.考虑抽象要下面是不考虑面向对象,面向过程: public enum OperationType { jia, jian, cheng, chu }
2022-02-27 22:24:33 149
原创 NXOPEN/UG二次开发C#---投影(等弧长投影为例)
/// <summary> /// 等弧长投影函数底层 /// </summary> /// <param name="lines"></param> /// <param name="faces"></param> /// <param name="layer"></param> /// <param ...
2022-02-27 00:05:18 899
原创 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 596
原创 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 923
原创 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 907
原创 NXOPEN/UG二次开发C#---创建点沿着曲线移动一定距离
/// <summary> /// 创建点沿着曲线移动一定距离 /// </summary> /// <param name="line"></param> /// <param name="point"></param> /// <param name="value"></param> /// ...
2022-02-27 00:00:24 806
原创 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 617
原创 NXOPEN/UG二次开发C#---获得图层的类别名字
/// <summary> /// 获得图层的类别名字 /// </summary> /// <param name="layer"></param> /// <returns></returns> public static string[] GetLayerName(int layer) { Session ...
2022-02-26 23:58:33 524
原创 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 850
原创 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 888
原创 NXOPEN/UG二次开发C#---获取曲线的长度
/// <summary> /// 获取曲线的长度 /// </summary> /// <param name="line"></param> /// <param name="toNXJingDu">精度设置,保留小数点后9位,这是nx中的精度</param> /// <returns></returns> ...
2022-02-26 23:53:17 1117 1
C#版本的的PyAutoGui,功能类似Python的pyautogui
2022-02-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人