加载中…
个人资料
M_小蜗牛
M_小蜗牛
  • 博客等级:
  • 博客积分:0
  • 博客访问:3,612
  • 关注人气:17
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

Revit二次开发_创建三角面

(2023-04-03 11:45:46)
分类: Revit开发笔记
private static void Test01(Document document)
        {
            //测试数据,三个点
            XYZ start1 = new XYZ(0, 0, 0);
            XYZ end = new XYZ(100, 0, 0);
            XYZ end6 = new XYZ(100, 100, 0);

            var outVertices = new List();

            outVertices.Add(start1);
            outVertices.Add(end);
            outVertices.Add(end6);

            //1.输入点集合、材料ID 创建细分面
            var tessFace = new TessellatedFace(outVertices, new ElementId(392544));
            //2.创建细分容器
            var tessShape = new TessellatedShapeBuilder();
            //3.允许放入细分面
            tessShape.OpenConnectedFaceSet(true);
            //4.加入细分面
            tessShape.AddFace(tessFace);
            //5.允许创建不闭合细分体
            tessShape.CloseConnectedFaceSet();
            //6.创建
            tessShape.Build();
            //(不必须)7.得到细分的几何实例
            var geos = tessShape.GetBuildResult().GetGeometricalObjects();
            ////(不必须)8.创建矩阵
            //Transform transform = Transform.Identity;
            ////(不必须)9.移动
            //var geometoryInstance = DirectShape.CreateGeometryInstance(document, "555", transform);
            DirectShape ds = DirectShape.createElement_x(document, new ElementId(BuiltInCategory.OST_GenericModel));
            ds.ApplicationId = "Application id";
            ds.ApplicationDataId = "Geometry object id";
            ds.SetShape(geos);


            MessageBox.Show(geos.Count.ToString());

        }

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有