SharpCAD脚本建模1.0版本发布了

        SharpCAD建模工具1.0发布了。SharpCAD模仿的是开源脚本建模工具OpenSCADSharpCAD造型内核使用的是OpenCasCADE7.5,未修改任何代码。此外还用到了以下几个开源库:

ScriptCs-------------------------------------------c#脚本引擎(Apache2)

SharpGL------------------------------------------c#版本的OpenGL(MIT)

FastColoredTextBox----------------------------文本编辑器(LGPL)

1、目前实现的功能

1.0版本目前实现了以下功能:

Circle                    =>                       二维圆

Square                 =>                       方形

PolyFace              =>                       多边形

Sphere                 =>                       球

Box                      =>                       立方体

Cylinder                =>                       圆柱

Torus                    =>                       圆环

      

Linear_Extrude      =>                       拉伸(仅支持Circle,Square,PolyFace)

Rotate_Extrude     =>                       拉伸(仅支持Circle,Square,PolyFace)

布尔交并差

Translate              =>                       平移

Rotate                  =>                       旋转

Scale                    =>                       缩放

Color                    =>                       颜色

支持保存脚本为.cscad文本格式,支持将当前场景中对象导出为OBJ 。

2、软件界面及示例

2.1软件界面

界面如下,主要分为菜单栏,代码编辑器,场景窗口,输出窗口。

 

菜单栏:

文件:支持打开/新建.cscad文件,支持保存/另存当前脚本为cscad文件;

视图:支持对象以点、线框、填充模式显示,支持显示法线;

设计:执行脚本(快捷键F5),如果脚本有错误,则会将错误信息输出到输出窗口;

导出:导出为OBJ。

编辑器:

支持显示行号,支持撤销undo(Ctrl+Z),支持高亮显示,支持自动格式化代码。

场景:

       鼠标左键=>旋转

       鼠标滚轮=>缩放

输出窗口:

       显示错误及提示信息,支持显示行号。

2.2示例

Circle c = new Circle (10);//创建一个半径为10的圆
c.Color  = Color.Red;//将圆的颜色设置为红色
Scene.Add(c);//将圆添加到场景中,所有需要显示的对象都需要添加到场景中

结果如下:

 

来个复杂一点的:

//Square Rotate_Extrude
Square square = new Square(5);
square.Translate(10,0,0);
var re0 = ACOCCTTools.Rotate_Extrude(square,360);
re0.Color = Color.Red;
Scene.Add(re0);


//PolyFace Rotate_Extrude
List<Point3D> pnts = new List<Point3D>()
{
    new Point3D (0,0,0),
    new Point3D (8,4,0),
    new Point3D (4,8,0),
    new Point3D (4,12,0),
    new Point3D (12,16,0),
    new Point3D (0,20,0)
};


PolyFace face = new PolyFace(pnts);
var re1 = ACOCCTTools.Rotate_Extrude(face ,360);
re1.Translate(0,30,0);
re1.Color = Color.Green;
Scene.Add(re1);


//complex Rotate_Extrude
{
    Square square0 = new Square(5);
    square0 .Color = Color.Magenta;
    var square1 = square0.Clone();
    square1.Translate(12.5,0,0);
    var re2 = ACOCCTTools.Rotate_Extrude(square1,180);
    re2.Translate(40,40,0);


    var square2 = square0.Clone();
    square2.Translate(5,0,0);
    var re3 = ACOCCTTools.Rotate_Extrude(square2,180);
    re3.Translate(7.5,0,0);
    re3.Translate(40,40,0);

    var square3 = square0.Clone();
    square3.Translate(5,0,0);
    var re4 = ACOCCTTools.Rotate_Extrude(square3,-180);
    re4.Translate(-7.5,0,0);
    re4.Translate(40,40,0);

    Scene.Add(re2);
    Scene.Add(re3);
    Scene.Add(re4);

}

结果如下:

主程序已混淆,之所以混淆,是因为代码写得烂,无他!

下载链接:

SharpCAD脚本建模1.0版-C#文档类资源-CSDN下载 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值