#创建一个草图

#第一个参数传入一个Frame对象

#通过一个点和两个向量创建Frame

#Frame的类成员函数Create被重载

#重载函数1:Frame.Create(Point, Direction)

#第一个参数为一个点

#第二个参数为面法向向量

#重载函数2:Frame. Create(Point, Direction, Direction)

#第一个参数为面上的一个点

#第二个和第三个参数为面上的向量

#调用ViewHelper.SetSketchPlane函数在选中对象的基础上创建一个草图

#该函数也重载了两个函数

#重载函数1:SetSketchPlane(ISelection)

#参数为一个Selection的对象

#重载函数2:SetSketchPlane(Plane, ScriptObject)

#第一个参数为前面创建的平面

#第二个参数为可选参数,默认为null

#返回一个SetViewModeCommandResult对象

plane = Plane.Create(Frame.Create(Point.Create(MM(0), MM(0), MM(0)), Direction.Create(0, 0, 1), Direction.Create(1, 0, 0)))

result = ViewHelper.SetSketchPlane(plane)

#旋转草图

rotationAxis = Line.Create(

Point.Create(MM(0), MM(0), MM(0)),

Direction.Create(1, 0, 0)) #定义旋转轴

matrix = Matrix.Identity #定义一个矩阵

matrix = matrix * Matrix.CreateRotation(rotationAxis, DEG(90)) #创建一个旋转矩阵

ViewHelper.TransformSketchPlane(matrix) #将草图旋转一个角度

#平移草图

plane = Plane.Create(Frame.Create(Point.Create(MM(0), MM(20), MM(0)), Direction.Create(0, 0, 1), Direction.Create(1, 0, 0)))

result = ViewHelper.SetSketchPlane(plane)

matrix = Matrix.Identity

matrix = matrix * Matrix.CreateTranslation(Vector.Create(MM(0), MM(20), MM(0)))

ViewHelper.TransformSketchPlane(matrix)

#草图转换为三维模式

#转换函数重载了两个函数

#重载函数1 :ViewHelper.SetViewMode(InteractionMode, IScriptObject)

#第一个参数为交互模式,分别为草图模式,剖面模式,三维模式

#第二个参数为可选参数,附加参数,默认值为null

#重载函数2:ViewHelper.SetViewMode(InteractionMode, Plane, IScriptObject)

#第一个参数为交互模式,分别为草图模式,剖面模式,三维模式

#第二个参数为草图平面

#第三个参数为可选参数,附加参数,默认值为null

#返回值为一个SetViewModeCommandResult对象

交互模式可选参数

名称

描述

Sketch

0

草图模式

Section

1

剖面模式

Solid

2

三维模式

result = ViewHelper.SetViewMode(InteractionMode.Solid)

#草图当中创建一条直线

#创建直线函数重载了三个函数

#重载函数1:SketchLine.Create(Point2D, Point2D)

#第一个参数为直线的起点

#第二个参数为直线的终点,起点和终点的坐标皆为激活平面上的二维坐标

#重载函数2:SketchLine. Create(Point, Point, Plane)

#第一个参数为起点坐标

#第二个参数为终点坐标

#第三个参数为可选参数,默认为null,即当前草图

#返回一个SketchCurveResult对象

重载函数1示例:

frame= Frame.Create(Point.Create(MM(0), MM(0), MM(0)), Direction.Create(0, 1, 0), Direction.Create(1, 0, 0))

plane= Plane.Create(frame)

ViewHelper.SetSketchPlane(plane)

start = Point2D.Create(MM(-8), MM(17))

end = Point2D.Create(MM(-8), MM(-21))

result = SketchLine.Create(start, end)

重载函数2示例:

start = Point.Create(MM(-8), MM(17),MM(0))

end = Point.Create(MM(-8), MM(-21) ,MM(0))

result = SketchLine.Create(start, end)

#草图当中创建一个矩形

#创建矩形的函数重载了三个函数

#重载函数1:SketchRectangle. Create(Point, Point, Point)

#三个参数分别为矩形的三个角上的坐标,从而确定矩形

#重载函数2:SketchRectangle.Create(Point2D, Point2D, Point2D)

#三个参数为矩形的三个角上的坐标,但这个坐标为当前激活平面上的二维坐标

#重载函数3:SketchRectangle. Create(IRectangle)

#参数为IRectangle对象

#返回一个SketchCurveResult对象

重载函数1示例:

point1 = Point.Create(MM(15),MM(-15),MM(0))

