C#:通用方法总结—第16集

大家好,今天继续介绍我们的通用方法系列。

下面是今天要介绍的通用方法:

(1)这个通用方法为将TaggedObject转换为Face

Public void ConvertTag()

{

TaggedObject\[\] GetSelectedObjects = face_select0.GetSelectedObjects();

Face\[\] faces = new Face0;

foreach (var to in GetSelectedObjects)

{

Array.Resize(ref faces, faces.Length + 1);

facesfaces.Length - 1 = (Face)to;

}

}

(2)这个通用方法为UG获取面属性

Public void GetFaceAttr(Face faces)

{

for (int a = 0; a < faces.Length; a++)

{

NXObject.AttributeInformation\[\] attributeInformation1 = facesa.GetUserAttributes();

foreach (var ai in attributeInformation1)//遍历面属性

{

if (ai.Type == NXObject.AttributeType.String)//属性是string类型

{

if (ai.Title == "A")//属性名

{

string value= (ai.StringValue);

}

}

}

}

}

(3)这个通用方法为 判断圆形边是不是封闭的

/// <summary>

/// 判断圆形边是不是封闭的,返回的是bool值

/// </summary>

/// <param name="edgetag"></param>

/// <returns></returns>

bool judgecircle(Tag edgetag)//判断圆形边是不是封闭的,返回的是bool值

{

IntPtr uFEval1;

theUfSession.Eval.Initialize(edgetag, out uFEval1);

UFEval.Arc arc1;

theUfSession.Eval.AskArc(uFEval1, out arc1);

bool boolvar = false;

if (arc1.is_periodic)//判断是否为整圆

{

double\[\] arccenter = new double100;

arccenter0 = arc1.center0;

arccenter1 = arc1.center1;

arccenter2 = arc1.center2;

double\[\] arcxaxis = new double100;

arcxaxis0 = arc1.x_axis0;

arcxaxis1 = arc1.x_axis1;

arcxaxis2 = arc1.x_axis2;

double\[\] arcyaxis = new double100;

arcyaxis0 = arc1.y_axis0;

arcyaxis1 = arc1.y_axis1;

arcyaxis2 = arc1.y_axis2;

double\[\] arcR = new double100;

arcR0 = arc1.radius;

bool boolisarc;

theUfSession.Eval.IsArc(uFEval1, out boolisarc);

if (Math.Abs(arc1.limits0) < 0.001 && Math.Abs(arc1.limits1 - 2 * Math.PI) < 0.001)

{

boolvar = true;

}

theUfSession.Eval.Free(uFEval1);

}

return boolvar;

}

今天要介绍的就是这么多,我们下篇文章再见。

相关推荐
喜欢的名字被抢了8 分钟前
Python实战:SQLAlchemy ORM与FastAPI项目集成
开发语言·python·sql·教程·fastapi
从零开始的代码生活_2 小时前
C++ 内存管理:从内存分区到 new/delete 底层原理
开发语言·c++·后端
wabs6663 小时前
关于单调栈【力扣739.每日温度的思考】
java·开发语言
AOwhisky3 小时前
Python 学习笔记(第三期)——流程控制核心知识点自测与详解
开发语言·笔记·python·学习·云原生·运维开发·流程控制
逆向编程4 小时前
Socket异常连接自动清理方案
开发语言
va学弟5 小时前
Java 网络通信编程(10):Channel 和 Selector
java·开发语言
爱吃提升5 小时前
MATLAB impulse函数脉冲响应完整实操教程
开发语言·matlab
小饕5 小时前
从 1080 Ti 到树莓派 4:Qwen2.5-0.5B Function Calling 端侧部署七步实战
开发语言·人工智能
糯米导航5 小时前
Rust + ONNX Runtime 构建生产级 AI 推理服务:从零到压测
开发语言·人工智能·rust
阿pin6 小时前
Java随笔-ConcurrentHashMap
java·开发语言·哈希算法