NCF参数化建筑论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 12407|回复: 13
打印 上一主题 下一主题

[个人作品] 工字钢纠结死了

  [复制链接]
跳转到指定楼层
1m
发表于 2012-12-10 02:10:04 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
本帖最后由 panhao1 于 2012-12-10 02:11 编辑

Mesh mesh = new Mesh();
    x.FaceNormals.ComputeFaceNormals();
    List<Curve> ls = new List<Curve>();
    Rhino.Geometry.Collections.MeshTopologyEdgeList el = x.TopologyEdges;
    for(int i = 0;i < el.Count;i++){
      Line L = el.EdgeLine(i);
      if (el.GetConnectedFaces(i).Length == 1) ls.Add(L.ToNurbsCurve());
    }
    Curve[] cs = Rhino.Geometry.Curve.JoinCurves(ls, doc.ModelAbsoluteTolerance * 10);
    Vector3d v = new Vector3d(x.FaceNormals[0]);
    v.Unitize();v /= 2;
    PolylineCurve pl = cs[0].ToPolyline(0, 0, Math.PI, 99999, 0, 0, 0.1, 0, true);

    for(int i = 0;i < pl.PointCount;i++){
      mesh.Vertices.Add(pl.Point(i) + v);
      mesh.Vertices.Add(pl.Point(i) - v);

      if(i < pl.PointCount - 1)   mesh.Faces.AddFace(new MeshFace(i * 2, i * 2 + 1, i * 2 + 3, i * 2 + 2));
    }
    mesh.Faces.AddFace(new MeshFace(cs.Length * 2 - 2, cs.Length * 2 - 1, 1, 0));
    mesh.Compact();
    mesh.Normals.ComputeNormals();

    A = mesh;
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享
14m
发表于 2024-10-28 19:58:09 | 只看该作者
工字钢扭曲怎么办
13m
发表于 2012-12-13 12:59:09 | 只看该作者

哎~~~只能做方方正正的 和边形直角才可以切出来  做有弧度可以切出来的吗? 可是mesh好处是结构算法简单要求电脑资源低运行速度快~~~ 目前是它的很大的优点~~~做方案概念阶段是不错的选择。。。但是到深化阶段得重新建模。。。
12m
发表于 2012-12-13 11:51:46 | 只看该作者
真心不懂啊
11m
 楼主| 发表于 2012-12-11 15:03:05 | 只看该作者
ping58972 发表于 2012-12-10 14:43
干嘛 用Mesh做 Mesh是剖切线出不了给ACAD深化的  更不用说导出给BIM软件

大哥 ~~ Mesh剖切可以做 只不过需要代码filter
10m
发表于 2012-12-10 20:47:13 | 只看该作者
?同求。。。。
9m
发表于 2012-12-10 17:00:25 | 只看该作者
······难道我真的这么低端?
8m
发表于 2012-12-10 14:55:25 | 只看该作者
赞一个·······
7m
发表于 2012-12-10 14:43:20 | 只看该作者
干嘛 用Mesh做 Mesh是剖切线出不了给ACAD深化的  更不用说导出给BIM软件
6m
发表于 2012-12-10 10:21:36 | 只看该作者
看不懂啊,老兄
5m
发表于 2012-12-10 10:16:59 | 只看该作者
很强大啊!!!
4m
发表于 2012-12-10 09:13:48 | 只看该作者
表示看不懂……真不懂
3m
发表于 2012-12-10 09:11:28 | 只看该作者
好高端啊{:18:}
2m
 楼主| 发表于 2012-12-10 02:12:10 | 只看该作者
本帖最后由 panhao1 于 2012-12-10 02:46 编辑

有人说可以用tryGetPolyline()
元芳你怎么看~

小黑屋|手机版|NCF参数化建筑论坛 ( 浙ICP备2020044100号-2 )    辽公网安备21021102000973号

GMT+8, 2024-11-22 03:47 , Processed in 0.072423 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表