point2 = Point.Create(MM(-15),MM(-15),MM(0))

point3 = Point.Create(MM(-15),MM(15),MM(0))

result = SketchRectangle.Create(point1, point2, point3)

重载函数2示例:

plane = Plane.Create(Frame.Create(Point.Create(MM(0), MM(0), MM(0)), Direction.Create(0, 1, 0), Direction.Create(1, 0, 0)))

result = ViewHelper.SetSketchPlane(plane)

point1 = Point2D.Create(MM(15),MM(-15))

point2 = Point2D.Create(MM(-15),MM(-15))

point3 = Point2D.Create(MM(-15),MM(15))

result = SketchRectangle.Create(point1, point2, point3)

#草图当中创建一个圆形

#创建矩形的函数重载了三个函数

#重载函数1:SketchCircle.Create(Point2D, Double)

#第一个参数为圆心坐标,该坐标位于当前激活的平面上

#第二个参数为半径

#重载函数2:SketchCircle. Create(Point, Double, Plane)

#第一个参数为圆心

#第二个参数为半径

#第三个参数为可选参数,用来指定圆所在平面,默认为null,为当前平面

#重载函数3:SketchCircle.Create(Circle, Plane)

#第一个参数为Circle对象

#第二个参数为可选参数,用来指定圆所在平面,默认为null,为当前平面

#返回一个SketchCurveResult对象

重载函数1示例:

plane = Plane.Create(Frame.Create(Point.Create(MM(0), MM(0), MM(0)), Direction.Create(0, 1, 0), Direction.Create(1, 0, 0)))

result = ViewHelper.SetSketchPlane(plane)

circlepoint= Point2D.Create(MM(0),MM(0))

SketchCircle.Create(circlepoint, MM(10))

重载函数2示例:

plane = Plane.Create(Frame.Create(Point.Create(MM(0), MM(0), MM(0)), Direction.Create(0, 1, 0), Direction.Create(1, 0, 0)))

result = ViewHelper.SetSketchPlane(plane)

circlepoint= Point.Create(MM(0),MM(0),MM(0))

SketchCircle.Create(circlepoint, MM(10),plane)

重载函数3示例:

frame= Frame.Create(Point.Create(MM(0), MM(0), MM(0)), Direction.Create(0, 1, 0), Direction.Create(1, 0, 0))

plane= Plane.Create(frame)

radius= MM(10)

circle= Circle.Create(frame,radius)

SketchCircle.Create(circle,plane)

#草图当中创建一个多边形

#只有一个参数,用Polygon对象在草图上创建一个多边形

#返回一个SketchCurveResult对象

frame= Frame.Create(Point.Create(MM(0), MM(0), MM(0)), Direction.Create(0, 1, 0), Direction.Create(1, 0, 0))

innerRadius = MM(18) #内接圆的半径

numSides = 6 #多边形的边数

#创建一个多边形的对象

polygon = Polygon.Create(frame, innerRadius, numSides)

result = SketchPolygon.Create(polygon)

#草图当中创建一段圆弧

#创建圆弧的函数重载了三个函数

#重载函数1:SketchArc.Create(Point, Point, Point)

#第一个参数是圆弧的圆心坐标

#第二个参数是圆弧的起点坐标

#第三个参数是圆弧的终点坐标

#重载函数2:SketchArc.Create(Point2D, Point2D, Point2D)

#三个参数与上面同,但这个坐标为当前激活平面上的二维坐标

#重载函数3:SketchArc.Create(Circle, Interval)

#第一个参数为Circle的对象

#第二个参数为Interval的对象

#返回一个SketchCurveResult对象

重载函数1示例:

origin = Point.Create(MM(0), MM(0), MM(0))

start = Point.Create(MM(15), MM(0), MM(0))

end = Point.Create(MM(0), MM(15), MM(0))

SketchArc.Create(origin, start, end)

重载函数2示例:

frame= Frame.Create(Point.Create(MM(0), MM(0), MM(0)), Direction.Create(0, 1, 0), Direction.Create(1, 0, 0))

plane= Plane.Create(frame)

ViewHelper.SetSketchPlane(plane)

origin = Point2D.Create(MM(0), MM(0))

start = Point2D.Create(MM(15), MM(0))

end = Point2D.Create(MM(0), MM(15))

result = SketchArc.Create(origin, start, end)

#草图当中创建样条曲线

#第一个参数设置样条曲线是否是周期性,也就是样条曲线是否闭合

