zoukankan      html  css  js  c++  java
  • FreeCAD二次开发-一个简单的算法例子(对块的竖直边倒圆)

    题目要求:

    创建一个块,对块的所有Z轴竖直边进行倒圆。

    已知:

    坐标系XYZ是固定的。

    思路:

    1.创建块

    2.遍历所有边,得到每条边的两个端点坐标

    3.用每个点的Z坐标,起点-终点的绝对值>0,就得到四条竖直边。

    导图:

    import FreeCAD
    import  FreeCADGui
    import Part
    
    # 显示FreeCAD界面
    FreeCADGui.showMainWindow()
    
    # 新建FC文件
    FreeCAD.newDocument("123")
    
    # 创建块
    box=Part.makeBox(100,20,50)
    # 获得块的所有边
    edges=box.Edges
    
    # 创建空列表
    list = []
    # 遍历所有边,判断Z坐标点,起点-终点的绝对值>0的为块Z轴方向的竖直边
    for edge in edges:
        if ( abs(edge.Vertexes[0].Point[2] - edge.Vertexes[1].Point[2])) > 0:
            list.append(edge)
    
    # 创建倒圆
    b1=box.makeFillet(2,list)
    
    #显示对象
    Part.show(b1)
    
    # 显示
    FreeCADGui.ActiveDocument.Shape.Visibility=True
    
    # 另存为
    FreeCAD.ActiveDocument.saveAs("D:\123.FCStd")
    
    # 关闭
    FreeCAD.closeDocument("_23")
    
    # 隐藏FreeCAD界面
    FreeCADGui.getMainWindow().hide()
    
    Caesar卢尚宇
    2020年4月1日

  • 相关阅读:
    C#三元运算符
    WIN系统查询版本
    C# switch 语句
    C#反编译
    AssemblyInfo.cs 文件信息
    win系统如何在桌面显示我的电脑
    MVC传值前台
    js去除html标记
    打开页面跳转到区域下的控制器
    Hive常用操作之数据导入导出
  • 原文地址:https://www.cnblogs.com/nxopen2018/p/12616324.html
Copyright © 2011-2022 走看看