老师好,我现在自定义了一个图层。现在要做的操作是 选择路线,将自定义的图层偏移路线一定距离然后放置,我现在使用的是图中的工具,我想问下使用代码的话 这个图层要当成元素进行放置吗 因为之前放置就是放置一个单元或者元素,但是放置图层的话 不知道把图层当成什么进行放置?
第一次听说“图层偏移”这个说法。图层是元素的一个属性,何为“图层偏移”?
哈哈 ,是啊,刚开始我也是很奇怪图层怎么偏移,但是手动试试 ,确实能偏移。就是选择好图层,然后选择道路中心线,然后选择偏移工具就能实现了图层偏移,图中绿色线就是图层, 也是偏移后的结果
您说的那个是截取Alignment的一段然后对该段进行偏移,请参考下面代码:
static void testPartialByDistances() { long myid = 878; ElementId elId = new ElementId(ref myid); Element el1 = Session.Instance.GetActiveDgnModel().FindElementById(elId); DgnModel model = Bentley.MstnPlatformNET.Session.Instance.GetActiveDgnModel(); Bentley.CifNET.SDK.ConsensusConnection con = new Bentley.CifNET.SDK.ConsensusConnection(model); if (el1 != null) { Alignment al = Alignment.CreateFromElement(con, el1); Bentley.CifNET.LinearGeometry.LinearElement resultLine = al.LinearGeometry.GetPartialByDistances(0, 50).GetOffsetElement(50); Bentley.CifNET.SDK.Edit.ConsensusConnectionEdit con1 = Bentley.CifNET.SDK.Edit.ConsensusConnectionEdit.GetActive(); con1.StartTransientMode(); AlignmentEdit al1 = AlignmentEdit.CreateByLinearElement(con1, resultLine, true); con1.PersistTransients(); } }
主要用到两个函数:
GetPartialByDistances(起点,终点):根据起终点,截取指定alignment上面的一段距离。
GetOffsetElement(偏移量):将截取的这段几何根据偏移量偏移一定距离。
老师是不是我把线进行偏移 然后设置偏移线在我所创建的图层上即可呢?
我仍然不认为有“图层偏移”一说。您这个操作(抱歉我没有看到您的录像)无非就是设置了当前图层,然后对一个元素执行偏移复制后新生成的元素当然就会在这个新的图层上了。我们创建新元素时都会往当前图层上放置的。
老师好,我想问下 如何将AlignmentEdit对象 放在指定的图层(自定义图层)呢?
是的 符工,我仔细研究了发现 就是一个线元素上设置了某个图层,刚开始我的理解有误,谢谢
communities.bentley.com/.../c-ord