#第二个参数传入一个点坐标的列表

#返回一个SketchCurveResult的对象

frame= Frame.Create(Point.Create(MM(0), MM(0), MM(0)), Direction.Create(0, 1, 0), Direction.Create(1, 0, 0))

plane= Plane.Create(frame)

ViewHelper.SetSketchPlane(plane)

points = List[Point2D]()

points.Add(Point2D.Create(MM(-17), MM(-14)))

points.Add(Point2D.Create(MM(-1), MM(-7)))

points.Add(Point2D.Create(MM(6), MM(11)))

points.Add(Point2D.Create(MM(23), MM(19)))

points.Add(Point2D.Create(MM(29), MM(27)))

result = SketchNurbs.CreateFrom2DPoints(False, points)

#移动一个选中的对象

#MM表示的是以毫米作为单位

#该函数共有三个重载函数

#重载函数1:Move.Execute(ISelection, Vector, MoveOptions)

#第一个参数为选中的对象,可通过Selection.GetActive()获取

#第二个参数为移动的向量

#第三个参数为移动选项

#重载函数2:Move.Execute(ISelection, Frame, TransformType, Vector, MoveOptions)

#第一个参数为选中的对象,可通过Selection.GetActive()获取

#第二个为框架坐标系

#第三个为移动的类型

#第四个参数为移动的向量

#第五个为移动的选项

#重载函数3:Move.Execute(ISelection, Frame, TransformType, Double, MoveOptions)

#第一个参数为选中的对象,可通过Selection.GetActive()获取

#第二个为框架坐标系

#第三个为移动的类型

#第四个参数为移动距离

#第五个为移动的选项

#返回的是一个MoveResult的对象

注:

TransformType参数的取值如下:

名称

描述

TranslateX

0

沿x轴移动

TranslateY

1

沿y轴移动

TranslateZ

2

沿z轴移动

RotateX

3

绕x轴旋转

RotateY

4

绕y轴旋转

RotateZ

5

绕z轴旋转

TranslateXY

6

沿x,y平面移动

TranslateXZ

7

沿x,z平面移动

TranslateYZ

8

沿y,z平面移动

重载函数1:

Move.Execute(Selection.GetActive(),Vector.Create(MM(40),MM(0),MM(0)), MoveOptions())

重载函数2:

Move.Execute(Selection.GetActive(), Frame.World, TransformType.TranslateX, Vector.Create(MM(40),MM(0),MM(0)), MoveOptions())

重载函数3:

Move.Execute(Selection.GetActive(), Frame.World, TransformType.TranslateX, MM(40), MoveOptions())

#填充一个选中的对象

#第一个参数为填充的对象

#第二个参数为可选参数,默认值为null

#第三个参数为可选参数,填充选项,默认值为null

#第四个参数为可选参数,填充模式,默认值为null

#第五个参数为可选参数,默认值为null

#返回一个CommandResult的对象

第四个参数的取值如下:

名称

描述

Sketch

0

Sketch mode

Section

1

Section mode

Layout

2

Layout mode

ThreeD

3

3D mode

result = Fill.Execute(Selection.GetActive())

