老师您好:我想放置一个共享单元,用下面的代码可以么?
SharedCellDefinitionElement celldefEl = new SharedCellDefinitionElement(Session.Instance.GetActiveDgnModel(), "SharedCellDefExample");
celldefEl.IsAnnotation = true;
celldefEl.AddChildElement(el);
celldefEl.AddToModel();
SharedCellElement cellEl = new SharedCellElement(Session.Instance.GetActiveDgnModel(), null, "SharedCellDefExample", _startPt, DMatrix3d.Zero, DPoint3d.FromXYZ(1,1,1));
cellEl.AddToModel();
我放置出来共享单元非常小,但是相同的内容作为普通单元放置就不会很小
1. 您对celldefEl调用AddChildElement后还应该调用AddChildComplete()表明添加子元素完毕。
2. new SharedCellElement中的倒二参数DMatrix3d.Zero不正确,应该用DMatrix3d.Identity表示单位矩阵。
老师您好,上面我在定义共享单元的时候,没有关于cell原点的定义,这里要怎么定义原点?
我理解原点就在(0,0,0)处。你需要根据这个点来创建你的图形元素。
我们手工在Cell库中创建Cell时也是这个道理。
Answer Verified By: nadine z