常用spaceclaim脚本(二)的更多相关文章

  1. 运维常用shell脚本二(压缩文件、过滤不需要的文件、检测进程)

    一.压缩指定目录下的文件并删除原文件 #!/bin/bashZIP_DAY=7 function zip { local dir=$1 if [ -d $dir ];then local file_n ...

  2. 常用spaceclaim脚本(三)

    拉伸曲线 ptList=List[Point]() #定义一个点的列表 ptList.Add(Point.Create(MM(11),MM(-14),MM(0))) #创建点,并放入列表当中 ptLi ...

  3. 常用spaceclaim脚本

    #创建一个长方体,通过两点来确定一个立方体 #MM表示的是以毫米作为单位 #返回的是一个BlockBody的对象 #本函数还有第三个参数可选,分别代表增加材料,切除材料等等 #默认值为增加材料 注:第 ...

  4. Linux常用Shell脚本珍藏【转载】

    我们在运维中,尤其是linux运维,都知道脚本的重要性,脚本会让我们的 运维事半功倍,所以学会写脚本是我们每个linux运维必须学会的一门功课,这里收藏linux运维常用的脚本.如何学好脚本,最关键的 ...

  5. 8个DBA最常用的监控Oracle数据库的常用shell脚本

    本文介绍了8个常用的监控数据shell脚本.首先回顾了一些DBA常用的Unix命令,以及解释了如何通过Unix Cron来定时执行DBA脚本.网上也有好多类似的文章,但基本上都不能正常运行,花点时间重 ...

  6. 性能测试—JMeter 常用元件(二)

    性能测试—JMeter 常用元件(二) <零成本web性能测试>第三章 Web性能测试脚本录制与开发中JMeter常用测试元件 测试计划描述了JMeter运行时将会执行的一系列步骤,一个完 ...

  7. 常用shell脚本命令

    常用shell脚本命令 1.显示包含文字aaa的下一行的内容: sed -n '/aaa/{n;p;}' filename 2.删除当前行与下一行的内容: sed -i '/aaa/{N;d;}' f ...

  8. C#构造方法(函数) C#方法重载 C#字段和属性 MUI实现上拉加载和下拉刷新 SVN常用功能介绍(二) SVN常用功能介绍(一) ASP.NET常用内置对象之——Server sql server——子查询 C#接口 字符串的本质 AJAX原生JavaScript写法

    C#构造方法(函数)   一.概括 1.通常创建一个对象的方法如图: 通过  Student tom = new Student(); 创建tom对象,这种创建实例的形式被称为构造方法. 简述:用来初 ...

  9. SpaceClaim脚本功能(Beta功能)

    本操作仅适用ANSYS SpaceClaim 2016 打开SpaceClaim脚本编辑器的方法有两种 方法一(看截图操作):         方法二(请见后面的实例操作). 创建球体源代码: #定义 ...

随机推荐

  1. MySQL JOIN 连接时,条件为以逗号分隔的字段与 ID 相匹配

    一.背景 有一张相片表,一张相片所属标签表,一张相片可以归属于多个标签,表结构如下: 现在需要通过一次查询,得到每一张照片对应的标签名称,标签名称之间以固定的分隔符连接,结果如下图: 二.查询语句 原 ...

  2. XnViewer管理浏览照片、图片

    有时候拍完照片想要浏览照片.浏览照片的时候想做一些标记,这个时候就需要使用照片管理器: 之前一直使用谷歌的picasa(不更新了),adobe也有个管理器(比较大):这里主要推荐一个: https:/ ...

  3. javascript_19-DOM初体验

    DOM DOM: 文档对象模型(Document Object Model),又称为文档树模型.是一套操作HTML和XML文档的API. DOM可以把HTML和XML描述为一个文档树.树上的每一个分支 ...

  4. [daily] ssh通过私钥导出公钥

    在使用key方式登录ssh服务的时候,我们知道ssh key是使用公钥ssh-keygen工具生成的. 有时候,我们只保存了私钥,但是并没有保存公钥.这个时候,可以使用如下方法,   从私钥中将公钥导 ...

  5. LGOJP2831 愤怒的小鸟

    题目链接 题目链接 题解 数据范围显然状压/爆搜. 考虑\(f[S]\)表示二进制下已打了的猪的集合. 可以枚举\(S\)的子集\(S_1\),判定\(S\)中\(S_1\)的补集\(S_2\)是否合 ...

  6. LINQ查询表达式(1) - 查询表达式基础

    LINQ包括五个部分:LINQto Objects.LINQ to DataSets.LINQ to SQL.LINQ to Entities.LINQ to XML. 什么是查询?它有什么用途? “ ...

  7. c# 数据类型转换

    隐式转换 byte, short, int, long, fload, double等根据其顺序向后可以隐式自动完成类型的转换,隐式转移的前提是目标类型精度高于源类型,如:short隐式转换为int, ...

  8. NPOI - .NET Excel & Word操作组件

    概要 NPOI 是 POI 项目的 .NET 版本.POI是一个开源的Java读写Excel.WORD等微软OLE2组件文档的项目. NPOI是构建在POI 3.x版本之上的,它可以在没有安装Offi ...

  9. APP弱网测试工具(QNET)

    QNET介绍官网链接:https://wetest.qq.com/product/qnet 目前在测试移动设备上进行弱网络专项测试的方案主要有两种: 通过Android设备连接到PC上进行弱网络测试, ...

  10. 简述 OSI 七层协议?

    OSI七层协议是一个用于计算机或通信系统间互联的标准体系. 物理层功能:主要是基于电器特性发送高低电压(电信号),高电压对应数字1,低电压对应数字0. 数据链路层的功能:定义了电信号的分组方式按照以太 ...